Graphics engines.

Started by
4 comments, last by Moe 18 years, 8 months ago
just curious. professional graphics engines that use DirectX. Are they done similarily as the books show you how to do it. for example for lighting. do the use the D3DLIGHT9 struct or do they do everything from scratch. just curious.
Advertisement
Even though books provide an introduction to DirectX (some better than others), many do not teach you the fundamentals of engine programming. And the small "engines" put together by the authors are generally very small and unflexible. I have found the engine programming isn't really a thing that you can just learn from books or articles or tutorials - it is a craft - a mindset - that you have to develop through trial and error. I have halted the implementation of many projects, not only because of design flaws, but because my outlook on a specific problem had evolved. At the time, it was frustrating, but it is an invaluable learning experience.

To answer your question specifically, no, I would say very, very few engines still use D3DLIGHT9 at this point. The reason is because D3DLIGHT9 is a fixed-function pipeline construct. Since everyone uses the programmable pipeline now, there is no need for it.
Dustin Franklin ( circlesoft :: KBase :: Mystic GD :: ApolloNL )
well what I mean was. for example scaling. would they use D3DXMatrixScaling (or similar) or would they write their own function to do the matrrix computation.
Hello Ksingh30,
How are you doing?

No, they probably wouldn't rewrite a D3DX function, just because D3DX is just about as fast as you can go. Microsoft had tons of help from Intel and AMD to optimize it like crazy. The only reason they would rewrite it is to go cross-platform. I don't know if OpenGL has matrix functions and the like, I don't know anything about OpenGL.

Chad,
AKA The ProgrammingNerd
so basically all an engine is, is a set of functions and classes that accomplish a task, for example load a Mesh.
Quote:Original post by Ksingh30
so basically all an engine is, is a set of functions and classes that accomplish a task, for example load a Mesh.

Pretty much. The engine itself really depends on what it is going to be used for. For example, Doom 3 and Far Cry: Doom 3 seems to have more closed in corridors while Far Cry was designed more for large open terrain. Depending on how an engine is written, it will have different strengths/weaknesses. The engine really ought to be a way of presenting graphics/sounds. The actual gameplay code ought to determine how the logic of the game works.

This topic is closed to new replies.

Advertisement