diff --git a/example/Gizmo/Gizmo3DMove.cpp b/example/Gizmo/Gizmo3DMove.cpp index 7a1f3dd2..e948e934 100644 --- a/example/Gizmo/Gizmo3DMove.cpp +++ b/example/Gizmo/Gizmo3DMove.cpp @@ -74,30 +74,37 @@ bool InitGizmoMoveStaticMesh() { SceneNode *root_node=new SceneNode(sphere); - root_node->CreateSubNode(scale(9,1,1),cylinder[0]); - { Transform tm; + constexpr const Vector3f one_scale(1); + constexpr const Vector3f cylinder_scale(0.35f,0.35f,4.5f); + tm.SetTranslation(Vector3f(0,0,4.5f)); + tm.SetScale(cylinder_scale); root_node->CreateSubNode(tm.GetMatrix(),cylinder[2]); //Z 向上圆柱 + tm.SetScale(one_scale); tm.SetTranslation(Vector3f(0,0,9.5f)); root_node->CreateSubNode(tm.GetMatrix(),cone[2]); //Z 向上圆锥 + tm.SetScale(cylinder_scale); tm.SetRotation(AxisVector::Y,90); tm.SetTranslation(Vector3f(4.5f,0,0)); root_node->CreateSubNode(tm.GetMatrix(),cylinder[0]); //X 向右圆柱 + tm.SetScale(one_scale); tm.SetTranslation(Vector3f(9.5f,0,0)); root_node->CreateSubNode(tm.GetMatrix(),cone[0]); //X 向右圆锥 - tm.SetRotation(AxisVector::X,90); + tm.SetScale(cylinder_scale); + tm.SetRotation(AxisVector::X,-90); tm.SetTranslation(Vector3f(0,4.5f,0)); root_node->CreateSubNode(tm.GetMatrix(),cylinder[1]); //Y 向前圆柱 + tm.SetScale(one_scale); tm.SetTranslation(Vector3f(0,9.5f,0)); root_node->CreateSubNode(tm.GetMatrix(),cone[1]); //Y 向前圆锥 } diff --git a/example/Gizmo/GizmoResource.cpp b/example/Gizmo/GizmoResource.cpp index 827296f9..e2da9f25 100644 --- a/example/Gizmo/GizmoResource.cpp +++ b/example/Gizmo/GizmoResource.cpp @@ -198,7 +198,7 @@ namespace } { - InitGizmoRenderable(GizmoShape::Sphere,CreateSphere(gizmo_triangle.prim_creater,8),gizmo_triangle.pipeline); + InitGizmoRenderable(GizmoShape::Sphere,CreateSphere(gizmo_triangle.prim_creater,32),gizmo_triangle.pipeline); } { @@ -206,8 +206,8 @@ namespace cci.radius =1; //圆锥半径 cci.halfExtend =1; //圆锤一半高度 - cci.numberSlices=8; //圆锥底部分割数 - cci.numberStacks=1; //圆锥高度分割数 + cci.numberSlices=32; //圆锥底部分割数 + cci.numberStacks=8; //圆锥高度分割数 InitGizmoRenderable(GizmoShape::Cone,CreateCone(gizmo_triangle.prim_creater,&cci),gizmo_triangle.pipeline); } @@ -216,7 +216,7 @@ namespace struct CylinderCreateInfo cci; cci.halfExtend =1; //圆柱一半高度 - cci.numberSlices=8; //圆柱底部分割数 + cci.numberSlices=32; //圆柱底部分割数 cci.radius =1; //圆柱半径 InitGizmoRenderable(GizmoShape::Cylinder,CreateCylinder(gizmo_triangle.prim_creater,&cci),gizmo_triangle.pipeline);