- 基于时间动画
static CStopWatch rotTimer;
float yRot = rotTimer.GetElapsedSeconds() * 60.0f;
2.绘制地面
shaderManager.UseStockShader(GLT_SHADER_FLAT,
transformPipeline.GetModelViewProjectionMatrix(),
vFloorColor);
- 使得大球位置平移(3.0)向屏幕里面
modelViewMatrix.Translate(0.0f, 0.0f, -3.0f);
- 大球自转
modelViewMatrix.Rotate(yRot, 0.0f, 1.0f, 0.0f);
5.获取光源位置,指定合适的着色器(点光源着色器)
M3DVector4f vLightPos = {0.0f,10.0f,5.0f,1.0f};
shaderManager.UseStockShader(GLT_SHADER_POINT_LIGHT_DIFF, transformPipeline.GetModelViewMatrix(),
transformPipeline.GetProjectionMatrix(), vLightPos, vTorusColor);
网友评论