1、父对象的初始位置设,即刚开始的空对象的根节点位置应当设置成(0,0,0) 这样设置可以避免以后出现奇怪的坐标。 GameObject实际上就是一些组件的容器。

unity 使用公用变量原因是,在Unity的Inpsector视图中可以修改这些共有变量。从而调节对象的参数。

Rotate() 在默认的情况下是基于本地坐标进行旋转的,(本地坐标是每一个对象否具有的,一样有三个轴,并且这个坐标轴耕者自己的对象进行移动。是完全绑定在自己的对象上的)不过可以使用Space 来指定旋转参照的坐标系, Space.World  世界坐标系, Space.Self 自身坐标系。

Rotate( 0,speed,0 ,Space.World)  前三个参数指的是X, Y Z, 轴  ,speed指定旋转的速度  ,向量把多个数字存储为一个单元, Vector3 () 有三个数组分别是(X,Y,Z)、需要创建一个新的向量 Vector3不是修改原有的向量,transform是只读的,

使用四元数用于表示在旋转值之间插值(就是通过一些中间值来慢慢从一个值编程另一个值) ,看起来更加的平滑和自然。欧拉角和四元数之间可以切换。

禁止对玩家进行物理旋转,因为场景中的所有事物会受到复杂仿真的影响,会导致对象呗弹开,或者跌倒,当玩家的旋转需要单独是的有鼠标控制的时候,就不能受到物理仿真的影响。 设置通过输入脚本设置玩家的rigibody的freeaeRotation属性,在 void Start(){} 中添加检查玩家刚性 的属性 Rigidbody(刚体) 是对象拥有一个额外的组件,物理仿真作用于刚体并处理他们接触到物体。

Rigidbody body = GetComponent<Rigidbody>();
        if (body != null) {
            body.freezeRotation = true;
        }

2、玩家鼠标控制旋转代码

3、玩家控制 水平移动代码

void Start () {
        transform.Translate(0, speed, 0);
        //使用键盘的鼠标的输入来控制玩家的角色的移动
        float deltaX = Input.GetAxis("Horizontal") * speed;
        float deltaZ = Input.GetAxis("vertical") * speed;
        transform.Translate(deltaX, 0, deltaZ);
    }

4、调整游戏的独立运行的速率,使得其独立于计算机。

transform.Translate(deltaX * Time.captureFramerate, 0, deltaZ * Time.deltaTime);//乘以延迟时间,使得运动独立于计算机的影响

5、调整玩家在受限制的空间中运动,不会跑出空间。 移动CharacterController

unity 3D 学习笔记的更多相关文章

  1. Unity 3D学习笔记(三)——关于脚本

    在脚本中定义的类成员,如果是公共的话,在脚本与游戏对象绑定之后,是可以在Inspector中编辑的,例如下面这个脚本: using UnityEngine; using System.Collecti ...

  2. Unity Shader学习笔记-1

    本篇文章是对Unity Shader入门精要的学习笔记,插图大部分来自冯乐乐女神的github 如果有什么说的不正确的请批评指正 目录 渲染流水线 流程图 Shader作用 屏幕映射 三角形遍历 两大 ...

  3. AutoCAD/Civil 3D 学习笔记

    Civil学习笔记 1.环境配置 1.添加引用: Civil二次开发需要5个基本的AutoCAD的dll引用-acdbmgd.dll, acmgd.dll, accoremgd.dll, AecBas ...

  4. Unity 3D学习心得,程序员开发心得分享!

    Unity开发之路 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- 心分享.心创新! ...

  5. 从0开始学习Unity的学习笔记(I 界面学习和简单模型拼装)

    先给一个大致今天学习的图,然后后面是细节 1.下载Unity :官网下载需要版本 2.Unity安装:一定不要有中文路径:一台电脑可以安装不同版本的Unity,但是要安装在不同的文件夹下: 3. 新建 ...

  6. 【Unity Shader学习笔记】Unity基础纹理-单张纹理

    1 单张纹理 1.1 纹理 使用纹理映射(Texture Mapping)技术,我们把一张图片逐纹素(Texel)地控制模型的颜色. 美术人员建模时,会在建模软件中利用纹理展开技术把纹理映射坐标(Te ...

  7. Unity 3D学习之《Unity 3D 手机游戏开发》1

    P10: 设置断点步骤02,在Project窗口右键(是在下图中的红色区域,点右键)选择[Sync Mono Develop Project],打开MonoDevelop编辑器 P11: " ...

  8. Unity 3D学习之 Prime31 Game Center插件用法

    http://momowing.diandian.com/post/2012-11-08/40041806328 It's my life~: 为app 连入Game Center 功能而困扰的朋友们 ...

  9. css3 3d学习笔记

    几个属性: -webkit-perspective:0;景深(默认0), -webkit-perspective-origin:center center;景深基点(默认中间), -webkit-tr ...

随机推荐

  1. 【译】第五篇 SQL Server安全架构和安全

    本篇文章是SQL Server安全系列的第五篇,详细内容请参考原文. 架构本质上是一个数据库对象,其他对象的一个容器,在复杂的数据库中它能够很容易的管理各组对象.架构具有重要的安全功能.在这一篇你会学 ...

  2. js 关键字 in 的使用方法

    参考地址:http://www.cnblogs.com/qiantuwuliang/archive/2011/01/08/1930643.html in 操作符用于确定某个元素是否在数组中,判断某个属 ...

  3. 【.net ajax显示后台返回值】

    1..net ajax显示后台返回值 <script>        $(document).ready(function () {            $("#btn&quo ...

  4. Tip:JSP标签也称之为Jsp Action(JSP动作)元素

    JSP标签也称之为Jsp Action(JSP动作)元素,它用于在Jsp页面中提供业务逻辑功能,避免在JSP页面中直接编写java代码,造成jsp页面难以维护. ================ &l ...

  5. Java 遍历List中删除的解决方法

  6. SpringSecurity实现图形验证码功能

    ⒈封装验证码类 package cn.coreqi.security.validate; import java.awt.image.BufferedImage; import java.time.L ...

  7. 【Ubuntu】如何修改IP

    前几天有幸捣鼓了一下Ubuntu系统,和Linux系统差不多,在这里说说如何修改IP           1,首先使用命令ifconfig查看当前IP,如图           2,编辑文件,输入命令 ...

  8. sorter函数参数设置

    python内置sorted函数排完序生成一个新列表,而列表list.sorted则是直接在原列表上修改 sorted默认排序是正序,即从小到大. 若想倒着排序,则reverse=True 当需要排序 ...

  9. 在Apache Struts中利用OGNL注入

    前言 本文简要介绍了Apache Struts的OGNL注入缺陷,文章中介绍使用简单的应用程序复现OGNL注入.深入研究针对公共漏洞,并理解这类漏洞. 内容 安装Apache Tomcat服务器(入门 ...

  10. python中“*”、"*args"、"kwargs"三种用法

    参考链接:https://www.cnblogs.com/cwind/p/8996000.html 注意的是: (1)"*"符号的用法很类似C++中的指针,针对列表; (2)&qu ...