4.19 unity 3d 测试题

2017-04-19  本文已影响41人  胤醚貔貅

1.ScreenToViewportPoint,WorldToViewportPoint,ViewportToWorldPoint的运用,实现一个简单的对三维中物体的拖拽移动效果

将屏幕坐标转换为视口坐标

Vector3 pos1 = Camera.main.ScreenToViewportPoint (Input.mousePosition);

//将三维物体的世界坐标转换为视口坐标

Vector3 pos2=Camera.main.WorldToViewportPoint(target.position);

//赋值给一个新的变量

Vector3 pos=newVector3(pos1.x,pos1.y,pos2.z);

//将合成的视口坐标转换为世界坐标赋值给物体

target.position=Camera.main.ViewportToWorldPoint(pos);

2.Mesh Renderer组件从Mesh Filter组件中获得网格信息,并根据物体的Transform组件所定义的位置进行渲染。

3.Rigidbody包含Drag(阻力)属性,ChacractorController不包含Drag属性。

4.触发发生条件:二者都有碰撞器,至少有一个有刚体,至少一个勾选了is Trigger。

5.在Assets中,空的预设体是白色,非空为蓝色

6.Physical.RaycastAll( )产生一条射线,返回多个碰撞物体

   Physical.Raycast()产生一条射线,返回一个碰撞物体

7.使用刚体给物体添加速度和力时都不勾选运动学

8.添加了角色控制器的角色出现卡顿现象,需要调节的属性是Skin width

9.Transform.Find( )找到子物体,GameObject.Find( )只能找显示的物体

10.Vector3的Angle(Vector3 from, Vector3 to)返回值为float类型的值

     magnitude是Vector3用于获得向量长度的只读属性

11.AddForce  f*t=m*v

ForceMode.Acceleration  f*t=1*v;

ForceMode.Impulse瞬间力  f*1=m*v;

ForceMode.VelocityChange  f*1=1*v;

12.移动相机动作的函数:LateUpdate   通过划分脚本的执行顺序来防止相机跟随物体时发生抖动

上一篇下一篇

猜你喜欢

热点阅读