各范例迁移到新的CreateComponent调用

This commit is contained in:
hyzboy 2025-06-25 02:05:57 +08:00
parent 27e5d0bdca
commit e2a61e175f
7 changed files with 21 additions and 16 deletions

View File

@ -150,10 +150,10 @@ private:
bool InitScene()
{
SceneNode *scene_root=GetSceneRoot(); //取得缺省场景根节点
CreateComponentInfo cci(GetSceneRoot());
CreateComponent<MeshComponent>(scene_root,db->CreateMesh(prim_plane_grid,mi_plane_grid,pipeline_plane_grid));
CreateComponent<MeshComponent>(scene_root,ro_billboard);
CreateComponent<MeshComponent>(&cci,db->CreateMesh(prim_plane_grid,mi_plane_grid,pipeline_plane_grid));
CreateComponent<MeshComponent>(&cci,ro_billboard);
CameraControl *camera_control=GetCameraControl();

View File

@ -74,16 +74,15 @@ private:
return(false);
double rad;
Matrix4f mat;
SceneNode *scene_root=GetSceneRoot(); ///<取得场景根节点
CreateComponentInfo cci(GetSceneRoot());
for(uint i=0;i<TRIANGLE_NUMBER;i++)
{
rad=deg2rad<double>((360.0f/double(TRIANGLE_NUMBER))*i); //这里一定要加<double>或<float>否则结果用int保存会出现问题
mat=rotate(rad,Vector3f(0,0,1));
cci.mat=rotate(rad,Vector3f(0,0,1));
CreateComponent<MeshComponent>(mat,scene_root,render_obj);
CreateComponent<MeshComponent>(&cci,render_obj);
}
return(true);

View File

@ -81,9 +81,7 @@ private:
db->Add(prim);
Matrix4f mat;
SceneNode *scene_root=GetSceneRoot(); ///<取得场景根节点
CreateComponentInfo cci(GetSceneRoot());
for(uint i=0;i<DRAW_OBJECT_COUNT;i++)
{
@ -92,9 +90,9 @@ private:
if(!render_obj[i].mesh)
return(false);
mat=rotate(deg2rad<double>(TRI_ROTATE_ANGLE*i),AxisVector::Z);
cci.mat=rotate(deg2rad<double>(TRI_ROTATE_ANGLE*i),AxisVector::Z);
CreateComponent<MeshComponent>(mat,scene_root,render_obj[i].mesh);
CreateComponent<MeshComponent>(&cci,render_obj[i].mesh);
}
return(true);

View File

@ -90,7 +90,9 @@ private:
if(!mesh_triangle)
return(false);
return CreateComponent<MeshComponent>(GetSceneRoot(),mesh_triangle); //创建一个静态网格组件
CreateComponentInfo cci(GetSceneRoot());
return CreateComponent<MeshComponent>(&cci,mesh_triangle); //创建一个静态网格组件
}
public:

View File

@ -84,7 +84,9 @@ private:
if(!ri)
return;
CreateComponent<MeshComponent>(mat,parent_node,ri);
CreateComponentInfo cci(parent_node,mat);
CreateComponent<MeshComponent>(&cci,ri);
}
bool InitScene()

View File

@ -101,7 +101,9 @@ private:
return(nullptr);
}
CreateComponent<MeshComponent>(parent_node,ri);
CreateComponentInfo cci(parent_node);
CreateComponent<MeshComponent>(&cci,ri);
return ri;
}

View File

@ -58,7 +58,9 @@ private:
{
Mesh *ri=db->CreateMesh(prim_axis,material_instance,pipeline);
CreateComponent<MeshComponent>(GetSceneRoot(),ri);
CreateComponentInfo cci(GetSceneRoot());
CreateComponent<MeshComponent>(&cci,ri);
CameraControl *camera_control=GetCameraControl();