unity 3D 学习笔记
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 学习笔记的更多相关文章
- Unity 3D学习笔记(三)——关于脚本
在脚本中定义的类成员,如果是公共的话,在脚本与游戏对象绑定之后,是可以在Inspector中编辑的,例如下面这个脚本: using UnityEngine; using System.Collecti ...
- Unity Shader学习笔记-1
本篇文章是对Unity Shader入门精要的学习笔记,插图大部分来自冯乐乐女神的github 如果有什么说的不正确的请批评指正 目录 渲染流水线 流程图 Shader作用 屏幕映射 三角形遍历 两大 ...
- AutoCAD/Civil 3D 学习笔记
Civil学习笔记 1.环境配置 1.添加引用: Civil二次开发需要5个基本的AutoCAD的dll引用-acdbmgd.dll, acmgd.dll, accoremgd.dll, AecBas ...
- Unity 3D学习心得,程序员开发心得分享!
Unity开发之路 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- 心分享.心创新! ...
- 从0开始学习Unity的学习笔记(I 界面学习和简单模型拼装)
先给一个大致今天学习的图,然后后面是细节 1.下载Unity :官网下载需要版本 2.Unity安装:一定不要有中文路径:一台电脑可以安装不同版本的Unity,但是要安装在不同的文件夹下: 3. 新建 ...
- 【Unity Shader学习笔记】Unity基础纹理-单张纹理
1 单张纹理 1.1 纹理 使用纹理映射(Texture Mapping)技术,我们把一张图片逐纹素(Texel)地控制模型的颜色. 美术人员建模时,会在建模软件中利用纹理展开技术把纹理映射坐标(Te ...
- Unity 3D学习之《Unity 3D 手机游戏开发》1
P10: 设置断点步骤02,在Project窗口右键(是在下图中的红色区域,点右键)选择[Sync Mono Develop Project],打开MonoDevelop编辑器 P11: " ...
- Unity 3D学习之 Prime31 Game Center插件用法
http://momowing.diandian.com/post/2012-11-08/40041806328 It's my life~: 为app 连入Game Center 功能而困扰的朋友们 ...
- css3 3d学习笔记
几个属性: -webkit-perspective:0;景深(默认0), -webkit-perspective-origin:center center;景深基点(默认中间), -webkit-tr ...
随机推荐
- 在Github和oschina上搭建自己的博客网站
在Github上搭建 - 参考链接 搭建一个免费的,无限流量的Blog----github Pages和Jekyll入门 GitHub + Jekyll 搭建并美化个人网站 用Jekyll搭建的Git ...
- Flask里面的cookie的基本操作
#cookie相关操作,依赖于make_response #调用cookie依赖request模块 from flask import Flask,make_response,request #建立对 ...
- Light oj 1099 - Not the Best 次短路
题目大意:求次短路. 题目思路:由于可能存在重边的情况所以不能采用邻接矩阵储存图,我用了邻接表来存图. 由起点S到终点E的次短路可能由以下情况组成: 1.S到v点的次短路 + v到E的距离 2.S到v ...
- python,获取用户输入,并且将输入的内容写到.txt
该功能缺点是必须保证该文件不存在的情况才会成功 f=open('E:/mywork/保存文件.txt','x') def userwrite(code): if code=='w': f.close( ...
- 生产者消费者模型java
马士兵老师的生产者消费者模型,我感觉理解了生产者消费者模型,基本懂了一半多线程. public class ProducerConsumer { public static void main(Str ...
- [Kubernetes]CentOS7下Etcd集群搭建
Etcd简要介绍 Etcd是Kubernetes集群中的一个十分重要的组件,用于保存集群所有的网络配置和对象的状态信息 Etcd构建自身高可用集群主要有三种形式: ①静态发现: 预先已知 Etcd 集 ...
- 前段基础之CSS
本文参考:https://www.cnblogs.com/ctztake/p/7577436.html CSS 语法 CSS规则由两个主要的部分构成:选择器,以及一条或多条声明. ''' select ...
- AIX系统下sed的用法与实例——查询/打印/替换字符串并生成文件/删除
sed是AIX中非常重要的文本流编辑器,它对输入的文本进行查询/打印/替换/删除等操作,并将结果写到标准输出.sed 命令包含很多功能,用于选择要修改的行,并只对选择的行作更改. 首先,使用sed命令 ...
- $Django 多表操作(增删改查,基于双下划线,对象的查询) 在Python脚本中调用Django环境
在Python脚本中调用Django环境. import osif __name__ == '__main__': os.environ.setdefault("DJANGO_SETTING ...
- Java多线程之控制执行顺序
概念: 多线程在并发环境中的正常执行顺序是随机无序的,并不能按照期盼的结果输出. 因为启动一个线程时,线程并不会立即执行,而是等待CPU的资源调度,CPU能调度哪个线程,是通过多种复杂的算法计算而来. ...