Mercurial > hg > Game > Cerium
comparison Renderer/Engine/SceneGraphRoot.cc @ 1136:f326494ffdc7 draft
not work ieshoot. not check Cell
author | Yutaka_Kinjyo |
---|---|
date | Thu, 17 Feb 2011 10:50:40 +0900 |
parents | ec6b55aed337 |
children | 786e800abfb4 |
comparison
equal
deleted
inserted
replaced
1133:bb17a03bab60 | 1136:f326494ffdc7 |
---|---|
208 | 208 |
209 /* オリジナルの SceneGraph */ | 209 /* オリジナルの SceneGraph */ |
210 src = sg_src[id]; | 210 src = sg_src[id]; |
211 | 211 |
212 /* ユーザーにはオリジナルの clone を返す */ | 212 /* ユーザーにはオリジナルの clone を返す */ |
213 p = src->clone(); | 213 p = src->clone(this->tmanager); |
214 | 214 |
215 /* move, collision に sgroot を渡したいのでここで sgroot を渡しておく*/ | 215 /* move, collision に sgroot を渡したいのでここで sgroot を渡しておく*/ |
216 p->sgroot = (void *)this; | 216 p->sgroot = (void *)this; |
217 | 217 |
218 addNext(p); | 218 addNext(p); |
237 | 237 |
238 /* オリジナルの SceneGraph */ | 238 /* オリジナルの SceneGraph */ |
239 src = sg_src[id]; | 239 src = sg_src[id]; |
240 | 240 |
241 /* ユーザーにはオリジナルの clone を返す */ | 241 /* ユーザーにはオリジナルの clone を返す */ |
242 p = src->clone(); | 242 p = src->clone(this->tmanager); |
243 | 243 |
244 /* move, collision に sgroot を渡したいのでここで sgroot を渡しておく*/ | 244 /* move, collision に sgroot を渡したいのでここで sgroot を渡しておく*/ |
245 p->sgroot = (void *)this; | 245 p->sgroot = (void *)this; |
246 | 246 |
247 addNext(p); | 247 addNext(p); |
372 | 372 |
373 /*removeのflagをもとにtreeを形成*/ | 373 /*removeのflagをもとにtreeを形成*/ |
374 while (t) { | 374 while (t) { |
375 SceneGraphPtr c = NULL; | 375 SceneGraphPtr c = NULL; |
376 if (!t->isRemoved()) { | 376 if (!t->isRemoved()) { |
377 c = t->clone(); | 377 c = t->clone(this->tmanager); |
378 addNext(c); | 378 addNext(c); |
379 cur_parent->addChild(c); | 379 cur_parent->addChild(c); |
380 c->frame = t->frame; | 380 c->frame = t->frame; |
381 /*親の回転、座標から、子の回転、座標を算出*/ | 381 /*親の回転、座標から、子の回転、座標を算出*/ |
382 get_matrix(c->matrix, c->angle, c->xyz, cur_parent->matrix); | 382 get_matrix(c->matrix, c->angle, c->xyz, cur_parent->matrix); |