本案例旨在使非游戏开发人员理解游戏和游戏开发的模式,不适用于实际生产
本案例使用浏览器平台,以js控制dom元素的方式讲解游戏,旨在降低平台跨度,易于理解,"游戏高手"请不要装逼
本案例并非真正的游戏开发过程,仅借助dom渲染引擎来给非游戏开发人员讲解游戏
普通的游戏开发教程更多的是在引擎API上的教学,你学完了会用,但是却不知道在这API之下究竟发生了什么
而在本案例中使用dom渲染引擎作为根本,并带大家使用最基本的js语法从0封装和游戏引擎类似的接口,从而达到让dom技术栈人员更加容易理解游戏开发的模式,因为每一个接口都是由你亲自封装,而接口的底层,恰恰是你熟悉的东西, 就好像带你实现了一个简单的基于dom渲染的游戏引擎,学习完本案例之后再去学习其他的游戏引擎,你就算不看源码也能猜出那些API的原理是什么
学习本案例需要的预备知识:html
javascript
面向对象编程概念
学习本案例前,请先记住以下概念,在之后的学习过程中,你会发现,还真是这么回事:
游戏可抽象为:输入 + 循环 + 输出
输入:鼠标、键盘、陀螺仪、手柄、ar/vr、摄像头、麦克风等一切可以获取信息的设备
循环:游戏主循环, 数据更新+渲染更新
输出:渲染,对应用户看到的画面,声音等
本案例使用以下模拟器模拟
本案例使用以下html模版
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
<title>00.前言</title>
<style>
html, body {
margin: 0;
padding: 0;
width: 100%;
height: 100%;
overflow: hidden;
}
</style>
</head>
<body>
</body>
</html>