/*! \param storm Storm3D \param shadowQuality shadow quality */ void Storm3D_FakeSpotlight::querySizes(Storm3D &storm, int shadowQuality) { if(shadowQuality >= 100) { BUFFER_WIDTH = 1024; BUFFER_HEIGHT = 1024; } /*else if(shadowQuality >= 75) { BUFFER_WIDTH = 768; BUFFER_HEIGHT = 768; }*/ else if(shadowQuality >= 50) { BUFFER_WIDTH = 512; BUFFER_HEIGHT = 512; } /*else if(shadowQuality >= 25) { BUFFER_WIDTH = 384; BUFFER_HEIGHT = 384; }*/ else if(shadowQuality >= 0) { BUFFER_WIDTH = 256; BUFFER_HEIGHT = 256; } else if(shadowQuality == -1) { BUFFER_WIDTH = -1; BUFFER_HEIGHT = -1; } if(BUFFER_WIDTH > 0 && BUFFER_HEIGHT > 0) { storm.setNeededColorTarget(VC2I(BUFFER_WIDTH * 2, BUFFER_HEIGHT * 2)); storm.setNeededDepthTarget(VC2I(BUFFER_WIDTH * 2, BUFFER_HEIGHT * 2)); } }
void Storm3D_Spotlight::querySizes(Storm3D &storm, bool ps14, int shadowQuality) { if(shadowQuality >= 100) { SHADOW_WIDTH = 1024; SHADOW_HEIGHT = 1024; //SHADOW_WIDTH = 2048; //SHADOW_HEIGHT = 2048; } else if(shadowQuality >= 75) { SHADOW_WIDTH = 1024; SHADOW_HEIGHT = 512; } else if(shadowQuality >= 50) { SHADOW_WIDTH = 512; SHADOW_HEIGHT = 512; } else if(shadowQuality >= 25) { SHADOW_WIDTH = 512; SHADOW_HEIGHT = 256; } else { SHADOW_WIDTH = 256; SHADOW_HEIGHT = 256; } /* if(shadowQuality >= 100) { SHADOW_WIDTH = 768; SHADOW_HEIGHT = 768; } else if(shadowQuality >= 66) { SHADOW_WIDTH = 512; SHADOW_HEIGHT = 512; } else if(shadowQuality >= 33) { SHADOW_WIDTH = 384; SHADOW_HEIGHT = 384; } else { SHADOW_WIDTH = 256; SHADOW_HEIGHT = 256; } */ if(type == Legacy) { bool enableFloats = true; if(shadowQuality <= 33) enableFloats = false; findDepthType(*storm.D3D, ps14, enableFloats); } if(type != DepthBuffer) storm.setNeededDepthTarget(VC2I(SHADOW_WIDTH * 2, SHADOW_HEIGHT * 2)); //else //storm.setNeededColorTarget(VC2I(SHADOW_WIDTH * 2, SHADOW_HEIGHT * 2)); }