3 ms·
Perhaps amusingly, the Computer Science education at the University of Copenhagen includes no mandatory Calculus course, but it does include a Linear Algebra co
by oleks 12y ago
Perhaps amusingly, the Computer Science education at the University of Copenhagen includes no mandatory Calculus course, but it does include a Linear Algebra course. Even so, students have a hard time seeing what they'll use Linear Algebra for, before later on in their education.
- marktangotango 12y agoI think this observation highlights the problem with Linear Algebra, the applications aren't encountered until upper level courses in other fields, and then they teach what you need to know for the course. I took two semesters of Linear Algebra in college, the first course was an overview for physicists and engineers and was little more than the mechanics of matrix operations, and find eigen vectors and eigen values. The second course focused on Linear Algebra as an abstract algebra, with near zero application. Subsequently, reading this paper[1] and the way the author used Linear Algebra blew my mind, why wasn't I taught about THAT kind of Linear Algebra? I suppose my examples illustrates: great teach Linear Algebra, but what facets to concentrate on? Abstract or concrete applications? [1] http://www.geometrictools.com/Documentation/IntersectionSphereCone.pdf http://www.geometrictools.com/Documentation/IntersectionSphe...
- cableshaft 12y agoI took a 3d graphics programming course where we built our own raytracer for our final project. We learned the math for a few different intersections in order to make the raytracer. So if they offered it, that would have been the course to take.
- ajuc 12y agoMake them code simple wolfenstain 3d clone with opengl, directx or even unity3d. It was a revelation for me when I've tried to get into game programming, and half of the math taught in primary and secondary school became immediately useful, also linear algebra (which was only started at the final year of high school). Made linear algebra courses on the university a lot more interesting. There's a difference if you look at a class "what I need to pass an exam", and "what I could use in my next game". Also tinkering with 3d graphics makes thinking in vectors, planes, matrices, dot and cross products intuitive after a few weeks. BTW I wonder hwo many kids learnt basic linear algebra from Denthor's Asphyxia tutorials :)
- jimmaswell 12y agoI can't see myself really needing to apply any Linear Algebra concepts writing a Wolfenstein clone in Unity3D. It does everything for you like that (shader graphics, collision detection, vector math, etc). All you'd have to do is code some simple AI for the enemy gameobjects and make the player gameobject in the standard FPS shooting format, which there are pre-built defaults for in the example projects. The majority of this project would be copy and paste with minor modifications.
- ajuc 12y agoEven "just" ai can teach you a lot. For example trying to calculate if enemy can see you, or which path he should take is interesting. Of course you can go far with "turn towards player and shoot" ai, but where's the fun in that. Actually it would be fun to give student's assigment like: here's the AI interface, make a game using it, and write your bot. Then we will run all the bots in free for all mode on all the games (except your bot on your game), and we will grade by sum of the points.
- jimmaswell 12y ago>trying to calculate if enemy can see you Send a raytrace from the bot to the player and see if it hits something other than the player, which is just one line Pathtaking beyond simply moving towards the player is a lot harder, yeah.
- ajuc 12y agoIf you just send 1 ray from eye towards the center of the enemy (or head, or whatever) - and this particular part of the body is occluded by a wall or a chair, but the rest isn't - the result will be wrong. You can accept that, use many rays, or do proper view frustum/body model(simplified probably) intersection, after cutting the view frustum with the terrain. You can also consider lighting (so enemy can't see you hiding in a dark corner), or even dynamic lighting (and give enemies light sources). Everything becomes hard after you think about it enough :) But I agree simple solutions + some tinkering with parameters works most of the time (and gamers probably won't notice).
- cableshaft 12y agoPersonally, I skipped taking Linear Algebra in college, because I assumed it was basically 'Algebra II' and intended for people who weren't taking math-intensive tracks, like liberal arts majors. Although thankfully in my 3D graphics programming class we spent some time on Linear Algebra, so I got my misconception cleared and saw how it was useful (even though it looked like Voodoo magic to me how it worked for most of that class). So yeah, maybe I'm just an outlier, but part of it may be a naming issue also. "I already took Algebra way back in 8th grade and it was a breeze! I don't need to take another Algebra class!"