怎么规划一个零基础学习Unity3D的“方法”或者“流程”?
链接:https://www.zhihu.com/question/35542990/answer/182682341
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
学习分为4个阶段
一、朦胧期
这个阶段你主要是在朦胧中度过,通常脑子里想的就是,卧槽,这特么是啥?卧槽,这特么又是啥?你看着命令行里面的HelloWorld静静的发呆,第一次能完全打出来的时候脸上会露出 “四国以 ”的表情。这个阶段你需要做的就是和命令行和编译死磕,不断的做练习,将你在视频上看到的那些小例子统统用代码实现,Siki的C#基础入门视频有部分的练习题,但是还远远不够,有的时候你想到一些问题的时候,也应该习惯性的联系到代码上面,例如说用代码做一个电视遥控器的按键效果,自己给自己架设问题,尝试去解决。这个阶段是整体步骤中最长的一个。C#是驾驭Unity的缰绳,打基础这项对于零基础学习的同学是至关重要的。
推荐教程: Siki C#教学视频
二、学步期
有了C#的基础能在后面的引擎学习中有什么用处呢?答:用处不大。那为什么还要那么注重C#基础语言呢,因为语言是贯穿整个引擎一生的必要之物,但是在引擎学习中,主要学习的是引擎中组件和相关功能的用法,和处理问题的思维。比如说,更改一张Image的Color,你要做的首先是要获取到Image,然后通过更改其color属性为自己想要的颜色。说起来很简单但是刚开始进行操作的时候,连怎么获取都是通过在Inspector面板里直接拖取进行获得,此时多学习一些相关的API就完全有必要了。另外,通过几个简单的Demo也能够让自己对这个引擎的运作更感兴趣(或者摧毁掉这份兴趣),建立起后面的学习信心。
推荐教程:飞机大战,噩梦射手
PS:这里要注意的是一定要养成一个写笔记的习惯,笔记可以边写边记,也可以完成项目之后进行总结,但是一定要去写,写关于某个组件的使用,或者是问题的处理逻辑,对后面举一反三能力的培养至关重要。
三、开化期
经过简单的几个小Demo,你已经能够正常的GetComponent或者调用一些简单的API 了。但是你的手段仍然略显稚嫩,而这个阶段所需要的就是对更多的组件进行认识,同事编写一些难度高一些的逻辑问题,在潜行里面,有一段关于机器人AI算法的部分,当时在写这里的时候,异常的痛苦,并且在写完之后迅速的就忘了视频上所讲的一些细节。怎么办??重新写,当时我的做法是把脚本删掉,按照笔记上整理的思路,重新把脚本写出来。虽然可能对当时的我来说有些困难。但是坚持下来发现,效果很好,最起码相关的组件和思路能够记得牢固。我甚至现在还能记得当时相关计算部分的细节。另外,在这个阶段,你能更多的接触到关于Bug的类型。空指针、索引越界等等等等。处理bug的经验才是程序员最宝贵的财富(大雾)。而之前所说过关于思路的整理,对于项目的帮助也是非常重要的一部分,记得在潜行里有一个关于呼吸灯(红灯闪烁)的效果,那是第一次接触到Lerp,后面只要是遇到关于逐渐、跟随等字眼,第一个想到的自然就是Lerp
推荐教程:炉石传说、潜行、逃离地球、Ugui基础
四、入门期
这个阶段你已经有了一定的积累,学会了不少的API,也不是原来的小白了,现在你要做什么呢?现在要做的就是做一个更大的项目来充实自己,不断的强化,多方面,无死角的折磨自己,让更多的bug对自己进行轰炸,让自己的精神受到折磨,因为自己很小的疏忽导致整个项目崩溃,从而再来一遍。如果说bug没有折磨疯你,大量的UI没有把你的眼睛弄花,对狗屁算法能够无所畏惧,大量的组件功能也没有把你击垮,那么恭喜你,终于迈出了最后一个阶段,你,终于入门了,欢迎来到Unity的世界,我的朋友。
推荐教程:火炬之光,泰斗破坏神
总结:从零开始学习Unity本来就是一件非常艰苦的事情,大致归结下来的流程就是
1.C#基础,小的练习和训练。
2.Unity基础,包括引擎知识和组件运用
3.Unity提升,基础的算法和大量API,以及Bug修正
4.Unity入门,积累,积累,积累。Bug,Bug,Bug。
之所以说到帖子结尾才是刚刚入门,那是因为之前无论写了多少代码,看了所少视频都是有一定模板去让你跟随,去模仿的,但是进了公司之后,发现之前写的代码根本没有什么难度。而且对你的要求也是更为独立的去完成某一模块,你只能是不断的积累,去修正,去学习。只有日复一日的去写代码才能提高到更高的高度,卖油翁那句话怎么说来着?
无他,唯手熟尔。
怎么规划一个零基础学习Unity3D的“方法”或者“流程”?的更多相关文章
- 跟我从零基础学习Unity3D开发--NGUI入门基础
英雄联盟(撸啊撸) QQ飞车 魔兽世界等等相信大家都玩过游戏吧,玩过那UI知道是什么吧?UI可能说得有点专业的话那么游戏中那些属性面板例如: 现在对UI有一定认识了吧!回想一下您玩过的游戏就一定知道什 ...
- 跟我从零基础学习Unity3D开发--U3d脚本注意事项及两个基本函数的简单介绍
经过上一篇的学习,我相信开发环境您已经搭好了,如果还没有搭好可以百度一下. 今天主要讲的有以下几点: 第一:Unity3D中的C#脚本与.net中的C#写法的区别 1.Unity3D C#脚本不支持命 ...
- 跟我从零基础学习Unity3D开发--初识U3D
首先声明,我也是才开始学,把自己学的记录下来也供一些想要学习的朋友参考,一起努力.希望大家能给我指点一下.切莫喷我. 什么是Unity3d呢? 百度百科------Unity是由Unity Techn ...
- 跟我从零基础学习Unity3D开发--资源打包篇(AssetBundle)
好久没更新了,一直在加班敢项目进度.这里和关注我的博客的童鞋表示一下歉意!这里有我录的Unity3D从零开始的视频教程大家可以关注一下:http://www.imooc.com/view/555 视 ...
- 跟我从零基础学习Unity3D开发--Unity3D开发必备神器(Visual Studio Tools for Unity)
开发Unity3D程序你用的什么IDE呢? 1.MonoDevelop 2.VS 可能你的回答是这样的,我用的vs写代码MonoDevelop来做调试.这时有同学就会反驳了傻X不知道用unityVS吗 ...
- 零基础学习python_魔法方法(41-48课)(迭代器)
接下来这个为啥要叫魔法方法呢,额,这个嘛我是跟小甲鱼的视频取的名字一样的,因为会讲比较多杂的东西,有... 魔法方法详细阅读地址:http://bbs.fishc.com/thread-48793-1 ...
- [iOS]关于零基础学习iOS开发的学习方法总结
关于零基础学习iOS开发的学习方法总结 最近很多零基础来参加蓝鸥培训的学生经常会问到一些学习方法的问题,就如下我自己见过的好的学习方法一起讨论一下. 蓝鸥iOS开发技术的学习路线图 程序员的主要工作是 ...
- 如何从零基础学习VR
转载请声明转载地址:http://www.cnblogs.com/Rodolfo/,违者必究. 近期很多搞技术的朋友问我,如何步入VR的圈子?如何从零基础系统性的学习VR技术? 本人将于2017年1月 ...
- salesforce 零基础学习(五十二)Trigger使用篇(二)
第十七篇的Trigger用法为通过Handler方式实现Trigger的封装,此种好处是一个Handler对应一个sObject,使本该在Trigger中写的代码分到Handler中,代码更加清晰. ...
随机推荐
- time 类
timeStamp = time.time() #获取当前的时间戳 print(timeStamp) # 1555555453.6283455 timeTuple = time.localtime(t ...
- ElementUI的使用
一.安装 1.安装 在项目目录下执行 npm i element-ui -S 2.引入 在 main.js 中写入以下内容: import ElementUI from 'element-ui'; i ...
- redis数据备份还原
安装ruby yum install ruby rubygems ruby-devel -y 安装rvm gpg2 --keyserver hkp://pool.sks-keyservers.net ...
- vue-cli 新手 搭建项目 一
新手入坑vue 搭建项目 一.安装 vue-cli 1.打开cmd 输入命令(已自行安装好npm node等) npm install --global vue-cli (全局安装) 二.创建项 ...
- Perl 运算符
Perl 运算符 运算符是一种告诉编译器执行特定的数学或逻辑操作的符号,如: 3+2=5. Perl 语言内置了丰富的运算符,我们来看下常用的几种: 算术运算符 比较运算符 逻辑运算符 赋值运算符 位 ...
- Delphi exe实例之间传递cmd参数
{Unit1.pas} 通过这个单元的Button,调用另一个实例: procedure TForm1.Button1Click(Sender: TObject); begin ShellExecut ...
- 牛客多校第八场 B Beauty Values 水题
题意: 给定一个序列,问你子区间中不同数字数量,在所有子区间中之和为多少. 题解: 统计每个数字在多少个区间中出现即可.对于每个数字,直接枚举左右端点. 注意去重,因此要记录每个数字上一次出现在哪里, ...
- Spring-Security (学习记录六)--采用ehcache缓存UserDetails
目录 1. spring-security提供了缓存UserDetails的UserDetailsService实现类. 2. 通过配置来完成缓存 UserDetails (使用ehcache) 3. ...
- CodeForces-1244C-The Football Season-思维
The football season has just ended in Berland. According to the rules of Berland football, each matc ...
- 读取.properties配置文件(转载)
读取.properties 文件 配置文件的一种,内容以键值对的形式存在,且每个键值对独占一行.#号作为行注释的起始标志,中文注释会自动进行unicode编码.示例: # ip and port of ...