mweiguo / sgt

scene graph toolkits
1 stars 0 forks source link

矩形显示不正确 #3

Closed mweiguo closed 12 years ago

mweiguo commented 12 years ago

用下列代码生成出来的矩形有些奇怪

SLCSceneNode scene ( "test_scene"); scene.addChild ( gmat ); scene.addChild ( gmat1 );

{
SLCLayerNode* layer = new SLCLayerNode ( "background", gmat );
nodes.push_back ( layer );
SLCLODNode* lod = new SLCLODNode();
nodes.push_back ( lod );
SLCLODPageNode* lodpage = new SLCLODPageNode();
nodes.push_back ( lodpage );
lodpage->delayloading = false;
lodpage->kdtree = "background0.idx";
lodpage->imposter = true;
scene.addChild ( layer );
layer->addChild ( lod );
lod->addChild ( lodpage );

SLCTransformNode* t = new SLCTransformNode ();
mat_translatematrix ( t->mat, -100, -100, 0 );
nodes.push_back ( t );
lodpage->addChild ( t );

float w = 6300;
float h = 11800;
SLCRectNode* rc1 = new SLCRectNode ( gmat1 );
nodes.push_back ( rc1 );
rc1->pnts[0] = vec2f ( 0, 0 );
rc1->pnts[1] = vec2f ( w, 0 );
rc1->pnts[2] = vec2f ( w, h );
rc1->pnts[3] = vec2f ( 0, h );
rc1->z = -2;
lodpage->addChild ( rc1 );
t->addChild ( rc1 );

}
mweiguo commented 12 years ago

lodpage->addChild ( rc1 ); t->addChild ( rc1 ); 原因是这两行代码,把矩形重复添加了两遍,所以导致上述问题,去掉一行即可