Page 3 of 5
Posted: Mon Oct 17, 2005 9:35 am
by Psychophanta
Brice, i must say you are completely wrong when say the newer DX8/9/10 performs 2D stuff slower than DX7.
The fact is that more recent emulators of old wellknown 2D platforms (like Turbographx, Megadrive, SNES, NES, MSX, etc.) uses D3D for all its rendering, bests of them don't use an only DD command.
THE RESULT: LESS THAN 2% CPU USE WHEN EMULATING AND RENDERING WHILE ABSOLUTE SMOOTH MOVEMENTS, SCROLLS AND GENERAL GRAPHICS AND SOUND IS PERFORMED!
(You can try ZSNES, or KEGA-FUSION, for example: BOTH LESS THAN 2% CPU USE. And the secret is just D3D from DX9)
That's is imposible to do with DD.
And BlitMax is doing something wrong for sure (at least they advert that it is essential to use DX9 with a VGA supporting it.)!
Posted: Mon Oct 17, 2005 1:05 pm
by Brice Manuel
Brice, i must say you are completely wrong when say the newer DX8/9/10 performs 2D stuff slower than DX7.
Very odd considering DX8/9/10 do NOT even support 2D.
And BlitMax is doing something wrong for sure (at least they advert that it is essential to use DX9 with a VGA supporting it.)!
At least the core language is blistering fast and that helps even things out.

Posted: Mon Oct 17, 2005 2:16 pm
by dracflamloc
Psychophanta wrote:Brice, i must say you are completely wrong when say the newer DX8/9/10 performs 2D stuff slower than DX7.
The fact is that more recent emulators of old wellknown 2D platforms (like Turbographx, Megadrive, SNES, NES, MSX, etc.) uses D3D for all its rendering, bests of them don't use an only DD command.
THE RESULT: LESS THAN 2% CPU USE WHEN EMULATING AND RENDERING WHILE ABSOLUTE SMOOTH MOVEMENTS, SCROLLS AND GENERAL GRAPHICS AND SOUND IS PERFORMED!
(You can try ZSNES, or KEGA-FUSION, for example: BOTH LESS THAN 2% CPU USE. And the secret is just D3D from DX9)
That's is imposible to do with DD.
And BlitMax is doing something wrong for sure (at least they advert that it is essential to use DX9 with a VGA supporting it.)!
Thats because all the work is done on the GPU
It is a bit ridiculus for a low-end PC to require a D3D9 capable GPU for frikkin 2d graphics...
Posted: Mon Oct 17, 2005 6:01 pm
by Brice Manuel
It is a bit ridiculus for a low-end PC to require a D3D9 capable GPU for frikkin 2d graphics...
This is the main point here, we are talking about 2D.
DX9's emulated 2D is blistering fast (Just check out GamesBasic (its back) or Brutus2D, both languages use DX9 for easy to use DX9 based 2D). Unfortunately, since they are using DX9, they also require a DX9 compliant graphics card. So, if I were to use DX9 for emulating 2D, I would intentionally be making my game NOT compatible with the millions of systems out there that could run the game just fine if it was using DirectDraw7.
Why would anybody intentionally make a 2D game that the majority of your target audience (those who like 2D desktop games) would not even be able to play it? That would be absolutely stupid since the games would run just fine made with DD7 and there would not be the compatibility issues.
Posted: Mon Oct 17, 2005 8:50 pm
by Fred
Emulators are differents as they render all the GFX in a single surface (which is probably in main memory as all the hardwork is done by the CPU) so they don't needs the blitting facilities of DirectDraw (a single big texture is enough in fact). On a recent card, I think than D3D is way faster than DDraw, due to full 3D orientation of GPU.
Posted: Mon Oct 17, 2005 10:47 pm
by djes
Brice>
To clarify : you don't need a Directx 9 compliant gfx card to install DirectX 9 and play 2d games, BUT,
as DirectX 9 (8 too) are using 3D functions to render 2D, games on oldest gfx cards will be slower; it's your assumption, right?
Then, we need to make a benchmark to be sure of that. One test in DirectX 9, one on 7, one on SDL, for every gfx card possible.
Posted: Mon Oct 17, 2005 11:55 pm
by Brice Manuel
On a recent card, I think than D3D is way faster than DDraw, due to full 3D orientation of GPU.
This is VERY true. However, one of the cases for DirectDraw (talking 2D retro sytle games) is that more and more people no longer have video cards, and instead have the video chip on the MOBO. Unfortunately, many of the MOBO chips like Savage, SiS, Trident, Intel will completely choke on 3D (some choke on OGL, some choke on D3D), but they will still handle DirectDraw fine as long as its full screen. Some of the mobo chips will choke on DirectDraw if it is "windowed".
you don't need a Directx 9 compliant gfx card to install DirectX 9 and play 2d games,
You should be able to install DX9 no problem, but if the card isn't DX9 compliant then you will not be able to take advantage of the newer features of DX9.
BUT, as DirectX 9 (8 too) are using 3D functions to render 2D, games on oldest gfx cards will be slower;
Yes, because the older cards are not usually DX9 compliant.
Emulated 2D also has other unpleasant things like all sprites have to be in powers of 2, because of the way graphics cards handle textures.
Posted: Tue Oct 18, 2005 9:47 pm
by aszid
*sigh*
read the DirectX FAQ:
http://www.microsoft.com/windows/direct ... efault.htm
I'll quote the important part:
Q Will installing DirectX 9.0 cause my existing titles to fail?
A Backward compatibility is a key feature of DirectX. We do application compatibility testing with a large number of released DirectX-enabled titles and a number of pre-release titles every time we release a new version of DirectX. In rare cases, some titles are "version coded" to accept only a single version of DirectX. These titles are almost always updated by the manufacturer to fix this behavior. These few cases aside, we are not aware of any compatibility problems with any previously released DirectX-enabled titles. In some cases, these programs may even run better with DirectX 9.0.
now... considering that DX9 has been out for quite a long time, and MS still isn't aware of any compatability issues... then there likely aren't any.
I challenge you to find a video card that cannot pass the directdraw test in dxdiag, using the most recent video drivers and DX9. if you can, then maybe you actually have something to worry about.
(start -> run -> dxdiag <OK>)
Posted: Tue Oct 18, 2005 9:51 pm
by dracflamloc
You miss the point.
Using DDraw on DX9 is fine and dandy. But its still ACTUALLY DX7 DDraw. There is no true DX9 DDraw, and there never will be. MS has canned DDraw.
To do 2d on DirectX nowadays using non-depracated APIs you must go through Direct3D. That is the issue here.
Posted: Tue Oct 18, 2005 10:11 pm
by blueznl
the question is: is it an issue?
let's say it's dx9
but we're doing 2d graphics
- program calls dd routine
- which is actually a dx9 routine
- dx9 checks available functions in the card driver
- if available it passes the function call through to the card driver
- the card driver may or may not do what is requested in hardware
- if that function is not available in the card driver dx9 may decide either to do it by itself (fall back or software) or return with an error
now i would assume that m$ would be smart enough to allow old dd calls to be handled by fall back routines instead of crashing out, ie. using dx9 would only have a twofold impact:
- slowing code down a little on older hardware (as there is additional dx9 overhead)
- necessity to install dx9 (which is probably the one thing i do not like

)
Posted: Tue Oct 18, 2005 10:11 pm
by aszid
*edit*
Was typing this when the last response was posted >.>
*/edit*
hmmm....
well.. i guess i did kindof miss the point...
but the other point i was trying to make, was that in this thread i have read a good amount of speculation, and not much actual evidence or proof that the issues people are speculating about are actually real.
i suppose they could really be issues, however...
on the other hand... today, i could buy a PCI D3D video card, for $22 USD (newegg.com). There really needs to be a point where people realize they're outdated, and take a moment to see how incredibly cheap it really is to at least make the smallest updates. Not much more expensive than a homebrew 2d game bought over the internet...
Everytime i think that there's still people out there using 486's, i cry :'(
Posted: Wed Oct 19, 2005 2:02 am
by dracflamloc
blueznl wrote:the question is: is it an issue?
let's say it's dx9
but we're doing 2d graphics
- program calls dd routine
- which is actually a dx9 routine
- dx9 checks available functions in the card driver
- if available it passes the function call through to the card driver
- the card driver may or may not do what is requested in hardware
- if that function is not available in the card driver dx9 may decide either to do it by itself (fall back or software) or return with an error
now i would assume that m$ would be smart enough to allow old dd calls to be handled by fall back routines instead of crashing out, ie. using dx9 would only have a twofold impact:
- slowing code down a little on older hardware (as there is additional dx9 overhead)
- necessity to install dx9 (which is probably the one thing i do not like

)
The mistake: Assuming microsoft will do the right thing

Posted: Wed Oct 19, 2005 2:15 am
by Shannara
BTW: The power of 2 issue was removed in the newest nvidia drivers. It is no longer a requirement for those cards.
Posted: Wed Oct 19, 2005 2:46 am
by Brice Manuel
let's say it's dx9... but we're doing 2d graphics
DX9 does not have 2D. Using DX9, all 2D is emulated via 3D methods.
I'll quote the important part:
What you quote has NOTHING to do with what is being discussed. We are not talking about DX7 based games running under DX9. We are talking about the sprite commands being ported to DX8 or DX9.
I challenge you to find a video card that cannot pass the directdraw test in dxdiag, using the most recent video drivers and DX9.
This is pointless because if you were using DX8/9 for your 2D game, you would not be using DirectDraw since neither support 2D.
was that in this thread i have read a good amount of speculation
Give an example? Please, enlighten us.
Fact: DX 8 & 9 do NOT support 2D. MS killed 2D with DX7. With DX8 the features of DirectDraw and Direct3D are combined into a single API called DirectX Graphics. All 2D is now emulated via 3D methods. This is fact!
Fact: A 2D game made using DX 8/9 will not run on low end systems that would run the same game just fine if the game was using DD7. This is fact!
There really needs to be a point where people realize they're outdated, and take a moment to see how incredibly cheap it really is to at
No, the question is why put your EUs in that position if you don't have to? PB's 2D commands work 100% perfect for me as they are and will run on millions of systems that the games would not run on if PB's 2D used DX8 or DX9.
The ONLY speculation in this thread have come from:
1. People mouthing off on a subject they know nothing about. It seems that many in this thread have no idea how to use DirectX and have no idea of the changes that have been made to DirectX in the different versions.
2. People mouthing off who obviously have no experience writing or marketing software and have no understanding of the demographics of their target audience. The target audience for a 2D game and the target audience for a 3D game are vastly different demographics.
Everytime i think that there's still people out there using 486's, i cry :'(
I am an avid gamer. I actualy have two 486 machines that I use all the time. One is running DOS 6.22 & Windows 3.1 and I use it for all of my DOS & 3.1 games . The other is running Windows 95 and I use it for all of my early 32bit Windows games.
Posted: Wed Oct 19, 2005 9:34 am
by Psychophanta
Brice,
you talk about facts, right.
Me too: "times are a continuous changing, things are not estatic"
