更新BillboardTest/PlaneGrid3D,支持新的CameraControl::SetPosition/SetTarget,简化初始化设置操作

This commit is contained in:
hyzboy 2025-06-10 23:36:46 +08:00
parent 0170a8d7c6
commit 6635d33461
3 changed files with 7 additions and 24 deletions

@ -1 +1 @@
Subproject commit d81a9f79f4f33a67d4c2938cb3acdd4ec18feeaf
Subproject commit 23d74ac1676929b97d3292524a1457d0b3fb0419

View File

@ -163,23 +163,15 @@ private:
bool InitScene()
{
SceneNode *scene_root=GetSceneRoot(); //取得缺省场景根节点
Camera *cur_camera=GetCamera(); //取得缺省相机
scene_root->Add(CreateSceneNode(prim_plane_grid,mi_plane_grid,pipeline_plane_grid));
scene_root->Add(new SceneNode(ro_billboard));
cur_camera->pos=Vector3f(32,32,32);
CameraControl *camera_control=GetCameraControl();
if(camera_control
&&camera_control->GetControlName()==FirstPersonCameraControl::StaticControlName())
{
FirstPersonCameraControl *fp_cam_ctl=(FirstPersonCameraControl *)camera_control;
fp_cam_ctl->SetTarget(Vector3f(0,0,0));
}
camera_control->SetPosition(Vector3f(32,32,32));
camera_control->SetTarget(Vector3f(0,0,0));
return(true);
}
@ -193,8 +185,8 @@ public:
SAFE_CLEAR(prim_plane_grid);
}
bool Init()
{
bool Init() override
{
if(!InitPlaneGridMP())
return(false);

View File

@ -94,19 +94,10 @@ private:
Add(scene_root,material_instance[1],rotate(HGL_RAD_90,0,1,0));
Add(scene_root,material_instance[2],rotate(HGL_RAD_90,1,0,0));
Camera *cur_camera=GetCamera(); //取得缺省相机
cur_camera->pos=Vector3f(32,32,32);
CameraControl *camera_control=GetCameraControl();
if(camera_control
&&camera_control->GetControlName()==FirstPersonCameraControl::StaticControlName())
{
FirstPersonCameraControl *fp_cam_ctl=(FirstPersonCameraControl *)camera_control;
fp_cam_ctl->SetTarget(Vector3f(0,0,0));
}
camera_control->SetPosition(Vector3f(32,32,32));
camera_control->SetTarget(Vector3f(0,0,0));
// camera_control->SetReserveDirection(true,true); //反转x,y