Any point in moving the world in reverse these days?

Started by
4 comments, last by NickUdell 11 years, 9 months ago
When I was learning 3D a couple of years back, fixed function was still raging and we were taught to move everything backwards when the player moved forwards, as opposed to moving the camera. But since you can always supply a position in the view matrix, what's the actual point in moving the whole world around you? Are there any advantages over either method?

Sorry if this is a duplicate, I struggled to think what the correct search terms for this would be.

thanks
Sole Creator of Pigment - a procedural, block-base space trading sim.

PhD student working on medical imaging at the University of Southampton.

Enjoyer of games, films, books and cider.
Advertisement
The position in the matrix you mention is what move the vertices when you multiply them by the matrix. In the end, you have to move everything into a unit size cube (z-range differ between OpenGL and Direct3D though) centered at the origin. This cube cannot change so you must move the vertices into the cube, not move the cube to around the vertices. This is why documentation says you move the world and not the viewpoint. The two are conceptually identical though so it is a matter of how you look at it.
Yeah it's a matter of perspective (pun unintended)
The "cam" doesn't really exist. It's a matrix that moves whatever you want to look at into the frustum.
I suppose if you moved the stuff on cpu side, the gpu doesnt have to translate every single one of them?

Maybe its from some reeeeeally old era when the gpu couldnt handle both translating and drawing? xD

o3o


I suppose if you moved the stuff on cpu side, the gpu doesnt have to translate every single one of them?

Maybe its from some reeeeeally old era when the gpu couldnt handle both translating and drawing? xD

Nothing changes. CPU or GPU side, you still have to do the same operations and transformations and the concepts and interpretations remain the same.

The position in the matrix you mention is what move the vertices when you multiply them by the matrix. In the end, you have to move everything into a unit size cube (z-range differ between OpenGL and Direct3D though) centered at the origin. This cube cannot change so you must move the vertices into the cube, not move the cube to around the vertices. This is why documentation says you move the world and not the viewpoint. The two are conceptually identical though so it is a matter of how you look at it.


Now that makes a lot of sense. I always assumed they were different techniques.

Thanks very much.
Sole Creator of Pigment - a procedural, block-base space trading sim.

PhD student working on medical imaging at the University of Southampton.

Enjoyer of games, films, books and cider.

This topic is closed to new replies.

Advertisement