What's wrong with the sample framework?

Started by
7 comments, last by GameDev.net 19 years, 6 months ago
I've been using the DirectX 9 sample framework. I have heard a lot of people say that it's ok for demos and experimentation, but not to use it for a real game because it's slow. At some point I would like to get away from using it and write my own, so my question is... What makes the sample framework too slow? When I design my own I will probably use the sample framework as a guide, but I want to make sure that I'm not copying the parts that make it slow. I have VC++ 6.0. I haven't tried the new SDK (2004 summer update) since 6.0 is not officially supported. I'm just a hobbyist and I can't justify spending the money on VC++ .net right now.
Atari 2600 Homebrew Author - Someone who is smart enough to learn 6502 assembly language but dumb enough to actually want to use it.
Advertisement
I am using a codebase based off the dx9b app wiz generated code.. which is basicaly just the framework..

Works pretty good really.


Consider using it and when you find out what (if anything) is to slow about then you have the answer to your second question.
Quote:Original post by Chadivision
I have heard a lot of people say that it's ok for demos and experimentation, but not to use it for a real game because it's slow.

Their base code isn't bad because it's slow, it's bad because it's not very extensible. If you decide to develop your own 3D engine you don't want global variables hanging around, etc. It's ok for demos but if your project will involve more than ten thousand lines of code, you'd be better off doing your own design.
Quote:Original post by Chadivision
At some point I would like to get away from using it and write my own, so my question is...

What makes the sample framework too slow?

It's not slow, it's just missing a lot of components that will make an industrial strength engine. Visibility determination, scene graph, render queue (for sorting primitives), etc. If you try to fit all this into the framework codebase, you'll find that they don't play nicely because it's not designed to be very extensible.

I suggest you to go to NVidia's and ATI's websites, download performance optimization documents and read them about twenty times. Then ask questions here. This will give you a good idea of what performance considerations are and will help you structure your engine appropriately.
Thanks for the advice. I'll check out those performance optimization documents.
Atari 2600 Homebrew Author - Someone who is smart enough to learn 6502 assembly language but dumb enough to actually want to use it.
@Chadivision: Why don't you download the MS Visual C++ 2005 .Net beta 1 ? It comes with the newest VC optimizing compiler and enables you to use DX9.0c, which contains some changes to the sample framework ( if my mind serves me right - I haven't ever used the framework ).

http://lab.msdn.microsoft.com/express/visualc/default.aspx

Bye,
Leoric
Yeah, and be sure to read this (http://lab.msdn.microsoft.com/express/visualc/usingpsdk/default.aspx) if you want to use VS2005. I learnt the hard way as you can see if you go and check out the "DirectX 9.0c and VS2005 Express" thread.
@Sandy: I upgraded from VC6 to VS 2005 beta and I didn't have the struggle you had. So it obviously isn't a general problem.

Bye,
Leoric
Ok, I'll just shut up then :)
It's not slow at all, in fact it's faster than anything most people can hack together in their own "engines."

The main problem you'll run into is that if you don't code to their style (the guys that wrote the framework) you'll have a hard time making it do some of the advanced things.

This topic is closed to new replies.

Advertisement