重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
unity3d:Translate的使用与物体运动
创新互联建站于2013年成立,是专业互联网技术服务公司,拥有项目网站建设、做网站网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元青县做网站,已为上家服务,为青县各地企业和个人服务,联系电话:13518219792首先我们来看看场景的搭建:建一个立方体,加一个点光源。我们要实现的就是让场景中的立方体延X轴嗖嗖的移动。那么我们在Project新建一个js脚本Creat->Javascript。function Update () { transform.Translate(Vector3(1,0,0)); }然后将js文件拖到Hierarchy面板的立方体上实现绑定。运行一下,我们可以看到,立方体不见了。修改代码让它慢一点。
function Update () { transform.Translate(Vector3(1,0,0)*Time.deltaTime); }运行一下,慢慢的移动了。这是怎么回事呢。接下来我们一步一步的分解代码。首先Update(),一直在用都明白怎么回事。
transform:场景中的每一个对象都有一个transform,用来储存和控制物体的位置,旋转和缩放。
Translate:是transform的函数,用来移动物体。它接受一个三维向量(Vector3)参数来移动。其实它还有第二个参数,就是按照自身坐标轴移动还是按照世界坐标轴移动。这里暂且不表。Unity3D教程手册
Vector3:表示3D的向量和点。3个参数分别代表了向量x,y,z。
transform.Translate(Vector3(1,0,0));这句代码的意思就是,让被绑定的物体,也就是场景中的立方体,向x轴的方向移动1个单位.
Time.deltaTime:是一个时间增量,我想应该是这一帧的时间。像flash中的一秒30帧,每帧多少秒之类的。在这个程序中它的值是0.016左右。原本移动一个单位,现在乘以0.016,那肯定慢了。也就是说,它的作用其实就是减慢移动的速度。
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。