Unity3D 游戏引擎之脚本实现模型的平移与旋转
这一章MOMO带大家讨论一下Unity3D中使用的脚本,脚本的最大特点就是用少量的代码实现繁多的功能,避免大量的代码。Untiy3D这一块可以使用脚本做很多东西,那么我们开始学习脚本吧。
有关Unity3D 脚本的API所有文档盆友们都可以去这里查阅。
脚本描述
Scripting inside Unity consists of attaching custom script objects called behaviours to game objects. Different functions inside the script objects are called on certain events. The most used ones being the following:
Update:
This function is called before rendering a frame. This is where most game behaviour code goes, except physics code.
FixedUpdate:
This function is called once every physics time step. This is the place to do physics-based game behaviour.
Code outside any function:
Code outside functions is run when the object is loaded. This can be used to initialise the state of the script.
Note: Sections of this document assume you are using Javascript, but see Writing scripts in C# & Boo for information about how to use C# or Boo scripts.
大概意思是介绍三个重要的脚本函数
Update:这个函数在渲染帧之前被调用,大部分的游戏行为代码都在这里执行,除 物理代码。
FixedUpdate:这个函数在每进行一次物理时间步调时被调用,它是基于物理的游戏行为。
Code outside any function:这类函数在对象加载时被调用,它可以用来脚本的初始化工作。
本章我们着重讨论Update 这个函数,创建脚本与绑定脚本的方法在第二章中已经介绍过了不会的盆友请去那里阅读。虽然官方推荐脚本使用JavaScript编辑,但是其实C#更符合Unity3D的编程思想,推荐新人先使用JavaScript,然后在学习C#,因为JavaScript更容易上手一些。
在三维世界中创建两个矩形,然后在添加两个脚本分别绑定在这两个箱子上,脚本的名称暂时命名为 js0 、js1。
在Project 页面中打开刚刚创建的js0,发现Unity3D 已经将Update 函数添加在脚本中了。
模型的移动
Translate方法中的三个参数分别标示,模型在三维世界中X 、Y、Z 轴移动的单位距离。
执行代码发现参数为1速度居然移动的着么快,怎么能修改移动的速度呢?
Time.deltaTime:标示上一次调用Update一秒为标示每帧执行所消耗的时间。
有了这个参数,我们就可以根据它修改方向移动的速度了。
模型的平移可以选择一个参照物,下面代码第二个参数设置模型移动参照物,这里设置成摄像机。那么模型将以相对与摄像机进行移动。
模型的旋转
Rotate方法中的三个参数分别标示,模型在三维世界中X 、Y、Z 轴旋转的单位距离。
模型的旋转可以选择一个参照物,下面代码第二个参数设置模型移动参照物,这里设置成3D世界。那么模型将以相对与整个3D世界进行旋转。
如下图所示,给出一个小例子,在脚本中移动箱子的坐标,在屏幕中记录模型移动的位置,并且显示在游戏视图中。效果很不错吧,嘻嘻~~
完整代码
Unity3D 的世界中脚本还可以做很多事情,以后我在慢慢向各位道来~ 欢迎各位盆友可以和MOMO一起讨论Unity3D游戏开发,哇咔咔~~~
分享到:
相关推荐
。
。
unity 3D实现模型的缩放和5旋转功能
Unity 3D游戏引擎脚本入门,可以看教程结合图解一步一步来建构自己的游戏,能够让新手尽快入门,即使没有编程基础也可以轻松开发游戏,值得好好学习一下。
Unity3d 摄像机控制源码(平移,旋转,缩放)
在Unity3D中实现克隆脚本 Posted on 2013年03月10日 by U3d / Unity3D脚本/插件/被围观 235 次 在Unity中实现克
实现对Unity3d相机使用方向键盘控制,实现平移功能。
在这个脚本里,只要将代码里的Gameobject赋值给物体,就可以实现对模型的旋转、缩放等
本文实例为大家分享了Unity3D实现物体旋转缩放移动的具体代码,供大家参考,具体内容如下 由于项目运行在安卓上,运用到了插件,比较麻烦。你们可以在触发条件上进行修改,不用插件也可以。 1.下载FingerGestures ...
游戏编程的脚本语言入门,简单易学,对于初学者而言,完全够用
Unity3D脚本:鼠标中键平移的核心代码 Posted on 2013年01月27日 by U3d / Unity3D脚本/插件/被围观 271 次 代码赋给
Unity3D脚本:更改脚本和类名,且不破坏现有脚本引用的方法 Posted on 2013年02月01日 by U3d / Unity3D脚本/插件/被围观
此文档包含如何学习在unity3d中导入模型和基本的脚本练习(如练习制作实现第一人称控制,手榴弹的投掷效果、实现门的动画及脚本控制和碰撞盒的使用)
Unity3D脚本:Unity3D游戏开发解决重复实例化脚本 Posted on 2013年01月22日 by U3d / Unity3D脚本/插件/被围观 2
在UI上 自由观察3D 模型,鼠标控制模型的旋转,缩放&& 触摸屏手势控制模型的旋转缩放控制;这里仅将控制代码挂载到相机上,通过对相机的控制来观察模型。本资源为最小展示单元,仅包含演示场景和1个控制脚本即可完成...
三本 Unity圣典之中文脚本手册3.42,Unity圣典 中文用户手册,Unity3D圣典中文脚本
//当controller处在空中间,grounded为false,即跳动和行走都无效///鼠标控制视角///// if (Input.GetMouseButt
Unity3D圣典中文脚本 Unity3D圣典中文脚本 Unity3D圣典中文脚本 Unity3D圣典中文脚本 Unity3D圣典中文脚本
Unity3d物体缩放旋转脚本 控制物体的放大缩小 限制在规定的角度内旋转 实现在屏幕上进行滑动对物体进行旋转 双指控制物体大小变化