去哪里看Unity3D微擎二次开发视频教程程

最近对Unity3d进行学习的过程中,发现unity不仅入门教程做的丰富,而且Script API文档也是看过的所有API文档中最清晰易用的。不得不说,这极大降低了入门unity3d的门槛。
Unity3d入门学习资料&&
& & Unity3d的学习首先从入手,如图1所示。
& & &Tutorial中最经典的demo便是Roll-A-Ball,直接看英文的视频讲解各种术语听起来有点头晕,有些东西也讲得太啰嗦。不过没关系,下面的这个unity圣典的中文教程绝对能满足你对unity开发入门的基本需求,作者逻辑清晰,讲解细致,不得不说入门视频首选:。
& & 每个tutorial中配套有相关的开发视频,并且能找到相关demo源码。在对unity3d的界面视窗和基本操作,以及对Scene、GameObject和component有基本了解之后,从demo源码入手学习是最快的,很容易加深对unity3d工程的理解,以及对Script
API document的熟悉。
Unity3d和Android的类比学习
& & 由于许多人有Android开发经验,Android与unity3d两者在设计上有诸多相似之处,下面以Android的角度来与unity3d进行类比学习,以加深对相关概念的理解。
一、坐标系:
& & Unity3d的三维坐标系,再加上不同的参考基准,相比Android的二维坐标系要复杂很多:
& & 1.在处理GameObject的transform相关属性,如position、rotation和scale时,假如直接用 鼠标放缩移动工具,三维坐标系拖动起来太难控制了。最方便精准的控制方式为两种:第一种是直接设定属性值;第二种便是shift+点击单个坐标轴,将三维坐标转到两位坐标进行控制。
& & 2.另外针对不同参考基准,unity坐标系划分为几种:
& & 1)世界坐标系:以描述所有场景内所有物体作为基准
& & 2)&局部坐标系:GameObject之间在位置上可构成父子关系,以父GameObject为基准
& & 3)&相机坐标系:相机是最终Game视角的真正观察者,以相机为基准,观察整个场景中 & &GameObject的立体位置前后和遮挡关系。
& &4)&屏幕坐标系:很简单,就是把屏幕当作二维坐标,描述像素在屏幕中的位置。
& & 其中Transform提供了各坐标系相互转换的接口。
& & 3.向量和矩阵运算
& & 二维空间中,单纯对x和y坐标进行操作,书写容易。但三维空间,向量和矩阵的运算形式的简洁性和高效性便体现出来。向量主要用于坐标轴的控制,矩阵对阵列数据的放缩、旋转和平移,以前学的《矩阵分析》理论便派上用场啦。&
二、界面布局和控件的ID引用
下面从unity3d的GameObject引用和GameObject中的组件引用分别进行叙述。
1.unity3d的GameObject引用
& & 在界面布局元素中,Android叫控件,unity3d叫GameObject(游戏对象)。Android的的布局文件中定义了所需要的控件,在Java代码中通过查找id(findViewById)进行引用和控制。
& & Unity3d的布局定义在scene文件中,并且在Hierarchy窗口中展现了所有GameObject列表。GameObject通过在inspector窗口中添加脚本组件来实现具体的逻辑控制。假如脚本中要对另外一个GameObject进行控制,比如roll-a-ball游戏中,球撞完所有立方体之后,需要触发一个文本UI的显示,显示为“You
win!”,就需要球所在的游戏对象Player的脚本类中定义一个public变量:&
public GUIText winT
& & 随后在player的inspector面板中指定wintext对应的&GUI text对象,如图2所示。便可在脚本代码中实现修改GUIText对象的显示逻辑:winText.text
= “You win!”&& &&
& & 随后在player的inspector面板中指定wintext对应的&GUI text对象,如图2所示。便可在脚本代码中实现修改GUIText对象的显示逻辑:winText.text
= “You win!”&& &&
& &另一种引用的方法是设置为GameObject设置tag,通过GameObject.FindWithTag(&tag&)获取到需要引用的GameObject。下一段内容中会对此方法进行介绍。
2.引用其他GameObject的Component(组件)
& & 假如一个脚本组件想调用另一个GameObject的脚本组件中的public方法,怎么办呢?这种应用场景出现在roll-a-ball游戏中的球体撞击到立方体时,立方体需要调用球体绑定的脚本中的addScore函数,对分数显示GUI Text进行修改,实时更新分数。
& & 绑定到GameObject的脚本组件,本身是一个类文件,随着Scene的周期开始和结束,创建和销毁自己的实例。在整个内存空间中,应该是属于单例的,但实际上并不写成单例模式,那怎么获取其中的实例对象呢?
& & 其实原理很简单,直接通过GameObject来获取其绑定的脚本即可,下面便是具体方法:
& & 1) GameObject设置tag,一个tag便能分类一个或一类的GameObject,名字可以自定义,如图3所示。
& & & &2)&随后在脚本中通过tag获取到具体的GameObject
&&&& GameObject gameControllerObject = GameObject.FindWithTag(&pickup&);
&&&& if (gameControllerObject != null)
&&&&&&&& gameController = gameControllerObject.GetComponent &GameController&();
&&&& } else {
&&&&&&&& Debug.LogError(&Cannot find 'GameController' script&, transform);
& & 3)&从步骤中获取的GameObject实例,获取其脚本组件,并对其Public方法进行调用:
& &PlayController gameC
& &gameController = gameControllerObject.GetComponent ();
& &gameController.AddScore(scoreValue);
&&三、生命周期
& & Android中Service、Activity都有自己的生命周期,也直接决定了不同函数的调用顺序。unity也是如此,unity脚本有自己固定的生命周期函数,常见函数如下:
& &执行顺序为:awake—&start—&update
& &更多函数的执行顺序如图4所示,欲知更多可参考这篇文章:。
& & & & & & & & & & & & & & & & & & & & & & & & &图4
四、界面跳转
& & Android一个完整的界面称之为Activity,通过startActivity来启动一个新的Activity实现跳转。但在Unity中称之为Scene(场景或关卡),假如只有一个scene,直接切换相机视角便可实现画面变化。但是如何实现不同scene的切换和跳转呢?
& & 在Scenes文件夹中创建不同的scene文件,File-&Build Settings,可以看到图5界面。若创建的scene无法展现出来,首先确保scene文件是有内容的,然后点击“Add
Open Scenes”,就可以实时加载进来。
& & & & & & & & & & & & & & & & & & & & & & 图5
& & 每一个scene文件都会对应一个level,要跳转到某个scene有两种方法:scene文件名和index level。下面是实现不同scene文件循环跳转的方法:
using UnityE
using System.Collections;
using UnityEngine.SceneManagement;
public class SwitchScence : MonoBehaviour {
&&& public int scence_
&&& private int delay_cnt = 0;
&&&&&& void Start () {
&&&&&& }&&&&
&&&&&& void Update () {
&&&&&&& delay_cnt ++;
&&&&&&& if (delay_cnt == 100) {
&&&&&&&&&&& SceneManager.LoadScene(scence_level);
&&&&&&&&&&& delay_cnt = 0;
&&&&&&& }&&&&&&&
& & &在Unity5.3中只要调用:SceneManager.LoadScene(scence_level),便可跳转到指定level的scene。
本文已收录于以下专栏:
相关文章推荐
使用Unity开发GearVR应用
上一章我们介绍了如何运用Unity3D开发Oculus Rift应用,当然,这个便宜且强大的游戏引擎也可以用于GearVR的应用开发,这时我们需要用到...
unity3d Survival Shooter官方教程学习笔记,更新中。
转自:.cn/s/blog_7c336a8301013son.html
我一直向所有想做游戏的朋友推荐Unity3D,为什么呢?首先是因为专业,Unity3D...
***********************项目源码********************************
2. 沉睡缤纷乐
Cardboard sdk VR开发
C#开发Unity游戏教程之Unity中方法的参数
很多同学用到这样方法导出时无法实现操作数据库,由于U3D对dll支持并不是很完美,这里给出一个交给web端来处理的详细教程可以解决各个平台操作mssql的问题。php、mysql等同理
接下来我们通...
1. 教程目的
如果你刚刚接触Unity,这个将是你阅读的第一个教程.这将讲解Unity的界面和如何在三维空间中创建
基本的游戏对象.
为了说明Unity界面的要素,我们将创建一...
增强现实(AR)在国内也兴起有一段时间了,做了一年的AR开发,真心觉得用高通的那一套要实现最基本的功能很简单,当然要做出很棒的AR,仍需同志们努力啊。在网上看了一些别人写的教程,说实话,虎头蛇尾,可能...
视频: Unity3D 公开课001__引擎综述 (康托耶夫)
/v_show/id_XMzQxOTU3NTY4.html
视频: Unit...
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)Unity3D游戏项目实战教程
授课讲师:
软件版本:
Unity3D 4.3.4英文版
教程程度:
初级→中级
所需基础:
Unity3D游戏制作入门教程
交流提问:
适合人群:
游戏开发爱好者
相关素材:
课程光盘:
501 29281 18212 15223 14480 21191 8193 467 23255 14814 10649 6637 8567 5050 5409 6578 4924 4799 4515 3797 4314 4764 8362 2694 1879 1596 1727 1848 1521 1713
论坛最新主题
您可能感兴趣的课程
针对全国计算机等级考试二级的一套精品视频教程
从基础开始学,结合大量实例讲解,使学员使用易语言开发软件。
炙手可热的游戏开发工具,教大家运用Unity进行简单的游戏开发。
塔防类3D游戏开发过程入手,学习资源整合,程序设计并最终发布游戏。
赞助商链接
兴趣圈成员Unity3D入门到精通视频教程(真实中文版)
- 爱酷学习网,免费高清视频教程在线观看
爱酷学习网
Begin to Learn
Descritpion
Unity是由Unity Technologies开发的一个让玩家轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。Unity类似于Director,Blender game engine, Virtools 或 Torque Game Builder等利用交互的图型化开发环境为首要方式的软件其编辑器运行在Windows 和Mac OS X下,可发布游戏至Windows、Mac、Wii、iPhone和Android平台。也可以利用Unity web player插件发布网页游戏手机游戏,支持Mac 和Windows的网页浏览。它的网页播放器也被Mac widgets所支持
Update Completed
请输入正确的邮件(格式:xxx@xxx.xx)
必须填本条信息!Unity3D虚拟现实游戏开发视频教程那里可以找的到好的呢? - 知乎15被浏览861分享邀请回答0添加评论分享收藏感谢收起0添加评论分享收藏感谢收起课程加载中...}

我要回帖

更多关于 ios开发视频教程 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信