Made clouds rotate when vertex shaders are enabled.
parent
023ece7f64
commit
9db723aa16
|
@ -2607,16 +2607,19 @@ void Renderer::renderObject(Point3f pos,
|
|||
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
||||
glColor4f(1, 1, 1, 1);
|
||||
|
||||
if (useVertexPrograms)
|
||||
if (vertexShaderEnabled)
|
||||
{
|
||||
vp::enable();
|
||||
vp::use(vp::diffuse);
|
||||
vp::use(vp::diffuseTexOffset);
|
||||
vp::parameter(41,
|
||||
(float) -pfmod(now * atmosphere->cloudSpeed / (2*PI), 1.0),
|
||||
0.0f, 0.0f, 0.0f);
|
||||
}
|
||||
lodSphere->render(Mesh::Normals | Mesh::TexCoords0,
|
||||
viewFrustum,
|
||||
ri.lod,
|
||||
cloudTex);
|
||||
if (useVertexPrograms)
|
||||
if (vertexShaderEnabled)
|
||||
{
|
||||
vp::disable();
|
||||
}
|
||||
|
|
|
@ -24,6 +24,7 @@ unsigned int vp::diffuseBump = 0;
|
|||
unsigned int vp::diffuseBumpHaze = 0;
|
||||
unsigned int vp::shadowTexture = 0;
|
||||
unsigned int vp::everything = 0;
|
||||
unsigned int vp::diffuseTexOffset = 0;
|
||||
|
||||
|
||||
static string* ReadTextFromFile(const string& filename)
|
||||
|
@ -90,6 +91,8 @@ bool vp::init()
|
|||
return false;
|
||||
if (!LoadVertexProgram("shaders/shadowtex.vp", shadowTexture))
|
||||
return false;
|
||||
if (!LoadVertexProgram("shaders/diffuse_texoff.vp", diffuseTexOffset))
|
||||
return false;
|
||||
everything = 0;
|
||||
|
||||
EXTglTrackMatrixNV(GL_VERTEX_PROGRAM_NV,
|
||||
|
|
|
@ -32,6 +32,7 @@ namespace vp
|
|||
extern unsigned int diffuseBumpHaze;
|
||||
extern unsigned int everything;
|
||||
extern unsigned int shadowTexture;
|
||||
extern unsigned int diffuseTexOffset;
|
||||
};
|
||||
|
||||
#endif // _VERTEXPROG_H_
|
||||
|
|
Loading…
Reference in New Issue