Unity3D学习笔记(五):坐标系、向量、3D数学
Unity复习
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- public class Question : MonoBehaviour {
- int a = ;
- Transform target;
- #region Question
- // 1、有哪些事件函数
- // Awake Start Update FixedUpdate LateUpdate OnEnable OnDisable OnDestroy OnGUI
- // OnCollisionEnter(Collision col) OnCollisionStay(Collision col) OnCollisionExit(Collision col)
- // OnTriggerEnter(Collider o) OnTriggerStay(Collider o) OnTriggerExit(Collider o)
- // 2、如何查找场景中游戏物体
- // GameObject obj = GameObject.Find("ObjName/ChildObjName")
- // 3、将自己设置为 找到的那个游戏物体的 父物体
- // obj.transform.parent = transform;
- // 4、挂载脚本的必要条件
- // 继承MonoBehaviour 、所有的代码无错误、文件名和类名一致、不能是抽象类
- // 5、物体的移动、旋转
- // 改变位置的移动
- // 1)、往世界的前方移动
- // transform.position += Vector3.forward;
- // 2)、往自身的前方移动
- // transform.position += transform.forward;
- // API移动
- // 1)、往世界的前方移动
- // transform.Translate(Vector3.forward, Space.World);
- // 2)、往自身的前方移动
- // transform.Translate(transform.forward, Space.World);
- // transform.Translate(Vector3.forward, Space.Self);
- // 使物体旋转 (自身)
- // 改变欧拉角的形式 来旋转
- // 世界的Y轴转
- // transform.eulerAngles += Vector3.up;
- // 自身的Y轴转
- // transform.eulerAngles += transform.up;
- // API
- // 世界的Y轴转
- // transform.Rotate(Vector3.up, Space.World)
- // 自身的Y轴转
- // transform.Rotate(transform.up, Space.World)
- // transform.Rotate(Vector3.up)
- // 使物体旋转 (绕其他物体)
- // GameObjet obj; (被绕的游戏物体)
- // 绕Y轴转(世界的)
- // transform.RotateAround(obj.transform.position, Vector3.up, 1);
- // 绕Y轴转(被绕的游戏物体)
- // transform.RotateAround(obj.transform.position, obj.transform.up, 1);
- // 6、如何生成、销毁游戏物体?
- // 生成(需要有预制体) BulletPrefab
- // public GameObject bulletPrefab; // 引用资源中的预制体
- // Transform spawnTrans; // 生成的位置及方位
- // Instantiate(bulletPrefab, spawnTrans.position /*位置 Vector3*/, Quaternion.identity /*spawnTrans.rotation*/ /*方位 Quaternion*/)
- // 销毁
- // 不要循环调用
- // 销毁当前的脚本组件
- // 销毁的时机: 在 Update 之后,渲染之前
- // Destroy(this);
- // 销毁当前的游戏物体
- // Destroy(gameObject);
- // 5秒以后销毁 当前脚本组件
- // Destroy(this, 5);
- // 7、物体之间发生碰撞的必要条件
- // 1)、双方都必须有碰撞器 2)、至少有一个非休眠的刚体 3)、如果一方是运动学刚体,另一个必须是非运动学刚体
- // 触发的事件函数 双方的
- // OnCollisionEnter(Collision col) OnCollisionStay(Collision col) OnCollisionExit(Collision col)
- // 如果勾选了 IsTrigger 会? 在所有的 Collider上
- // 会变成触发器,不会再有碰撞效果了
- // 什么情况下会触发 触发器
- // 1)双方都有碰撞器,至少有一方勾选了IsTrigger 2)、至少有一个有刚体
- // 触发的事件函数 双方的
- // OnTriggerEnter(Collider o) OnTriggerStay(Collider o) OnTriggerExit(Collider o)
- #endregion
- // Use this for initialization
- void Start () {
- Destroy(this);
- a = ;
- }
- // Update is called once per frame
- void Update () {
- }
- }
发生碰撞(触发)的必要条件


简单写法,用normalized函数



- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- using UnityEngine.SceneManagement; // 场景管理
- public class MenuControl : MonoBehaviour {
- public float w = ;
- public float h = ;
- // Use this for initialization
- void Start () {
- }
- // Update is called once per frame
- void Update () {
- }
- void OnGUI()
- {
- // w h Sceen.Width Sceen.Height x = (Screen.width - w)/2 y = (Screen.height - h)/2
- float x = (Screen.width - w) / ;
- float y = (Screen.height - h) / ;
- if (GUI.Button(new Rect(x, y, w, h), "开 始 游 戏"))
- {
- // 切换到 游戏场景 同步加载(当前场景会卡主) 异步加载(不会阻塞当前场景的运行)
- SceneManager.LoadScene("GameScene");//可以添加Build Setting里的字符串
- }
- if(GUI.Button(new Rect(x, y + * h, w, h), "退 出 游 戏"))
- {
- Application.Quit(); // 退出游戏 发布以后才有作用 编辑器状态无效
- }
- }
- }
Unity3D学习笔记(五):坐标系、向量、3D数学的更多相关文章
- Directx11学习笔记【九】 3D渲染管线
原文:Directx11学习笔记[九] 3D渲染管线 原文地址:http://blog.csdn.net/bonchoix/article/details/8298116 3D图形学研究的基本内容,即 ...
- Unity3D学习笔记2——绘制一个带纹理的面
目录 1. 概述 2. 详论 2.1. 网格(Mesh) 2.1.1. 顶点 2.1.2. 顶点索引 2.2. 材质(Material) 2.2.1. 创建材质 2.2.2. 使用材质 2.3. 光照 ...
- Unity3D学习笔记3——Unity Shader的初步使用
目录 1. 概述 2. 详论 2.1. 创建材质 2.2. 着色器 2.2.1. 名称 2.2.2. 属性 2.2.3. SubShader 2.2.3.1. 标签(Tags) 2.2.3.2. 渲染 ...
- C#可扩展编程之MEF学习笔记(五):MEF高级进阶
好久没有写博客了,今天抽空继续写MEF系列的文章.有园友提出这种系列的文章要做个目录,看起来方便,所以就抽空做了一个,放到每篇文章的最后. 前面四篇讲了MEF的基础知识,学完了前四篇,MEF中比较常用 ...
- (转)Qt Model/View 学习笔记 (五)——View 类
Qt Model/View 学习笔记 (五) View 类 概念 在model/view架构中,view从model中获得数据项然后显示给用户.数据显示的方式不必与model提供的表示方式相同,可以与 ...
- java之jvm学习笔记五(实践写自己的类装载器)
java之jvm学习笔记五(实践写自己的类装载器) 课程源码:http://download.csdn.net/detail/yfqnihao/4866501 前面第三和第四节我们一直在强调一句话,类 ...
- Learning ROS for Robotics Programming Second Edition学习笔记(五) indigo computer vision
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...
- Typescript 学习笔记五:类
中文网:https://www.tslang.cn/ 官网:http://www.typescriptlang.org/ 目录: Typescript 学习笔记一:介绍.安装.编译 Typescrip ...
- ES6学习笔记<五> Module的操作——import、export、as
import export 这两个家伙对应的就是es6自己的 module功能. 我们之前写的Javascript一直都没有模块化的体系,无法将一个庞大的js工程拆分成一个个功能相对独立但相互依赖的小 ...
- muduo网络库学习笔记(五) 链接器Connector与监听器Acceptor
目录 muduo网络库学习笔记(五) 链接器Connector与监听器Acceptor Connector 系统函数connect 处理非阻塞connect的步骤: Connetor时序图 Accep ...
随机推荐
- mysql 数据表的增删改查 目录
mysql 表的增删改查 mysql 表的增删改查 修改表结构 mysql 复制表 mysql 删除表
- java项目连接jdbc报错:com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server
java项目连接jdbc报错:com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not creat ...
- 网站被XMR恶意挖矿
发现: 网站首页被恶意更改 网站的关键词和描述被恶意更改 服务器和只要访问此服务器上的网页cup 直线上升100% 排查代码发现js 文件被恶意更改,访问了挖矿网站 操作:删除js 里面的恶意代码,更 ...
- [LeetCode] 232. Implement Queue using Stacks_Easy tag: Design
Implement the following operations of a queue using stacks. push(x) -- Push element x to the back of ...
- Must be between v0 and v15, inclusive解决办法
invoke-static 改为invoke-static/range
- Git 全局设置
Git 全局设置: git config --global user.name "ASxx" git config --global user.email "123456 ...
- Linux系统——LNMP分离式部署
#### 安装nginx ```[root@localhost ~]# tar xf nginx-1.10.2.tar.gz -C /usr/src/[root@localhost ~]# cd /u ...
- Typecho博客让文章列表页只显示摘要的方法
在当前主题的 index.php 文件中找到代码 <?php $this->content('阅读剩余部分...'); ?> 将其替换为 <?php $this->exc ...
- iqueryable lambda表达式
1.groupby 1.group by var newLaborDtos = laborDtos.GroupBy(s => new { s.FinancingAmount, s.Company ...
- PKU2418_树种统计(map应用||Trie树)
Description Hardwoods are the botanical group of trees that have broad leaves, produce a fruit or nu ...