[脚本]Unity3D一些基本功能的脚本

发布时间:2020-07-16 16:17:11 作者:蓬莱仙羽
来源:网络 阅读:363

Unity3D入门:一

*添加天空盒子:

添加天空盒 有两种方式 

1 : 在当前相机上添加skybox

2 : 在当前场景上添加skybox

上面的两种方式的结果是一样的   第一种方式的优势在于 如果 世界中有多个摄像机的话,切换摄像机 需要看不同的天空 就可以使用这种方式实现

我们先来试试unity 给我们的提供的天空盒 吧 

要使用 unity 当然要先导入天空资源包啦 导入方式 :

assets -> import package ->skyboxes 

然后点击camera属性的skybox后面的一个小圆按钮(中间有个实心的点),然后选择自己想要的天空盒效果

*动态创建一排附有刚体属性的cube:

for (int i = 0; i < 4; i++)
        {
            for (int j = 0; j < 4; j++)
            {
                 GameObject goNew = GameObject.CreatePrimitive(PrimitiveType.Cube);
                 goNew.transform.position = new Vector3(i, j, -1);//x,y,z坐标
                 goNew.AddComponent<Rigidbody>();
            }
        }

*如果点击鼠标,给当前刚体添加一个向前的推力:

if (Input.GetMouseButtonDown(0))
{

this.gameObject.rigidbody.AddForce(Vector3.forward*10,ForceMode.Impulse);//一个力方向的基本向量,然后乘以倍数,显得力就大一些

}

*按下键盘某键,然后程序作出反应:

var MoveSpeed=5;
var RotateSpeed=20;
function Update () {
if(Input.GetKey(KeyCode.W))
{
this.transform.Translate(Vector3.forward*Time.deltaTime*MoveSpeed);
}
else if(Input.GetKey(KeyCode.S))
{
this.transform.Translate(Vector3.forward*Time.deltaTime*-MoveSpeed);
}
else if(Input.GetKey(KeyCode.A))
{
this.transform.Rotate(Vector3.up*Time.deltaTime*-RotateSpeed);
}
else if(Input.GetKey(KeyCode.D))
{
this.transform.Rotate(Vector3.up*Time.deltaTime*RotateSpeed);
}
}


推荐阅读:
  1. vue更改数组中的值实例代码详解
  2. 怎么在Vue中一键清空表单

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

基本功 un

上一篇:关于PHP+iFrame实现页面无需刷新的异步文件上传

下一篇:django models里如何在数据表插入数据id自增

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》