讨论:Unity3D游戏开发团队组建需要哪些角色
相比高度工业化的Unreal,不管是Unity的早期用户群还是今天的用户里,独立游戏开发者都占了相当大的比重。在一个Unity3D游戏开发的团队里,能获得最佳用户体验的团队在1人-10人,20人靠上就必须要靠专门定制的工作流程和辅助工具来保证协作质量和效率。
Unity3D游戏开发团队需要的角色,视项目的不同也有很大的区别。下面就列一下:
逻辑实现者:工作是实现从游戏主循环到每个游戏元素的逻辑。注意如果是独立游戏项目的话,借助第三方插件,非程序员也可以担任这个角色。
内容设计者:在大团队里基本上就是策划职位,负责这个任务的人基本上是一定要摆弄场景、制作prefab的,没有点动手能力光会写文档可不行。
美术:工作包括从游戏概念图的设计到模型动画等美术资源的设计制作。
交互设计和实现:界面设计、界面实现编程,由于Unity下有很多不错的UI插件,在Unity下就算是由设计师自己来做交互实现编程也不会很难。
主程序/架构设计师:适用于大项目或大团队的高端职业,他们的主要任务不是生产用户能玩到的具体游戏性,而是为其他团队成员搭建一个可以沟通协作的框架或工具集。
对大型项目来说,如果团队里没有这么一个经验丰富思路清晰的高手,很快项目就会被各种突飞猛进的同行产品所覆盖。目前Unity3D游戏开发新功能原型的产出实在是太快了,这就容易让人忽略结构的问题,当然还伴随无数难以修复的bug。
服务器程序员:网游项目必备,其描述适用于游戏工业标准。
版本管理员:适用于大项目,最好精通Git或plasticscm这类分布式版本控制系统。
音效设计师:可选,推荐还是外包音效+内部实现的做法。
如果对楼主有帮助,给个采纳好不,谢谢啦
Photon和KBEngineunity3d是最适用Unity3d游戏开发的两个服务器引擎,但它们还是有区别的,只有清楚地了解区别在哪才能正确使用,下面简单描述下两者的共同点和不同点。
语言
对于大部分的程序员语言简直就是宗教信仰。
Photon使用C#开发,当然使用者也是用C#进行各类游戏功能开发。前后端同种语言,这对使用Unity3d游戏开发也有很大的好处。
KBEngine使用C++开发,逻辑开发是用python,也是很不错很快速的。
开源与收费情况
Photon是Exit Games公司的产品,不开源,有好多种收费模式,官网上可以看到。开发阶段可以用免费的license,后期可以看流量用户活跃度来选择付费模式。后续的支持,似乎是免费的,你可以选择邮件或是到论坛发帖求助,当然是E文。
KBEngine是国人开发,开源免费,但从官网上并没有看到商业使用的案例。有中文论坛,你可以在论坛上向开发者求助。
虽然两者的模式不同,但作为一个Unity3d游戏开发者,我们最希望的其实是把游戏引擎当作一个安全稳定的黑箱。
操作系统
之前说了Photon使用C#开发很自然的,配套的工具也是使用C#,比如最重要的PhotonControl。所以开发环境和生产环境最好都是windows。
虽然在跨平台上有mono,在服务器代码部分是系统无关的,但是不管你信不信,我是不信它的一套窗体工具也能运行在Linux下。反正,官网说法是,开发和生产环境都是用windows。
KBEngine建议开发环境选择Windows,生产环境选择linux。毕竟你总不希望开一组服务器打开9个Console窗体,一不小心把哪个点X了吧~
协议
Photon有自己的序列化反序列化方式,你也可以使用protobuf这类的来做应用层传输协议。
KBEngine在这方面表示不支持自定义协议,它帮你选择了有效的方法来处理,如果你习惯了他规定的方式,会喜欢上的。
看法
在功能上,我毫无疑问地更喜欢KBEngine,脚本化和自动持久化是极富魅力的功能。而Photon几乎没做这方面的功能,可能和老外的观念有关系。就目前我对两者功能的理解看来,Photon其实是个和SuperSocket差不多的东西,而SS是作为轻量级服务器框架存在的,Photon却是说自己是Unity3d游戏引擎,除去提供的MMO示例代码(未解读),没看到什么游戏引擎的魅力。
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服务端相关程序,个人建议直接学习AspNet Core,至于老版本的AspNet稍微有点过时了,但如果不需要部署到Linux的话,也完全够用,看个人喜好吧。至此你就可以实现用户注册,存档,会员机制,好友系统,游戏币管理,在线商城等功能了。
最后一步,学习一款服务器引擎,由于工作繁忙,这步本人至今实现。但按照我的理解,学完这一步,应该就能做出一款真正的网游了。
Unity3d有众多优势,下面小编整理了Unity3D游戏开发引擎的产品特点,让大家全面了解下Unity3d。
1支持多种格式导入 整合多种DCC文件格式,包含3dsMax,Maya,Lightwave,Collade等文档,可直接拖拽到Unity中,除原有内容外,还包含Mesh、多UVs,Vertex,Colors、骨骼动画等功能,提升7游戏制作的资源应用。 2高性能的灯光照明系统 Unity为开发者提供高性能的灯光系统,动态实时阴影、HDR技术、光羽镜头特效等。多线程渲染管道技术将渲染速度大大提升,并提供先进的全局照明技术(GI),可自动进行场景光线计算,获得逼真细腻的图像效果。 3AAA级图像渲染引擎 Unity渲染底层支持DirectX和OpenGL。内置的100组Shader系统,结合了简单易用,灵活,高效等特点,开发者也可以使用ShaderLab,建立自己的Shader。先进的遮挡剔除(OcclusionCulling)技术以及细节层级显示技术(LOD),可支持大型游戏所需的运行性能。
4NVIDIA专业的物理引擎 Unity支持NVIDIAPhysX物理引擎,可模拟包含刚体柔体、关节物理、车辆物理等。 5友善的专业开发工具 包括GPU事件探查器、可插入的社交API应用接口,以实现社交游戏的开发;专业级音频处理API、为创建丰富通真的音效效果提供混音接口。引擎脚本编辑支持Java,C#,Boo三种脚本语言,可快速上手、并自由的创造丰宫多彩、功能强大的交互内容。 6高效率的路径寻找与人群仿真系统 Unity可快速烘焙三维场景导航模型(NavMesh),用来标定导航空间的分界线。目前在Unity的编辑器中即可直接进行烘焙,设定完成后即可大幅提高路径找寻(Path-finding)及人群仿真(CrowdSimulation)的效率。 7逼真的粒子系统 Unity开发的游戏可以达到难以皿信的运行速度,在良好硬件设备下,每秒可以运算数百万面以上的多边形。高质量的粒子系统,内置的Shuriken粒子系统可以控制粒子颜色、大小及粒子运动轨迹,可以快速创建下雨、火焰、灰尘、爆炸、烟花等效果!
8强大的地形编辑器 开发者可以在场景中快速创建数以千计的树木,百万的地表岩层,以及数十亿的青青草地。开发者只铸完成75%左右的地貌场景,引擎可自动填充优化完成其余的部分。 9市场空间 iOS,Android,Wii,Xbox360,PS3多平台的游戏发布。仅需购买iOSPro或AndroidPro发布模块就可以在iPhone或iPodTouch或Android系统等移动终端上创建任何酷炫的二维三维、多点触控、体感游戏,随后可将游戏免费发布到自己的移动设备上测试运行,增添修改的方便性。 10智能界面设计,细节凸显专业 Unity以创新的可视化模式让用户轻松建构互动体验,提供直观的图形化程序接口,开发者可以玩游戏的形式开发游戏,当游戏运行时,可以实时修改数值、资源甚至是程序,高效率开发,拖拽即可。
11单机及在线游戏发布 Unity3D支持从单机游戏到大型联网游戏的开发,结合Legion开发包和Photon服务器的完美解决方案,轻松即可创建MMO大型多人网路游戏。而且在开发过程中,Unity3D提供本地客户(NativeClient)的发布形式,使得开发者可以直接在本地机器进行测试修改带助开发团队编写更强大的多人连线应用。 12TeamLicense协同开发系统 TeamLicense可以安装在任何Unity里,新增的界面可以方便用来进行团队协同开发。避免不同人员重复不停的传送同样版本的资源至服务器,维持共用资源的稳定与快速反应其中的变化,过长的反应更新时间将会影响团队协同开发的正确性与效率。 13Substance高写真动态材质模块 Substance是一个功能强大的工具,通过任何的普通位图图像,直接生成高品质的次时代游戏设计专用材质(法线图,高度图,反射贴图等),为DCC工具或游戏引擎(如Unity 3D)提供高级的渲染效果。
14可视化脚本语言u 可视化脚本编辑语言u,具有高度的友好界面、整合性高、功能强大、修改容易等特点。开发者只祷将集成的功能模块用连线的方式,通过逻辑关系将模块连接,即可快速创建所铸脚本功能,非常适合非编程人员与项目制作使用。 在Unity3D这么强大的技术支持下,VR虚拟现实的效果是可以轻而易举的实现,其中人机交互技术是密不可分的组成部分,人机交互技术主要研究方向有两个方面,分别是:人如何命令系统;系统如何向用户提供信息。众所周知,人在使用计算机方面的感受(即人机交互部分的友好度)直接影响到人对系统的接受程度,而这两个方面直接决定了人机交互部分的友好度,这是Unity3D与VR虚拟现实之间的主要关联。 虚拟现实在各个行业和领域应用得越来越广泛,而同时也暴露出了一些不可忽视的问题,如对现实世界的隔离,与人类感知外部世界的方式有冲突等等。这些问题,都需要Unity 3D开发引擎进行调整和研发,Unity 3D开发引擎将计算机生成的虚拟物体或关于真实物体的非几何信息叠加到真实世界的场景之上,实现了对真实世界的增强,同时,由于用于与真实世界的联系并未被切断,交互方式也就显得更加自然,这就是两者之间亲密结合的成果,也是目前最热门的VR虚拟现实受大家喜欢的根本所在。
你这样学不对。
我给你说说一般的路线,再给你说为啥以Python做Unity开发不好。
先学Unity的场景编辑器可视化的部分(比如地形和基本物理设置),这部分不涉及太多编程。在学动画调节部分。慢慢的引入编程控制。然后要使用联网游戏,学习网络功能。最后学习shader编程。第一趟学习过程的迭代(以上所有环节),以网上的系列教程或书籍教程为主。然后第二遍,在重新认识场景编辑器,以官方参考手册为主,选择几个常用的插件,这一次应该有实践项目。因为Unity本身也是巨大的体系,所谓Unity专家也只是对某一个方面特别在行,你要有着重点和切入点,这以你的游戏类型和风格为标准(你是做2D/3D,你是重视觉呈现还是玩法,有没有联网功能等)
Unity的脚本运行环境是Mono,是一个开源的NET框架,你知道NET的话就应该知道它是和编程语言无关的(都会编译成 CLI 汇编)。Mono绑定了多个语言,官方的是C#,一个第三方开发者绑定了Python也就是Boo,而Unity公司在这个Boo之上绑定了JavaScript也就是UnityScript,但是Boo(基于Mono CLR实现)并不是那个真正的Python(基于C语言实现),它们的运行时完全不同。而且Boo和UnityScript的编译后的 CLI 汇编效率要比 C# 的低。Unity 官方也在一步步的降低对Boo和UnityScript的支持。
但是学Python和做Unity游戏有关系吗?
有,但不是用在Unity本身的开发上,可以用Python-WSGI 编写游戏服务端,并搭建在云服务器上。当然替代的技术有 PHP、Java 等
第一步 ,学习怎么做一个单机游戏。 第二步,在单机游戏做的比较好的情况下,学习服务器。做数据收发,人物同步。 第三步,维护,优化。 也就是 客户端,和服务器 。都要学。unity只是客户端。
Unity3d 431f安装破解教程:
1在Unity3d安装软件上点击鼠标右键,以管理员方式运行。
2点击Next。
3点击I Agree。
4点击Next。
5设置安装路径(不能有中文字符),点击Install。
6软件安装中。
7软件安装完成,去掉复选框里的勾选,点击Finish退出安装向导。
8找到破解补丁文件,鼠标右键选择复制。
9进入Editor目录,鼠标右键选择粘贴。
10以管理员方式运行破解补丁,点击Browse,选择Editor目录并按确定按钮。
11点击Patch按钮打补丁。
12退出激活页面,双击安装目录里的Unityexe启动软件,新建一个工程(不能用中文名称)。
13查看界面。
0条评论