我要发帖 回复

正式会员

19

主题

84

积分

0

专家分

:

私信
发表时间 : 2009-3-3 16:41:15 | 浏览 : 977    评论 : 0
在myApp类中重新写过虚函数,调用updatepl函数
virtual int endFrame(void) const
{
const_cast<myApp *>(this)->updatepl();        
return vpApp::endFrame();
}

然后是updatepl函数
void updatepl()
{
vrGeometryBase::Binding binding;
MyAttribute::LightPoints m_lightPoints;
MyAttribute::LightPoints::iterator it,ite=m_lightPoints.end();
vrLightPoint *lp;
vuVec4<float> *color;                               
float degree= 0.0f;                                               
for (it=m_lightPoints.begin();it!=ite;++it) {
    lp = (*it)->getLightPoint();
    numColors =lp->getNumColors();
    color =lp->getColors(&binding);
}
if(degree<17/6)
    color[numColors][0]=1.0f;          这里是想让场景中最后一个光点改变颜色。。。。                                
else
    color[numColors][0]=0.0f;
update();
}
本来degree是要通过函数求到的,这里为了简便,自己随便设一个能让光点变成红色的数据。。。
可以运行,但是颜色不不能发生改变,谁能帮我看看啊!~谢谢了啊

最近VR访客

手机版|VR开发网 ( 津ICP备18009691号 ) 统计 网安备12019202000257

GMT+8, 2020-10-25 04:29 PM

返回顶部