----------------------------------------------------------------------------- Set cube texture -----------------------------------------------------------------------------
| 702 | // Set cube texture |
| 703 | //----------------------------------------------------------------------------- |
| 704 | void GFXDevice::setCubeTexture( U32 stage, GFXCubemap *cubemap ) |
| 705 | { |
| 706 | AssertFatal(stage < getNumSamplers(), "GFXDevice::setTexture - out of range stage!"); |
| 707 | |
| 708 | if ( mTexType[stage] == GFXTDT_Cube && |
| 709 | ( ( mTextureDirty[stage] && mNewCubemap[stage].getPointer() == cubemap) || |
| 710 | ( !mTextureDirty[stage] && mCurrentCubemap[stage].getPointer() == cubemap) ) ) |
| 711 | return; |
| 712 | |
| 713 | mStateDirty = true; |
| 714 | mTexturesDirty = true; |
| 715 | mTextureDirty[stage] = true; |
| 716 | |
| 717 | mNewCubemap[stage] = cubemap; |
| 718 | mTexType[stage] = GFXTDT_Cube; |
| 719 | |
| 720 | // Clear out textures |
| 721 | mNewTexture[stage] = NULL; |
| 722 | mCurrentTexture[stage] = NULL; |
| 723 | mNewCubemapArray[stage] = NULL; |
| 724 | mCurrentCubemapArray[stage] = NULL; |
| 725 | mNewTextureArray[stage] = NULL; |
| 726 | mCurrentTextureArray[stage] = NULL; |
| 727 | } |
| 728 | |
| 729 | //----------------------------------------------------------------------------- |
| 730 | // Set cube texture array |
no test coverage detected