学习unity3d,如何安排进程,从哪里开始学

学习unity3d,如何安排进程,从哪里开始学,第1张

Unity本身并不难,难点在于C#。只要可以熟练编写C#,其他的都很简单。

第一步:个人建议看传智播客的视频教程,先看基础班的,在bilibili搜索“传智播客.NET基础班”就能在线观看,不需要下载,推荐看苏坤的,看完基础班的教程,结合Unity的教程,就已经能开始写一些简单的小游戏了。

第二步:看传智播客就业班的视频,重点学习面向对象和委托,需要完全理解。必须掌握这两点,才能去写一些比较复杂的逻辑,比如道具系统,背包系统等。

第三步:学习多线程,异步,Socket,这样你便能明白游戏是如何跟服务器通信的。能够做出一个简易版的聊天程序,便基本够用了。

第四步:简单学习一下数据库。不需要学太深,明白怎么创建数据库,怎么增删改查就够了,再深的那些,即便学了,也用不上。

第五步:ADO和Entity framework能熟练使用其中一个便可。个人推荐Entity framework,尽管老版本不太好用,但自Core版本出现之后,变得非常好用了。之后结合数据库,就可以在服务器上储存游戏数据了。

第六步:学习一个三维动画建模软件。3DMAX,C4D,MAYA三选一便可。这三个都是主流,教程烂大街,由于专业对口,所以三个我都学过。3DMAX动画能力比较渣,如果需要做角色动画,功能有点弱,没有肌肉系统,骨骼系统也很简陋,界面有点反人类,无论用的多熟练,利用多少快捷键,工作效率都不如C4D纯鼠标操作快,好处是教程最多。C4D各方面功能都很强,而且简单易学,操作各种爽,是三个软件里人性化体验最好的,缺点是对Unity支持度比较差,只能通过FBX格式导入。MAYA各方面功能也很强,对Unity支持也很棒,但由于软件设计比较古老,让人觉得有点崩溃,虽然看起来功能很多,但很多功能是多余的,像是脱裤子放屁,明明一步就能搞定的功能,却总要弄上十几步,设置一大堆,就连导出模型,选个格式,都得进设置界面捣鼓半天,在界面上添加一个专门用来导出的按钮,之后利用这个按钮导出,什么?想换个格式?不行不行,这个按钮只支持导出一种格式。回设置界面创建个其他格式的导出按钮吧。怎么创建不了?嗯。。。你得先把之前创建的那个按钮删掉,再创建新的按钮。。。。就是这么令人崩溃。三个软件算是各有利弊吧。不过选哪个都无所谓,因为如果前面那些C#相关的知识,你都学会了的话,说明你的学习毅力已经不错了,把那种毅力拿出一成,学个三维软件根本就毫无压力。

第七步,当你把前面这些基础都学完摸透。打开Unity会发现,真简单啊。。熟悉熟悉界面。。随随便便跟着教程做个案例。。简单学一下3D数学,理解向量,差积,点积,Plane和射线,试一下利用协程发送GET和POST请求。。再找个有限状态机的案例,把代码打开看一遍,应该秒懂(如果不能秒懂,说明面向对象和委托部分,学的不扎实),了解一下发布相关设置。。只学了不到一星期,你就会发现自己好像已经学得差不多了。。加个Unity相关的QQ群聊聊天,立刻就被当大神了,群主立刻给管理员当。。幸福来的好突然的感觉

第八部,学习一下WEB服务端相关程序,个人建议直接学习Asp.Net Core,至于老版本的Asp.Net稍微有点过时了,但如果不需要部署到Linux的话,也完全够用,看个人喜好吧。至此你就可以实现用户注册,存档,会员机制,好友系统,游戏币管理,在线商城等功能了。

最后一步,学习一款服务器引擎,由于工作繁忙,这步本人至今实现。但按照我的理解,学完这一步,应该就能做出一款真正的网游了。

自从 unity5发布免费过后,有很多独立游戏开发者转向unity游戏开发,unity的优势就是多终端

跨平台打包,入门也快,很多人感觉自己的英文不好,就觉得学不会,其实这是一个误区,

unity的界面虽然是英文的,但是它的窗口就只有那么几个,用的次数多了,也就自然的熟练

了,那么新手该如何从零开始学习unity呢?接下来给大家分享一点经验与技巧。

(一) 首先unity的脚本可以用很多语言来写,比如java,js,c#,我个人比较喜欢C#,因

为刚开始的时候我学习的是C++,后来又做C#窗体程序,我们先从脚本说起,脚本我个人推荐

用C#,很多人说自己没有C#的基础,其实自己自学也能够学会,在unity中学会简单的游戏逻

辑开发,其实不需要太多的C#知识,unity用的VS编辑器其实是在C#里面调用unity的API,因

为它在创建脚本的时候引入了一个 unityEngine的空间,这个空间就是unity的 C# API,那么新

手只需要去学习unity的C# API接口就行了, untiy API 文档 Unity User Manual (

(二)关于unity客户端学习,首先你做为一个新手,我建议你从unity2D开始学习,我不建议你一开始就去学3D,因为3D游戏会涉及到很多比较复杂的计算,那么也就是在创建游戏项目的时候,选择一个2D游戏去开发,关于2D游戏的素材,大家自己可以在 某宝上面去购买,买来自己练习,非常便宜,那么学习2D游戏的学习顺序是什么呢,在这里我也给大家整理了一下。

学习Unity的几个阶段和要注意的事项。

一、C#程序设计

Unity使用C#来开发,所以学习Unity首先要学习C#的语法,和C#读写文件等API系统调用。学习C#语法可以找个C#的教程也可以买C#的编程语言的书,学习C#学习基本的语法,基础的数据结构,如List, Dictionary等,同时学习一些基础的OS的API操作,比如文件读写等。不用去学习windows的一些开发和API,因为我们学习都是基于Unity来开发。

二、Unity基础知识

学完C#以后,接下来就学习Unity编辑器操作与Unity的代码开发。Unity开发大部分都是可视化的,开发起来还是非常简单和方便的。首先学会编辑器的基本操作,摆放3D物体,添加物理刚体,添加组件,运行等基本操作。

接下来从场景树节点开始,再到常用的组件实例,GameObject对象,Transform组件,MeshRenderer组件,SkinnedMeshRenderer组件,基础材质系统(Standart Shader主要参数,Diffuse Shader主要参数)。

AudioSource组件,碰撞器组件,物理刚体组件,物理引擎,射线检测,事件系统,接入鼠标按键等事件,UGUI与UI组件,如Canvas组件,Sprite组件,Label组件,Button组件,滚动列表,Mask组件等。

三、Unity框架设计与热更新

Unity虽然是可视化编辑,上手简单,但是正式商业项目的时候,需要考虑项目的稳定和可维护性,就不能很任性的像学基础一样,随意的挂代码,随意的绑定资源,节点到编辑器,我们需要自己来制作一个可维护的游戏开发框架,做框架需要对游戏开发中的多岗位协作(程序,策划,美术)需求要非常清楚,同时要做好资源管理,内存控制,框架还要考虑上线以后的资源更新和逻辑更新做好版本管理和热更新等。

四、Unity Shader渲染管线定制

这个相对来说就比较难了,很多大公司要做比较叼的渲染效果,需要开发人员定制特殊的Shader渲染管线来实现。比如卡通渲染,PBR渲染等,同时不同的平台,渲染效果可能有差异,还需要我们编写代码,来抹平这种差异,同时有些低端机,我们要关掉一些消耗性能的计算,用降低效果来实现游戏的流畅度,这些需要定制渲染管线。

五、游戏开发中的经典的专题与算法

游戏开发中经典的一些专题与算法也是我们需要去学习的,比如游戏怪物的AI编写,我们会用到行为决策树,地图编辑器,寻路导航,Socket网络编程,Protobuf协议,如何与服务器对接等常用游戏开发中的专题和算法。

六、性能优化与稳定性

游戏开发完成以后,对于性能需要优化,比如游戏的流畅度,手感,帧率,CPU占用率,Shader优化,Drawcall优化,阴影优化,内存优化,算法优化等。稳定性也很重要,在测试的过程中保证程序的稳定性,稳定性直接和用户的流水率等运营数据有关系,好的一个游戏产品,稳定性是最基础的保障,同时稳定性又最考验技术主管与团队的功底。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/364870.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-11
下一篇2023-05-11

发表评论

登录后才能评论

评论列表(0条)

    保存