用这个游戏实例来总结之前我们复习的所有关于物理引擎的知识。在游戏中,发送一个球形的炮弹来击垮前面的墙。给炮弹与墙都添加了刚体组件,给炮弹绑定了粒子系统,并且在炮弹的粒子动画中添加了5组不同的颜色,显示移动轨迹。
using UnityEngine;
using System.Collections;
public class Script_06_14 : MonoBehaviour {
//炮弹对象
private GameObject obj;
//准心贴图
public Texture texture;
void Start ()
{
//获取炮弹对象
obj = GameObject.Find("Sphere0");
//隐藏默认鼠标图标
Screen.showCursor = false;
}
void FixedUpdate()
{
//点击鼠标左键后
if(Input.GetMouseButton(0))
{
//创建射线从摄像机位置发射到鼠标选择位置
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
RaycastHit hit;
//判断射线是否与游戏对象相交
if(Physics.Raycast(ray, out hit))
{
//确保游戏对象为围墙
if(hit.collider.name =="Cube")
{
//计算炮弹与目标点之间的距离
Vector3 direction = hit.transform.position - obj.transform.position;
//发射炮弹
obj.rigidbody.AddForceAtPosition(direction, hit.transform.position,ForceMode.Impulse);
}
}
}
}
void OnGUI()
{
//绘制准心
Rect rect = new Rect(In

本文通过一个Unity 3D游戏实例,综合运用物理引擎,阐述如何创建一个击垮围墙的游戏。游戏中,利用刚体组件赋予炮弹和墙动态交互能力,炮弹发射后展示五色粒子效果,揭示其运动路径,以此巩固和展示Unity 3D的物理系统应用。
1032

被折叠的 条评论
为什么被折叠?



