[GD-Windows] Direct3D 8.0 texture stage states
Brought to you by:
vexxed72
From: Jon W. <hp...@mi...> - 2004-03-03 02:27:04
|
We're porting an OpenGL renderer to Direct3D 8.0. The documentation in concordance with the device caps for a GeForce2 claim that you can configure up to 8 texture stage states, but you can only bind two textures. We have a specific texturing set-up that in OpenGL looks like this: Texture0 \ LERP \ Texture1 / MODULATE -> done Diffuse / This uses 2 texture environments on OpenGL, but it appears that DirectX 8 for fixed-function hardware cannot route two textures to one texture stage state. Thus, we want to use three stage states, in the following configuration: Texture0 \ SELECT1 \ LERP \ Texture1 / MODULATE -> done Diffuse / We can get the first two stages to work fine, but as soon as we turn on the third stage, the operations from the first two stages disappear, and we get solid-white diffuse lit geometry. Note that we get that, even if we choose SELECTARG1 for the operation for the third stage state (i e stage state index 2). We are disabling the stage state with index 3, just to make sure that we've gotten nothing wrong. However, no matter what we do, we can't make this work. We've tried both debug and release DirectX 9.0b runtime (can't downgrade on the development machines to try with 8.0 proper). Right now, we're feeling pretty glum. Any ideas? Cheers, / h+ |