Unity3D 应该怎么去练习?

作者:siki老师 来源:知乎一、前言刚开始学习Unity3D的时候,明明已经认真的看着教程内容,自己动手做了一遍,但总是脑海里知识总是模模糊糊的,似会似不会。其实不止Unity3D,每一门编程语言的学习或者说具有丰富内容的技艺都是如此。我们只有通过不断的练习和使用来加深我们的Unity3D相关能力,让你真正的学会Unity3D。二、真会和假会什么是真会和假会?如果面对一个新项目,其中的知识模块你都已经学过,你经过对项目实现内容的了解后无法在你脑海里浮现完整流畅的开发过程,如将项目拆分为几个模块,使用什么框架,模块之间进行哪些互动,这个模块得做调整防止卡顿,这项功能该使用哪个类和方法,相关代码内容书写等等。这其中你都并未知晓,障碍过多导致你需要各种问人求答,大量搜寻资料,复制粘贴代码。就算你开发成功了,大多数时间也是用以苦思发呆,搜索问人,项目相关功能不健全,这是假会。反之如果面对一个新项目,其中的知识模块大多数已学过,你经过对项目实现内容的了解后在你脑海里浮现完整流畅的开发过程,可能有较少不懂的内容需要进一步探究,但大部分没有问题,只是需要时间和实际操作的话,那就是真正的学会,即真会。比如我们已经基本掌握了Unity2D开发的基础知识,在观看完Unity3D经典项目《拾荒者Roguelike》演示后,想以此来做练习是否能较为清晰的在脑海里浮现我们需要开发的模块、组件、代码等。不知你脑海里浮现的画面是左边的还是右边的呢? 拾荒者脑海里浮现的画面 三、练习的作用练习是一个重要的过程,它能帮助你从假会走向真会。主要有三个方面的帮助:一是熟能生巧,Unity3D即是知识,也是手艺,通过练习能加深知识理解,也能提高速率。二是知识扩展,只有做多练习,才能从每个不同项目中遇到新问题也学会新的解决方法。三是习惯自然,读书时看过一本鸡汤书叫《习惯制胜》主要讲优秀是一种习惯,其实生活方方面面都是习惯,懒惰也是,刷知乎也是,打码也是,而现在你需要习惯的使用Unity3D。四、练习的要求练习一定要长期有序的进行,长期练习才能养成打码习惯。练习就是要找新老问题所在,可以慢火细炖不能囫囵吞枣。练习需要释放你的奇思妙想,激发你的动力留下快乐回忆。 Github打卡 五、练习具体过程 1、选择作为初学者,若你是相关专业的在校学生,务必要注重相关的专业课程。那么课本上对应的练习或者老师共享的课件练习,这部分是优先考虑的,就算部分会枯燥乏味,但为了打好基础还是得做呀。另一部分需要到网络上寻找的练习项目,当然需要选择自己能力范围内的项目,我刚好有写过相关的文章,你可以点击链接进行了解。当然老油条们做练习大部分是捣鼓自己想法的项目或者和别人协作什么的,这就不说了。 GitHub上有哪些Unity3D项目推荐? https://www.zhihu.com/question/306145318 Unity3D 项目或案例的练习有哪些推荐? https://www.zhihu.com/question/306001731 2、总览因为这是做练习,所以假定项目有相关的教程或参考代码。一个练习项目拿到手上,如果是有相关文档或教程的,一定要先浏览相关的目录和文档内容,快速理清该项目整体框架,运行流程,接下来需要做那部分练习,这对你目前做的练习指明了方向,而不会出现代码打完了不知道安哪里的情况。没有相关文档的当然是查看相关类和对象,导出UML图做进一步的梳理。有个大概影响的了,接下来就知道从那着手了。如图所示是,我们通过他人或自己梳理的文档从而了解《暗黑战神》的主要内容,接下来需要从哪一方面开始,自身需要补充什么知识等。 《暗黑战神》3D网游ARPG实战案例 3、基础再复杂的工程或项目都是由一点点小部件累积而成的。做练习也一样,先具体的开发相关模块的功能小部件,当然代码和项目完成时会不一样,但贵在自己摸索和思考。然后再将这些小部件一一做组合,以小见大,以易解难,完成项目。我们学习时的大部分课程都是线性的一字长蛇阵,一步步跟着老师做,不懂也跟着抄写代码。老师代码简洁有力,同学们也能更好的理解,但练习不一样,这需要你在学会的知识做变通,举一反三,而且还需要不断的修改代码以达到实现更健全的项目。如图所示,我们在做StrangeIoc的项目练习时,每条红线是一个小部件,通过组合成为一个小的数据循环。虽然这与最终版的代码上存在较大差异,一步一脚印,最终目是构建完成黑线的标准StrangeIoc框架。 StrangeIoc框架 StrangeIoc框架练习 4、扩展练习项目的扩展分为知识扩展和知识扩展。当练习过程中,你有新的项目设计和实现方法都可以大胆的去勾勒和敲打出来,这时你的项目是自由奔放的,不会像课堂里经典项目因为你初学懵懂,所以啥也不敢改怕引起错误。这部分是实实在在的锻炼你独立开发项目的能力,工作可没有教程和答案,不迈向这一步到头来是会吃亏的。如图所示,是一个简单的横版挡球的双人小游戏。我们发挥自己的想象,为这个项目画上简单的乒乓球游戏素材并导入,调整部分代码,如球碰撞乒乓球桌面弹射改变方向,中间的拦网会因为球体的高度不够而拦截球体等。 PongGame PingPongGame 另一方面就是知识的扩展,课堂上只会教你这个方法解决这个问题,一笔带过。虽然你理解代码的意思也能熟练的使用,但这不够,你得了解该方法具体实现代码,找出该方法同类有哪些,该方法常见的使用错误方式,错误会弹出什么内容?并为它做个小小的总结,顺便学习了这个类型的常用方法。这部分是经常谈到也是最重要的。不管是通过官方文档或者问问题的网站去不断的了解一个知识点背后的知识块,从而更好的吸收知识。 生命周期 5、分享互联网时代,也是知识共享的时代。分享你项目,不仅内心因获得成就感而愉悦,还能获得友谊的点赞,项目的协作等。互相促进才能进步,做练习有时也需要虚拟的伴侣。你是否想起学生时代,星期天炎热的午后,你和小伙伴一起做作业的身影。作者:siki老师 来源:知乎

一、前言

刚开始学习Unity3D的时候,明明已经认真的看着教程内容,自己动手做了一遍,但总是脑海里知识总是模模糊糊的,似会似不会。

其实不止Unity3D,每一门编程语言的学习或者说具有丰富内容的技艺都是如此。我们只有通过不断的练习和使用来加深我们的Unity3D相关能力,让你真正的学会Unity3D。

二、真会和假会

什么是真会和假会?

如果面对一个新项目,其中的知识模块你都已经学过,你经过对项目实现内容的了解后无法在你脑海里浮现完整流畅的开发过程,如将项目拆分为几个模块,使用什么框架,模块之间进行哪些互动,这个模块得做调整防止卡顿,这项功能该使用哪个类和方法,相关代码内容书写等等。这其中你都并未知晓,障碍过多导致你需要各种问人求答,大量搜寻资料,复制粘贴代码。就算你开发成功了,大多数时间也是用以苦思发呆,搜索问人,项目相关功能不健全,这是假会。

反之如果面对一个新项目,其中的知识模块大多数已学过,你经过对项目实现内容的了解后在你脑海里浮现完整流畅的开发过程,可能有较少不懂的内容需要进一步探究,但大部分没有问题,只是需要时间和实际操作的话,那就是真正的学会,即真会。

比如我们已经基本掌握了Unity2D开发的基础知识,在观看完Unity3D经典项目《拾荒者Roguelike》演示后,想以此来做练习是否能较为清晰的在脑海里浮现我们需要开发的模块、组件、代码等。不知你脑海里浮现的画面是左边的还是右边的呢?

拾荒者

脑海里浮现的画面

三、练习的作用

练习是一个重要的过程,它能帮助你从假会走向真会。

主要有三个方面的帮助:

一是熟能生巧,Unity3D即是知识,也是手艺,通过练习能加深知识理解,也能提高速率。

二是知识扩展,只有做多练习,才能从每个不同项目中遇到新问题也学会新的解决方法。

三是习惯自然,读书时看过一本鸡汤书叫《习惯制胜》主要讲优秀是一种习惯,其实生活方方面面都是习惯,懒惰也是,刷知乎也是,打码也是,而现在你需要习惯的使用Unity3D。

四、练习的要求

练习一定要长期有序的进行,长期练习才能养成打码习惯。

练习就是要找新老问题所在,可以慢火细炖不能囫囵吞枣。

练习需要释放你的奇思妙想,激发你的动力留下快乐回忆。

Github打卡

五、练习具体过程

1、选择

作为初学者,若你是相关专业的在校学生,务必要注重相关的专业课程。那么课本上对应的练习或者老师共享的课件练习,这部分是优先考虑的,就算部分会枯燥乏味,但为了打好基础还是得做呀。另一部分需要到网络上寻找的练习项目,当然需要选择自己能力范围内的项目,我刚好有写过相关的文章,你可以点击链接进行了解。当然老油条们做练习大部分是捣鼓自己想法的项目或者和别人协作什么的,这就不说了。

GitHub上有哪些Unity3D项目推荐?

https://www.zhihu.com/question/306145318

Unity3D 项目或案例的练习有哪些推荐?

https://www.zhihu.com/question/306001731

2、总览

因为这是做练习,所以假定项目有相关的教程或参考代码。一个练习项目拿到手上,如果是有相关文档或教程的,一定要先浏览相关的目录和文档内容,快速理清该项目整体框架,运行流程,接下来需要做那部分练习,这对你目前做的练习指明了方向,而不会出现代码打完了不知道安哪里的情况。没有相关文档的当然是查看相关类和对象,导出UML图做进一步的梳理。有个大概影响的了,接下来就知道从那着手了。

如图所示是,我们通过他人或自己梳理的文档从而了解《暗黑战神》的主要内容,接下来需要从哪一方面开始,自身需要补充什么知识等。

《暗黑战神》3D网游ARPG实战案例

3、基础

再复杂的工程或项目都是由一点点小部件累积而成的。做练习也一样,先具体的开发相关模块的功能小部件,当然代码和项目完成时会不一样,但贵在自己摸索和思考。然后再将这些小部件一一做组合,以小见大,以易解难,完成项目。我们学习时的大部分课程都是线性的一字长蛇阵,一步步跟着老师做,不懂也跟着抄写代码。老师代码简洁有力,同学们也能更好的理解,但练习不一样,这需要你在学会的知识做变通,举一反三,而且还需要不断的修改代码以达到实现更健全的项目。

如图所示,我们在做StrangeIoc的项目练习时,每条红线是一个小部件,通过组合成为一个小的数据循环。虽然这与最终版的代码上存在较大差异,一步一脚印,最终目是构建完成黑线的标准StrangeIoc框架。

StrangeIoc框架

StrangeIoc框架练习

4、扩展

练习项目的扩展分为知识扩展和知识扩展。当练习过程中,你有新的项目设计和实现方法都可以大胆的去勾勒和敲打出来,这时你的项目是自由奔放的,不会像课堂里经典项目因为你初学懵懂,所以啥也不敢改怕引起错误。这部分是实实在在的锻炼你独立开发项目的能力,工作可没有教程和答案,不迈向这一步到头来是会吃亏的。

如图所示,是一个简单的横版挡球的双人小游戏。我们发挥自己的想象,为这个项目画上简单的乒乓球游戏素材并导入,调整部分代码,如球碰撞乒乓球桌面弹射改变方向,中间的拦网会因为球体的高度不够而拦截球体等。

PongGame

PingPongGame

另一方面就是知识的扩展,课堂上只会教你这个方法解决这个问题,一笔带过。虽然你理解代码的意思也能熟练的使用,但这不够,你得了解该方法具体实现代码,找出该方法同类有哪些,该方法常见的使用错误方式,错误会弹出什么内容?并为它做个小小的总结,顺便学习了这个类型的常用方法。

这部分是经常谈到也是最重要的。不管是通过官方文档或者问问题的网站去不断的了解一个知识点背后的知识块,从而更好的吸收知识。

生命周期

5、分享

互联网时代,也是知识共享的时代。分享你项目,不仅内心因获得成就感而愉悦,还能获得友谊的点赞,项目的协作等。互相促进才能进步,做练习有时也需要虚拟的伴侣。你是否想起学生时代,星期天炎热的午后,你和小伙伴一起做作业的身影。

  大连妇科医院哪家好 http://mobile.dlgcyy.cn/

  大连男科检查医院 http://mobile.39552222.com/

  大连妇科 http://mobile.dlfkyy.net/

猜你喜欢

转载自blog.csdn.net/qq_42894764/article/details/89138632