游戏开发入门
1. 游戏开发概述
大纲
- 游戏技术发展
- 游戏开发流程
- 游戏程序员
目标
- 游戏开发入门者的指路人
内容
- 游戏是如何开发的
- 开发游戏需要掌握的那些技术
- 如何学习技术
成果
- 游戏开发知识体系
- 游戏开发方法与开发流程
- 自身定位与提升
游戏技术的发展
- 原始阶段
-
红白机
红白机 PS,XBOX
- PC单机游戏
4.局域网对战游戏
5.大型多人游戏
- 页游
- 手游
- VR ?AR?
游戏的发展对技术的要求
- 原始的游戏:编程能力和对游戏的认识
- 游戏逐渐复杂,需求多变:程序设计能力、脚本编程技术、引擎技术
- 大型3D游戏:图形图像编程、物理计算技术、动画技术、特效技术、场景及场景管理技术
- 网络游戏:网络通讯技术、下载升级技术、同步技术
游戏开发流程
职业分工
在原始阶段,游戏都是一两个人开发的,即做程序也做美术,同时自己设计游戏。
随着游戏越来越复杂,团队规模越来越庞大,分工逐渐精细,并且对各自领域的专业性研究更加深入。典型如策划、程序、美术...
- 策划
主要工作是编写游戏背景故事,制定游戏规则,设计i游戏交互环节,计算游戏公式,以及整个游戏世界的一切细节等。如剧情、关卡、玩法、数值、系统...
- 美术
负责游戏中一些看得见的事物的表现力,如模型、特效、动画、场景、UI...
- 程序
根据策划设定的规则,驱动美术的表现资源,将游戏实实在在实现在电子设备上的人。具体工作包括实现需求、提供团队内的工具、修复程序中存在的问题、优化基础体验...
程序员只是程序员的吗?不是,我们是游戏程序员,是先有游戏人才有程序员。
游戏开发流程
- 需求产生
- 设计选项
- 程序实现,美术制作,策划配置
- 循环调优
"好游戏是改出来的"
游戏程序员是怎样炼成的
- 编程基础C/C++,数据结构及算法
- 操作系统
- 网络编程原理
- 图形学原理
- 程序设计基础
”一万小时定律,一千小时规律。“
理解原理而不是停留在使用的层面,保持好奇心,了解技术背后的原理,掌握技术的优缺点,而不仅仅是如何使用。
多动手,从小目标到大目标。
想办法把每个技术运用到实际的小demo中尝试和理解。不要一次性提出无法完成的大目标,量力而为,逐步完成。想办法进入业界,从正式项目中吸取经验。
试着理解自己做的每一个工作对游戏的影响。
2. 游戏中的设计模式
大纲
- 设计模式的意义
- 案例开发与分析
为什么要使用设计模式呢?
- 封装和复用:更容易地传承和复用
- 解耦合:更好地与他人配合
- 灵活且避免过度设计:更加灵活地应对需求变化
案例:
有一个炮台会发射炮弹攻击飞机,炮台的炮弹每秒可发射1个,假设目前发射的是激光炮,没有中间的飞行距离的考虑,有50%的几率命中,飞机每3秒钟产生一架。当炮弹命中飞机时,飞机爆炸并消失。整个世界在30秒后结束。
- 在炮台发射炮弹,炮弹命中飞机,炮弹没有命中飞机,飞机产生,飞机杯命中爆炸这些时间点上,在控制台打印信息。
- 可以用定时器,可用一个死循环,不断计算当前时间来计时。
需求变更
在上个世界中战斗变得更加激烈,飞机每分钟会产生2架,飞机在位置(0,100)以及(100,100)的坐标位置上产生,激光炮的位置在(50,0),飞机在y轴上以每秒20的速度向y:0的方向飞行,一旦有飞机飞到y:0则世界终结。提示一下,机关破应该首先射击高y:0更近的飞机而不是更远的。