I'm porting dx6 game to dx9
I need to port D3DDP_DONOTUPDATEEXTENTS
but I don't know about this.
What is this? And how to port this?
I'm porting dx6 game to dx9
I need to port D3DDP_DONOTUPDATEEXTENTS
but I don't know about this.
What is this? And how to port this?
I don't know it either, but the second link in Google gave me this: http://developer.download.nvidia.com/assets/gamedev/docs/Guard_Band_Clipping.pdf
Which seems to contain a great explanation about the surrounding feature. I can't however find any docs regarding that particular flag, ie. it's not clear what the object of the extents is.
Fruny: Ftagn! Ia! Ia! std::time_put_byname! Mglui naflftagn std::codecvt eY'ha-nthlei!,char,mbstate_t>
This is before my time and there's no docs available, but from what I gather it's a relic of the days where vertices were fully processed on the CPU. Back then you would transform the vertices and calculate lighting if necessary on the CPU, and send the resulting data to the GPU to be rasterized and textured. These old GPU's typically required triangles to be clipped before they could be rasterized, so that also had to happen on the CPU. The old versions of D3D could do vertex processing and clipping for you, which is what that Nvidia doc that Endurion linked to aludes to. It sounds like D3D would track the extents of processed triangles for you for some reason (perhaps something related to clipping), and that flag would prevent the D3D runtime from doing this.
A good chunk of this functionality is still present in D3D9, which was the last version of the API to support fixed-function vertex processing as well as CPU-side vertex processing. However it also supported full GPU-side vertex/pixel processing (with shader support), which is what you would use on any GPU made in the last 15 years. So unless you're targeting some realllllllly old hardware, I would just use full hardware vertex processing and not worry about that flag.