使用unity制作游戏——打砖块
使用unity制作游戏——打砖块打砖块游戏大家肯定都是玩过的在2d平面上是这个样子的那么在unity上能不能造一个3D的打砖块?那肯定是可以的那么制作游戏的第一步,建模。我们学习上面的构架,在unity里面肯定需要方块和球体,也就是Cube和Sphere,但是在unity中是3D的,是有物理引擎的,所以我们还是要改变一些模式。那么我们简单的搭建一个场地一个能支撑砖块的平面,和用一个小Cube组成的
·
使用unity制作游戏——打砖块
打砖块游戏大家肯定都是玩过的
在2d平面上是这个样子的
那么在unity上能不能造一个3D的打砖块?
那肯定是可以的
那么制作游戏的第一步,建模。
我们学习上面的构架,在unity里面肯定需要方块和球体,也就是Cube和Sphere,但是在unity中是3D的,是有物理引擎的,所以我们还是要改变一些模式。
那么我们简单的搭建一个场地
一个能支撑砖块的平面,和用一个小Cube组成的大Cube,这样我们的场景就做好了。有需要美观的朋友可以自己设计贴图的。
第二步 设置参数
为了让游戏稳定进行,是需要设置很多参数和细节的。
这里简单罗列出来需要设置什么
1.将Cube和Sphere作为预测体
2.将Cube和Sphere设置上刚体
第三步 编写代码
我们需要编写两个部分的代码,一个是让球体作为子弹的射击Shoot代码
和操作视角移动的Movement代码
下面是shoot代码部分
public class shoot : MonoBehaviour
{
public GameObject buttet;
public float speed = 20;
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
if (Input.GetMouseButtonDown(0))
{
GameObject b = GameObject.Instantiate(buttet ,transform.position,transform.rotation);
Rigidbody rgd = b.GetComponent<Rigidbody >();
rgd.velocity = transform.forward * speed;
}
}
}
movement部分
public class movement : MonoBehaviour
{
public float speed = 3;
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
float h = Input.GetAxis("Horizontal");
float v = Input.GetAxis("Vertical");
transform.Translate(new Vector3 (h,v,0)*Time.deltaTime *speed );
}
}
将这俩个代码添加到摄像机Main Camera里,把球体SPhere的预测体加入到c#代码的参数里
这样这个游戏就可以运行了。
更多推荐
已为社区贡献1条内容
所有评论(0)