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);