从事游戏开发,需要什么技能?

2021-01-27 14:05发布

6条回答
我自己打call
2楼 · 2021-01-28 09:53

看你要去哪个方向了,策划、程序、美术,每个方向又有细分。
策划有剧情策划,关卡策划,数值策划等等。
程序有客户端编程,服务器编程,引擎编程,脚本编程,手机游戏开发, 网页游戏。
美术有3d建模,2d美术。

方向不一样需求不一样。
较了解程序,就程序俩说吧。
如果要说只为干活,客户端你得学windows编程,socket等
服务器当然就是各种数据库操作,各种通讯操作。
引擎编程需要了解底层,directx,opengl,3d数学,物理基础等。
脚本的话就学脚本就够了。
手机游戏开发分ios、android,对应使用不同引擎需要不同的学习。
网页游戏前端目前flex流行,js,html也在发展。

以上只是速成。但是真正建议的是,
学好c++,数据结构,socket编程,了解windows编程,学习数据库编程。
先学3d数学,再学directx,然后试着做个小游戏。
学习设计模式。研究开源引擎。
会是个比较漫长的过程,但是基础扎实,各种开发都不怕。
可以专挑一条喜欢的道路深入研究,也可以专注游戏逻辑实现。

这个话题其实有点儿大。这里面有一个重要的区别是:你是想当独立游戏开发者,还是想当游戏行业的从业人员。

如果是想当游戏行业的从业人员,我觉得就简单了,盯准你想当的职业,培训相应技能就好。事实上,在游戏行业里的开发,无论是精通特定引擎或者架构(如cocos2D,unity3D,OpenGL,DirectX),还是只是对基础(如算法、设计模式、图形学、人工智能等)有一定深度,都能入行。(不是都学,是对其中一个有超过平均水平的掌握或者理解即可,然后就投简历吧。现在游戏也这么火,不难找工作)。

但是对于独立游戏开发者,事情就不一样了。显然需要掌握更多的东西。但是掌握更多的东西不一定是专精。这就要求独立开发者有取舍。首先要思考,自己想在什么平台做游戏?ios?好好看ios sdk;android?好好看android sdk?win8?好好看wpf。网络?flash或者html5等等等等。
我在上面只列出了一个基础,不包括图形引擎或者游戏引擎。事实上,一些游戏不需要引擎的协助。独立开发者的游戏更是注重创意,因此,很多并不依靠引擎的游戏也能有不错的收益。但是,要想更进一步,需要在平台的基础上选择合适的引擎加以研究。

最后,我认为独立开发者需要了解一些美工知识,并且对数值策划有一些感觉。但从美工的角度,很多美术非常简单的游戏也很不错;所以我一向不认为美术是游戏开发的关键。当然,它是一个能增添很多亮点的环节。

用户555666
3楼 · 2021-01-28 10:33

首先,软件开发不是个人行为,而是团队行为。

你需要具备的技能,要看你在团队中所处的位置。

如果你是代码编写人员,那么你只需要具备扎实的代码编写基本功,和基本的团队沟通能力,文档阅读能力就可以了。

如果你是设计师,你需要具备程序员的能力之外,还需要懂软件设计方面的东西,这个东西就很多了。

如果你是架构师,那么你还要懂得架构方面的东西。这个就更多了。

如果你是项目经理,你就要具备人员管理,进度管理,版本控制,代码保密,团队协作方面的种种技能。

再回到你的游戏开发上,游戏开发,除了基本配置外,需要有游戏逻辑、图形学、多媒体方面的技术总监或者技术小组,负责本模块的开发,其他模块,可以由一般的小组完成。但是架构师和设计师要求懂得这些东西,并把她设计出来。

然后在经过 需求分析、可行性调查、风险预测、总体设计、详细设计、代码编写及测试、总体测试、最终交付用户,开始软件的使用及维护,最终,到软件生命周期的终止,结束整个软件生命周期。

这些是瀑布流程走的,如果用rup,流程会变得更复杂,但是有点也是传统流程不可比拟的。


1234567
4楼 · 2021-01-29 10:13

  首先,软件开发不是个人行为,而是团队行为。

  你需要具备的技能,要看你在团队中所处的位置。

  如果你是代码编写人员,那么你只需要具备扎实的代码编写基本功,和基本的团队沟通能力,文档阅读能力就可以了。

  如果你是设计师,你需要具备程序员的能力之外,还需要懂软件设计方面的东西,这个东西就很多了。

  如果你是架构师,那么你还要懂得架构方面的东西。这个就更多了。

  如果你是项目经理,你就要具备人员管理,进度管理,版本控制,代码保密,团队协作方面的种种技能。

  再回到你的游戏开发上,游戏开发,除了基本配置外,需要有游戏逻辑、图形学、多媒体方面的技术总监或者技术小组,负责本模块的开发,其他模块,可以由一般的小组完成。但是架构师和设计师要求懂得这些东西,并把她设计出来。

  然后在经过 需求分析、可行性调查、风险预测、总体设计、详细设计、代码编写及测试、总体测试、最终交付用户,开始软件的使用及维护,最终,到软件生命周期的终止,结束整个软件生命周期。

  这些是瀑布流程走的,如果用rup,流程会变得更复杂,但是有点也是传统流程不可比拟的。


我是人间惆怅客
5楼 · 2021-01-29 17:27
现在的游戏开发不像以前做游戏,学会基础的Unity引擎就能掌握,现在的游戏还会涉及一些新兴的知识,比如VR技术等。除此以外,有些游戏公司还会要求游戏开发工程师具备一定的策划能力。
Mantra
6楼 · 2021-03-12 16:14
  1. 会一门游戏编程语言,例如C#或者C++

  2. 会一款游戏开发引擎软件,能极大的提高游戏开发效率

  3. 会数据存储和读写

  4. 会数据结构和算法

  5. 会设计模式

  6. 会网络

  7. 会发布不同的平台


相关问题推荐

  • 回答 6

    第一步:对着Assets点击右键,选择ExportPackage第二步:选择场景文件以及和场景相关的资源或者素材,然后点击Export第三步:给导出的资源取名,并且选择要保存的位置即可

  • 回答 87
    已采纳

    玩游戏玩的很好,说明你对于游戏里面的规则、剧情设置还是比较了解的,对于从事游戏相关岗位来说也是优势之一。但是学习游戏开发还是要对游戏开发的工作内容做进一步的了解,游戏开发涉及代码较多,可以通过进一步的了解,判断自己是否适合学习这个方向,另外...

  • 回答 11

    游戏开发入门不难。后期发展需要你有丰富的奇思妙想。游戏开发肯定是培训好,自学学得不系统,并且不易发现自身薄弱之处。游戏开发的学习时长还是要看你自己对知识与技术的掌握能力,一般来说,游戏开发的学习时长大约在五个月左右。...

  • 回答 18

    个人觉得如果有一定的技术基础的话还是可以考虑自学,如果零基础的话可能会有些难度

  • 回答 10

    问题还是出在粒子的sorting fudge。在unity的2d模式下,游戏本身的背景相当于是sorting fudge的0,当你把粒子的sorting fudge设为0以上的时候,粒子就都会被背景盖住。所以在3d模式下给alpha正值来给add垫底的话,到了2d模式下就会通通不显示。所以遇上这样的...

  • 回答 17

    虚幻4引擎,你会看到和平精英加载页面左下角有这个图标。

  • 回答 8
    已采纳

    转载知乎上的两位答友的回答,各有道理。作者:风小锐链接:https://www.zhihu.com/question/322249959/answer/675883379来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。未来Unity有可能出现3A大作吗? 有可能。基于Unity已...

  • 回答 11

    在Assets文件夹里面.点击右键Create/Material即可以创建材质球

  • 回答 23

    可以让模型师直接作出这样的形状,如果用纯Unity制作,就要用基本游戏对象拼接了,包括楼梯,城堡,都可以拼接出来。正常情况不会这样做,因为不够精美,都是建模师来实现,毕竟Unity不属于专业的建模软件,侧重于实现功能。...

  • 回答 18

    粒子系统由粒子发射器、粒子动画器和粒子渲染器三部分组成,主要用于游戏场景中一些特殊效果,如水、烟火等等

  • 回答 18

    首先,Python开发游戏非常尴尬,原因是没有好用的游戏开发库。Python开发游戏仅推荐PyGame,PyGame是对多年以前很流行的游戏开发库——SDL的封装。但是说实话功能太简陋了,做个动画都得考虑刷新的问题。楼主要做简单小游戏,只需要画一两周熟悉Unity引擎,然...

  • 回答 9

    1.标记水体碰撞的位置2.计算水波的传递 通过波动公式,3D或者2D 波动公式都行3.水面顶点采样波动传递结果计算结果做顶点Y轴偏移

  • 回答 15

    Unity3D中两种阴影的实现传统的ShadowMapShadowMap说起来十分简单,把摄像机和光源的位置重叠,那么场景中该光源的阴影区域就是那些摄像机看不到的地方,主要应用在前向渲染路径中。具体实现分以下几个步骤:如果有平行光开启了阴影,Unity就会为该光源计算它...

  • 回答 18

    Doozy UI是Unity UI视图层的框架,本身使用的还是UGUI的组件,但提供了一套强大的UI管理功能,可以很方便的实现一些炫酷效果,方便的UI系统管理与事件传递机制。

  • 回答 12

    Unity3d更好,因为U3D占有的市场更大,目前cocos大都是用来开发棋牌游戏的,在这方面它有着巨大的优势。而Unity3d既可以用来开发大型3D游戏,也可以用来开发vr游戏、vr应用,这是比较不错的,未来有着巨大的前景。另外ue4也是个不错的选择,近年来用ue4开发的...

  • 回答 11

    当Unity 需要做热更新的时候(2013年开始),而普通的C#又做不到的时候,而对于游戏行业来说Lua脚本热更新已经是很成熟的方案,自然Lua 热更新就成为了Unity热更新的首选。

没有解决我的问题,去提问