游戏开发学习路线

游戏开发学习路线当你在吃鸡,王者农药的时候是否有想过如何才能做出一款这样让人神迷的游戏?游戏开发这个方向看起来目标很明确,但其实是个领域很广的方向,入门的时候如果得不到指点一二,很容易误入歧途,相反,如果走这条路之前能得到前人的一些指引,是可以事半功倍的。下面就结合自己的学习历程和大家分享下游戏开发的学习路线。1.介绍游戏开发分为客户端和服务端两条不同的路线,路线不同,所需的技能也不同。但有些…

大家好,又见面了,我是你们的朋友全栈君。

当你在吃鸡,王者农药的时候是否有想过如何才能做出一款这样让人神迷的游戏?

游戏开发这个方向看起来目标很明确,但其实是个领域很广的方向,入门的时候如果得不到指点一二,很容易误入歧途,相反,如果走这条路之前能得到前人的一些指引,是可以事半功倍的。

下面就结合自己的学习历程和大家分享下游戏开发的学习路线。

1.介绍

游戏开发分为客户端和服务端两条不同的路线,路线不同,所需的技能也不同。

但有些技能还是通用的,比如都需要掌握基础开发语言,数据结构与算法,计算机网络等。

游戏开发学习路线

 

2.游戏客户端学习路线

1.首先,一开始可能对游戏引擎没什么概念,建议先入门一两个游戏引擎(我推荐可以先去学习Cocos2d-x和Unity3D两个引擎,市面上大多数游戏是利用这两个引擎开发的)。入门阶段要做的就是看该引擎的教程(书籍、视频、网上博客、网上教程、官方帮助文档等),并且熟练该引擎所使用的编程语言。 

因为不同平台下的性能不同,支持的编程语言也不尽相同,所以针对不同平台下的流行的游戏引擎也是不同的。下面列举一些现在流行的游戏引擎。

windows或游戏主机:【Unreal】、寒霜、CE3

苹果IOS:【unity3D】、【cocos2d-x】、【Unreal】、sparrow、sprite kit。

安卓:【unity3D】、【cocos2d-x】、【Unreal】、AndEngine、libgdx。

网页:【Egret】、【cocos2d-js】、Fancy3D、unity3D。

当然并不是不同平台的游戏开发,就毫无共通之处,学了这个到了另一个平台就无用了。不是这样的,编程的世界里你走得越远你会发现很多东西的本质都是相似的,例如你如果扎实地理解了C++的基本语法,日后再转Java语言也不是很难的事情,因为它们本质的面向对象特性还有各种编程语言特性都是相通的。

2. 因为游戏开发就是一门实时渲染的艺术,所以离不开图形库的学习。现在主流的图形库是Windows平台专用的DirectX 11和通用平台的Opengl。这两个图形库,至少需要入门其中一个。 

3.然后,你就可以开始看计算机图形学的书籍了。如果你发现你的理论底子不足,这个时候就需要补一下线性代数、基本的微积分、还有3D数学的知识。 

4.游戏引擎中包含了各个部分,上面的渲染只是游戏引擎的一部分。还有其它诸如着色器编写、地形编写、物理引擎编写、模型和动画、人工智能体设计、网络编程等等,完成渲染部分的基本学习后,你可以选择自己感兴趣的部分进行专攻,毕竟我们实际工作大多数时候是团队开发,而不是单打独斗,每个人都应该精通自己所擅长的那部分。

5.至此,独自开发一款小型游戏已经完全不在话下了。也具备了加入公司合力开发一款大型游戏的能力。

游戏开发学习路线

 

3.游戏服务端学习路线 

1.首先需要熟悉一门服务端语言,比如C/C++、PHP等,会使用一个开发框架。

2.会在服务器上搭建环境,拿lamp来说linux和apache、mysql、php四者担任的角色要清楚。大多服务器会选择搭建在Linux环境下,所以也需要熟悉Linux操作命令。

3.至少熟悉一种数据库。比如关系型数据库mysql,能熟练写出增删改的语句和不算很复杂的查询语句,再比如了解各种方式的多表查询有哪些不同等数据库技能也是需要的。

4.了解网络编程及多线程等。比如http通信协议。跨平台的交互一般http是使用比较广泛的,需要大体了解,你得清楚请求报文通常包含哪些部分、常见的服务器返回码对应的含义。

5.会使用至少一种数据格式。服务端和客户端建立了联系,数据的传输也需要一种协议格式去统一。json是目前使用率最高的格式了。json的数据格式还是简单明了易学的,主要是要了解如何使用它较好的去定义接口。

 

关于学习路线,我觉得对于学习者,尤其是初学者来说,非常有用,它的作用就是一幅地图,让你在浩瀚的知识丛林不至于迷失方向,甚至放弃在 99% 的地方。

作为一个过来人,我深知初学者的迷茫和无助,我当初也走了很多弯路。现在有些坑我替大家踩了,分享我总结的学习路线,是希望大家能站在我的肩膀上走的更远更容易些。

 

游戏开发学习路线

关注公众号:《码之有道》,一起聊游戏全栈开发!

1、公众号回复:【教程】获取零基础游戏开发客户端+服务端全套教程。

2、公众号回复:【实战】获取企业级实战项目。

3、公众号回复:【资料】获取大学四年整理的所有自学资料。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/125098.html原文链接:https://javaforall.net

(0)
上一篇 2022年4月19日 下午3:00
下一篇 2022年4月19日 下午3:00


相关推荐

  • 4种进程间通信方式详解

    4种进程间通信方式详解进程间通信有 4 种方式 以下从简单到复杂的方式出场 1 管道 pipe nbsp nbsp 管道是一种具有两个端点的通信通道 一个管道实际上就是只存在在内存中的文件 对这个文件操作需要两个已经打开文件进行 他们代表管道的两端 也叫两个句槟 管道是一种特殊的文件 不属于一种文件系统 而是一种独立的文件系统 有自己的数据结构 根据管道的使用范围划分为无名管道和命名管道 无名管道用于父进程和子进程之间 通

    2026年3月18日
    2
  • 归纳:数据库设计的六个阶段详解(有这一篇就够了)

    归纳:数据库设计的六个阶段详解(有这一篇就够了)数据库设计过程的六个阶段客官进来请坐下 耐心看完收获大按照数据库相关理论数据库的设计阶段分为六步 1 系统需求分析 2 概念结构设计 3 逻辑结构设计 4 数据库物理设计 5 数据库实施 6 数据库运行和维护

    2026年3月19日
    1
  • Eclipse快捷键_10个最高效的快捷键

    1. ctrl+shift+r:打开资源    这可能是所有快捷键组合中最省时间的了。这组快捷键可以让你打开你的工作区中任何一个文件,而你只需要按下文件名或mask名中的前几个字母,比如applic*.xml。美中不足的是这组快捷键并非在所有视图下都能用。2. ctrl+o:快速outline    如果想要查看当前类的方法或某个特定方法,但又不想把代码拉上拉下,也不想使用查找功能的话

    2022年3月10日
    43
  • Chrome内核浏览_三大浏览器内核

    Chrome内核浏览_三大浏览器内核C#开发Chrome内核浏览器(WebKit.net)WebKit.net是对WebKit的.Net封装,使用它.net程序可以非常方便的集成和使用webkit作为加载网页的容器。这里介绍一下怎么用它来显示一个网页这样的一个最简单的功能。第一步:下载WebKit.net的bin文件。别小看这一步,你不一定能下载成功,原因你懂的。WebKit.net的主页是http://webkitdotnet.sourceforge.net/直接下载0.5版本的windowsbin文件地址为:h

    2025年7月7日
    4
  • spring cloud 入门系列五:使用Feign 实现声明式服务调用

    一、SpringCloudFeign概念引入通过前面的随笔,我们了解如何通过SpringCloudribbon进行负责均衡,如何通过SpringCloudHystrix进行服务断路保护,两

    2022年2月16日
    43
  • golang IDEA激活码【最新永久激活】2022.02.09

    (golang IDEA激活码)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~4KDD…

    2022年4月1日
    1.1K

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号