关于Unity3D的一些笔试题(4)

这篇博客介绍了Unity3D的光照模型,包括环境光、自发光、高光和漫反射。讨论了游戏对象从本地坐标系到屏幕坐标的变换过程,并阐述了实现磁铁效果的步骤。此外,还涉及向量的点积和叉积在游戏中的应用,如判断目标方位和计算角度。同时,解释了不同类型的碰撞器性能开销和静态成员与实例成员的区别。最后,提到了Unity中的渲染管道概念以及NGUI的内置事件函数和Shader的分类。
摘要由CSDN通过智能技术生成

1、Unity四种标准的光照模型是什么,以及高光模型的两个公式是什么

  环境光、自发光、高光、漫反射    Lambert:C(diffuse)=C(light)*m*max(0,N*L)  Phong: 


2、一个游戏对象最终渲染到屏幕上,经过那几个坐标变换

   本地坐标系--世界--》视野----》裁剪--》屏幕DirectX windows屏幕坐标系 左下角(0,0) OpenGL(右下角)


3、如何实现磁铁效果?比如酷跑游戏中,获得磁铁道具后,自动吸附附近金币的效果。

获得磁铁效果后,主要流程可以分为3步:

首先判断金币是否进入磁铁有效范围(圆半径,距离,矩形,collider触发器等方式都可以)接着可以使用差值运算方法,Lerp方法或ITween等插件或者类似方法对金币做一个缓动效果吸附的动画,最后判断动画到达目标点后(碰撞器,触发器,计时等)进行销毁加分等处理即可。

①在玩家身上相同的坐标位置创建一个空的gameobject作为自物体,添加圆形或者球形碰撞器(根据实际要求2D或者3D)来选择,勾选istrigger作为触发器,触发器的范围即为磁铁吸附范围,添加刚体,取消勾选useGravity,gameobject.setActive(false);

②当玩家获得磁铁道具后,控制该gameobject.setActive(true);

③在金币上挂载脚本:


4

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值