• 小白学Unity03-太空漫游游戏脚本,控制飞船移动旋转


    首先搭建好太阳系以及飞机的场景

    需要用到3个脚本

    1.控制飞机移动旋转

    2.控制摄像机LookAt朝向飞机和差值平滑跟踪飞机

    3.控制各个星球自转以及围绕太阳旋转(rotate()和RotateAround())

    =============================================

    1.控制飞机移动旋转的脚本

    1. using System.Collections;
    2. using System.Collections.Generic;
    3. using UnityEngine;
    4. public class MovePlan : MonoBehaviour
    5. {
    6. // 这个脚本是用户用WASD键盘控制飞机移动
    7. public float MoveSpeed = 0.5f;
    8. public float RotateSpeed = 2f;
    9. float mOUSESPEED;
    10. void Update()
    11. {
    12. if (Input.GetKey(KeyCode.W))
    13. {
    14. this.transform.Translate(new Vector3(0, 0, 1 * MoveSpeed * Time.deltaTime));
    15. }
    16. if (Input.GetKey(KeyCode.S))
    17. {
    18. this.transform.Translate(new Vector3(0, 0, -1 * MoveSpeed * Time.deltaTime));
    19. }
    20. if (Input.GetKey(KeyCode.A))
    21. {
    22. this.transform.Translate(new Vector3(-1 * MoveSpeed * Time.deltaTime,0, 0 ));
    23. }
    24. if (Input.GetKey(KeyCode.D))
    25. {
    26. this.transform.Translate(new Vector3(1 * MoveSpeed * Time.deltaTime, 0, 0));
    27. }
    28. //控制物体旋转
    29. mOUSESPEED = Input.GetAxis("Mouse X");
    30. this.transform.Rotate(new Vector3(0, mOUSESPEED * RotateSpeed*Time.deltaTime, 0));
    31. }
    32. }

     

     2.控制摄像机LookAt朝向飞机和差值平滑跟踪飞机 的脚本

    1. using System.Collections;
    2. using System.Collections.Generic;
    3. using UnityEngine;
    4. public class ControlCamera : MonoBehaviour
    5. {
    6. // 这个脚本是用来让摄像机跟踪目标,并且一直看向目标
    7. public Transform onetarget;//这是飞机的变换组件
    8. public GameObject OnePoint;
    9. public float Movespeed = 1f;
    10. void Update()
    11. {
    12. this.transform.position = Vector3.Lerp(this.transform.position, OnePoint.transform.position, Movespeed * Time.deltaTime);
    13. this.transform.LookAt(onetarget);
    14. }
    15. }

    使用方法:

    分别挂在到摄像机和飞机上

  • 相关阅读:
    基于R和gephi做宏基因组与代谢组等多组学联合network相关性网络图
    AWS灾难恢复的重要参考指标
    差分约束——区间
    说说mvc和mvvm的区别和联系
    接口测试工具的实验,Postman、Swagger、knife4j(黑马头条)
    经典CAN2.0 DBC快速切换为CANFD DBC
    细数APDL中的流程控制命令
    PTA—sql补题(4)
    Terraform 系列-Terraform 简介
    【wiki知识库】05.分类管理实现--前端Vue模块
  • 原文地址:https://blog.csdn.net/leoysq/article/details/132908616