• CR开发笔记-2基础飞机的搭建以及测试代码


    好吧!今天没有建模,主要是美术细胞死了。

    处于一种劳累的状态。

    快速说一下今天的进度

    啊,这就是一个逗比飞机的基本骨架。

    没有什么好解释的。

    这里开始坑人了,上面的红色箭头指的是是否利用重力,这里由于是飞船么,宇宙中暂时没有重力,所以去掉。

    下面是的红红的是是否符合经典物理动力学。

    (说白了就是是否可以支持Force,今天我以为他是是否失重,然后调了半天代码%>_<%)

    然后贴代码。

    public class levelRun : MonoBehaviour {

    // Use this for initialization

    void Start () {

            this.gameObject.AddComponent("standardShipControl");

    }

    // Update is called once per frame

    void Update () {

    }

    }

    这个文件绑定在每个关卡场景的levelRun里面,在这里是载入一个标准飞船控制脚本。以后还会载入各种GUI之类的文件,这样让整个体系更灵活化,便于操作。

    下面是标准操作的一开始定义代码

    public class standardShipControl : MonoBehaviour {

        GameObject ship;

        Transform frontLeftPropeller;

        Transform frontRightPropeller;

        Transform backLeftPropeller;

        Transform backRightPropeller;

        Transform backPropeller;

        Transform frontPropeller;

        Transform frontWing;

        Transform backWing;

    // Use this for initialization

    void Start () {

            ship = GameObject.Find("ship");

            frontWing = transform.Find("/ship/frontWing");

            backWing = transform.Find("/ship/backWing");

            backLeftPropeller = transform.Find("/ship/backLeftWingPropeller");

            backRightPropeller = transform.Find("/ship/backRightWingPropeller");

            frontLeftPropeller = transform.Find("/ship/frontLeftWingPropeller");

            frontRightPropeller = transform.Find("/ship/frontRightWingPropeller");

            backPropeller = transform.Find("/ship/backPropeller");

            frontPropeller = transform.Find("/ship/frontPropeller");

    }

    // Update is called once per frame

    void Update () {

    }

        void FixedUpdate(){

             if(Input.GetKey("w"))

            {

                //UnityEngine.Debug.Log("he");

               ship.rigidbody.AddForceAtPosition(ship.transform.forward, backPropeller.position);

            }

        }

    }

    需要注意的就是在外部加载的脚本,貌似在transform里的参数在前面需要加一个/否则找不到,原来加不加是一样的。

    重要函数UnityEngine.Debug.Log("he")调试。

    ship.rigidbody.AddForceAtPosition(ship.transform.forward, backPropeller.position);在固定点施加力。

    结束!睡觉!

    PS:(程序员不适合画画)

  • 相关阅读:
    使用多线程生产者消费者模式实现抓斗图
    selenium+chrome抓取淘宝搜索抓娃娃关键页面
    mysql必知必会
    mongoDB高级查询$type4array使用解析
    并发服务器几种实现方法总结
    python的面向对象和面向过程
    lazarus,synedit输入小键盘特殊符号的补丁
    Delphi中静态方法重载还是覆盖的讨论
    python全栈开发_day4_if,while和for
    python全栈开发_day3_数据类型,输入输出及运算符
  • 原文地址:https://www.cnblogs.com/zuoguangxing/p/3836138.html
Copyright © 2020-2023  润新知