继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

unity(script)常用方法汇总 part(1)

菜鸟教程
关注TA
已关注
手记 4
粉丝 63
获赞 142

unity(script)常用方法汇总

新建一个GameObject

public class Scriptname :MonoBehaviour {
    GameObject hello
    //这个gameobject只会在被执行的时候创建
    void Start () {
        hello = new GameObject ("hello");
   }    
}

获取并且改变一个GameObject的颜色(5.1 version)

public class Scriptname :MonoBehaviour {
    void Start() {
       gameObject.GetComponent<Renderer>().material.color = Color.red;
    }
}
//获取一个非挂载的object改变颜色(public挂载)
public GameObject hello
public class Scriptname :MonoBehaviour {
    void Start() {
       hello.GetComponent<Renderer>().material.color = Color.red;
    }
}
//使用GameObject.Find()   
//GameObject hello = GameObject.Find ("Cube");
//hello.GetComponent<Renderer>().material.color = Color.red;

运行实例化预设(Prefabs)

public class Instantiation :MonoBehaviour {
void Start() {
Instantiate(original, position, rotation, parent, instantiateinWorldSpace);
}
}
  1. original:你要复制的预设对象
  2. position:位置 (Vetory3)
  3. rotation:旋转角度
  4. parent:分配给新对象的父级
  5. instantiateinWorldSpace:是否根据新父对象相对位置 (boolen)

使用unity的物理引擎

unity 内置NVIDIA PhysX物理引擎,要使用物理控制对象只需要为其添加刚体(Rigidbody),这样在执行操作时对象就会直接受到重力和碰撞影响。

这里简单介绍一下

  1. 运动学刚体(Kinematic Rigidbody)
    用户启用isKinematic选项之后游戏物体将不会受到重力和摩擦力的影响,可以通过明确的动画或者脚本控制它的位置,可以与普通刚体(non-Kinematic Rigidbody)交互

  2. 静态碰撞组件(Static Collider)
    具有碰撞体(Collider)而不是刚体(Rigidbody)的物体,保持静态,通过形状生成碰撞机,同时可以使用网格生成Collider(Mesh Collider)
  3. 角色控制器(Character Controller)
    类人角色控制器,可以是第三人称主角色,或者第一人称视角的射击者或者任何的敌人,Character Controller 执行的碰撞检测可以确保角色沿墙壁滑动,走上,走下阶梯。
    本质上是非物理性的。

使用刚体控制一个子弹的飞行

public class fly : MonoBehaviour {
    Vector3 fwd;
    //获取指定一个物体的方向向量
    void Start () {
        fwd = transform.TransformDirection (Vector3.forward);
    }
    // 在这个方向上面加上一个向前的力
    void Update () {
        GetComponent<Rigidbody> ().AddForce (fwd * 100);
    }
}
打开App,阅读手记
8人推荐
发表评论
随时随地看视频慕课网APP