Genesis-3D新手入门——15.物理

物理

物理组件是实现游戏功能的重要组成部分,Genesis-3D中三种物理组件刚体、碰撞器、角色控制器分别有其各自的做用,本篇文档将经过给简单的物体模型添加物理组件的方式来向你们展现物理组件的做用和使用方法。web

1.建立游戏工程,参照“转动的球体”文档,在场景中导入一个球体。ide

2.在场景中添加一个立方体。如图所示,点击建立,立方体。spa

3.调整球体和立方体的大小。为了作出球体落在立方体平面上弹起的效果,咱们须要变换球体和立方体的大小,这能够在变换界面经过输入数值来实现,也能够经过Ctrl+R来实现。调整以后的场景如图所示设计

4.添加碰撞体。点击属性面板最下面的“+添加组件”,球体添加球形碰撞体,立方体添加立方体碰撞体。如图所示code

5.修改刚体类型。刚体使你的游戏对象受物理引擎控制,为球体添加动态刚体,立方体添加静态刚体便可。orm

6.在资源管理器添加物理材质。对象

7.调整弹力。为了使球体可以接近现实中落下弹起并幅度逐渐减少的现象,在环境面板中的物理环境下,点击“默认材质” 后的小箭头,选择刚刚添加的物理材质。游戏

   这时在右侧的资源面板中能够看到动态、静态摩擦力、弹力等,如下是我设置的参数,你也能够本身尝试修改,达到不同的效果。ip

8.添加脚本。为了赋予这个球体一个初始的自由下落的高度,用Space键控制,咱们编写了一段简单的代码来实现这个功能,具体如图所示资源

01 using System;
02 using System.Runtime.CompilerServices;
03 using ScriptRuntime;
04 namespace ScriptRuntime
05 {
06     public class Impact : ScriptableClass
07     {       
08         public override void OnFrame ()
09         {
10             if (Input.KeyPressed (Code.Space))
11             {
12                 Vector3 pos = Owner.WorldPosition;
13                 pos.Y = 8.22f;
14                 Owner.WorldPosition = pos;
15                 Owner.GetComponent< PhysicsBodyComponent>().MoveToPosition(ref pos);
16             }
17         }
18     };
19 }

9.贴图。要想让场景美观,咱们须要为球体和立方体上贴图,选择本身喜欢的贴图,在材质面板选择,如图所示

   贴图完成以后,场景如图所示

10.发布并运行游戏。想要观察到咱们所作的游戏,点击发布游戏,选择好路径以后打开它,便可以看到咱们设计的游戏,如图所示

这样,一个简单的应用物理组件的演示游戏制做完成,准备好迎接接下来的挑战吧!

 

相关文章
相关标签/搜索