Unity3D笔记 英保通七 物理引擎】的更多相关文章

给球体添加刚体RigidBody和球体碰撞器Sphere Collider 效果: OnTriggerEnter() 代码 using UnityEngine; using System.Collections; public class trigger : MonoBehaviour { void OnTriggerEnter(Collider collider) { Destroy(collider.gameObject); } } 效果: 碰撞器: OnCollisonEnter(Coll…
一.角色控制器 U3D有两种角色控制方式:Rigidbody刚体.角色控制器组件(胶囊体组件) 面试的题目中经常会遇到这个问题: CharacterController和Rigidbody的区别? 这样回答:CharacterController自带胶囊碰撞器,里面包含有刚体的属性:Rigidbody就是刚体,使物体带有刚体的特征. 角色控制器组件常用于第一人称和第三人称的角色控制,使用角色控制器可以使人形角色实现移动.滑动.上下楼梯等动作,不是纯物理的,但是含有胶囊碰撞体,因此有碰撞检测.第一…
一.材质和着色器 1.材质和着色器紧密的联系,其中材质相当于是一个框架,而着色器就是框架中中的内容.在材质框架中可以选择不同的Shader并调节不同的 属性 Material和Physic Material区别?PhysicMaterial 物理材质:物理材质描述,如何处理物体碰撞(摩擦,弹性).Material 材质(材质类)为了获得一个对象使用的材质,可以使用 Renderer.material 属性: 导入的资源Material:Normal map (法线贴图),新建的Material材…
一.关节1.1..链条关节 Hinge joint :他可以模拟两个物体间用一根链条连接在一起的情况,能保持两个物体在一个固定距离内部相互移动而不产生作用力,但是达到固定距离后就会产生拉力 1.2..固定关节:fixed joint:可以把两个刚体连接起来,使其中一个刚体随另一个刚体一起运动,从而达到一个整体效果. 1.2.1.作为一个整体 1.2.2.有断开的效果Break Force 和扭曲力Break Torque 1.3.弹簧关节Spring Joint:模拟两个物体间有一根弹簧,大于或…
一.访问另一个物体 1.代码中定义一个public的物体 例如:var target:Transform; 在面板上直接拖拽一个物体赋值给target 2.通过GameObject.Find("物体名称") 3.通过Tag 代码:GameObject.FindWithTag("tag"); 二.Time用法 2.1 Time.deltaTime 以秒计算,完成最后一帧的时间(只读). 2.1.1.transform.Rotate(0,5*Time.deltaTime…
射线碰撞检测可以用来检测方向和距离: 通过Physics.RayCast光线投射来实现:常用于射击利用发射的射线来判断.还有对战中刀剑交战中.. 一.要涉及到RayCast和RayCastHit 1.1.光线投射:Physics.RayCast() static function Raycast (origin : Vector3, direction : Vector3, distance : float = Mathf.Infinity, layerMask : int = kDefault…
Unity中创建树:可以直接通过程序自动来创建树木还可以手动创建树木(本质上在我看来就是给程序自动创建的树动动”小手术“) 一.程序自动创建树木 3.1.层次视图中创建:一个平行光.摄像机.地.数并且导入资源 3.2.创建数Tree只有一个主干.选择树木的主干先添加枝干再添加树叶,多少自己决定.只要你觉得像个树就好. 3.3.添加树木的材质并调节相关属性 3.4.最后的效果 二.手动创建数 2.1.同上创建一个树Tree.并手动调节树干 这时候树的一些属性会失效 2.2.创建树枝.树叶 2.2.…
一.如何使用GUI事件来检测鼠标是否按下的事件: 获取当前事件:var e:Event=Event.current: using UnityEngine; using System.Collections; public class BtnEvent : MonoBehaviour { // Use this for initialization void Start() { } // Update is called once per frame void Update() { } void…
Input: 1.使用这个类能够读取输入管理器设置的按键,以及访问移动设备的多点触控或加速感应数据.想要读取轴向使用Input.GetAxis方法获取下列默认轴: "Horizontal" 和"Vertical" 映射于控制杆.A.W.S.D和箭头键(方向键). 2."Mouse X" 和"Mouse Y" 映射于鼠标,"Fire1", "Fire2" "Fire3"…
一.脚本编写 1.1.同一类型的方法JS和C#的书写方式却不一样主要还是语法,在工程中创建一个Cube 分别把JSTest.js和CSharp.cs 添加到Cube中 JSTest.js #pragma strict private var i:int; private var f:float; function Start () { } function Update () { } function SetInt(_i:int) { i=_i; } function SetFloat(_f:f…