然后为Bullet添加Rigidbody 2D(刚体)、Box Collider 2D(碰撞器)、Script(脚本)。其中Rigidbody 2D(刚体)注意Gravity Scale(重力)设置为0,这样可以直线发射子弹,然后勾选掉Freeze Rotation(自由旋转)。Box Collider 2D(碰撞器)里面要勾选is Trigger(扳机),后面代码要用到OnTriggerEnter2D(和OnCollisionEnter2D的区别在...
将Sprites文件夹下的Pickup图片拖拽至层级视图,将其Sorting Layer设为Pickup并添加Circle Collider 2D组件。然后新建脚本CompleteRotator用于旋转宝石,脚本代码如下://Update is called every frame //Rotate thet transform of the game object this is attached to by 45 degrees, taking into account the time e...
将Player对象的Rigibody 2D组件的Gravity Scale属性设为0以防止Player向下坠落,并将PlayerController脚本的Speed属性设为10。 第三步 添加碰撞 为Player添加Circle Collider 2D组件并将Radius属性设为2.15,如下: 接下来为背景添加碰撞体,让玩家不要跑出墙壁。为背景边框添加4个Box Collider 2D组件,各组件属性设置如下: ...
点击Platform,Add Component->Box Collider 2D 点击Player,Add Component->Capsule Collider 2D 如下图所示,碰撞盒的大小不匹配角色。 点击如图所示按钮打开碰撞盒编辑,使碰撞盒大致符合角色大小。 然后,要想让角色按照物理规则正常反应我们还要添加刚体组件。 Add Component->Rigidbody 2D 添加刚体之后,如果直接进行移动...
旋转函数transform.Rotate()来实现。 transform的RotateAround(vector3 postion,vector3 axis,float angle)函数 2,Mesh,Sphere,Box,Capsule,四种碰撞器。请按照性能开销由小到大进行排序。 性能开销由小到大排序 sphere collider , capsule collider , box collider ,Mesh collider ...
Auto Rotate 选择要展开的图像 需要:Rigidbody2D 选择要展开的图像 AutoRotation 在 Z 轴上对游戏对象施加持续旋转。此脚本可用于为装饰对象添加移动,也可与 ConditionCollision 脚本一起用于创建旋转障碍物。你可以指定速度,将速度值设置为负数将使对象逆时针旋转。 在Scene 视图中,绿色箭头辅助图标表示旋转的方向。
Collider的起点和终点不需要满足或完全包围一个区域来发挥作用(不像Polygon Collider 2D),并且可以形成一条直线或其他单边形状。 8.Composite Collider 2D 复合碰撞体 复合碰撞器2D组件是一个与2D物理系统交互的碰撞器。不像大多数碰撞器,它不定义一个固有的形状。相反,它会合并你设置使用的任何2D Box Collider或2D...
transform.Rotate(Vector3.up * 4, Space.World); //原地旋转 if (IsRun == true) { CoinMove(); } } public void OnTriggerEnter2D(Collider2D coll) { if (coll.gameObject.CompareTag("Player")) { IsRun = true; } } 在角色脚本中获取该数量text。
2D和UI等等游戏物体,快捷键T。按下shift键可以等比缩放游戏对象 Rotate Move Or Scale Tool (多功能工具):可以对选中的游戏物体进行移动,旋转,缩放,快捷键 Y 其他快捷键: 聚焦某一个游戏物体:选中游戏物体,按下 F 视野移动:按下鼠标右键或鼠标中键
public class Player { //移动时碰撞器 public BoxCollider2D MovementCollider { get; private set; } public void Start() { MovementCollider = GetComponent<BoxCollider2D>(); } public void SetVelocityZero() { RB.velocity = Vector2.zero; CurrentVelocity = Vector2.zero; } public void SetCollider...