美文网首页
网页开发与游戏开发的区别

网页开发与游戏开发的区别

作者: 凌霄光 | 来源:发表于2018-09-23 02:03 被阅读146次

想学下游戏开发,最近一直在看egret相关的东西。有一些想法。

网页开发

浏览器提供的dom渲染机制,我们可以通过写html和css来描绘ui,浏览器会通过解析dom tree和css tree,最终生成render tree,然后写到显存区域,就是我们看到的网页。

dom tree和css tree有自己的一套机制,像盒模型、浮动、定位等。而且标签的方式也避免了手动调用api创建对象和组合的过程,android的布局也是类似的思路。

元素可以绑定事件,浏览器提供了事件的机制,可以处理用户交互的行为,结合网络请求获取的数据,就可以做一些可以交互的网页应用。

游戏开发

网页游戏的绘制是基于canvas。

canvas是网页中的一块独立绘图区域,可以用api操作具体的每一像素,渲染结果和dom+css相同,但是却没有dom之类的机制,一切都需要手动去绘制,去绘制直线、曲线、圆、矩形、图片等,因为没有css的机制,需要通过不断地刷新来做到视图的更新,刷新的频率就叫帧率。而且因为没有dom元素,所以也没法给具体的元素绑定事件,只能通过判断点击的位置和元素的区域的位置关系来判定和派发事件。

基于原始的canvas api太过麻烦,做游戏开发一般都会选用一个游戏引擎,他做的事我觉得就是在canvas之上实现了一套dom 、css的机制,当然他没有元素和样式,也没有特别复杂的事件交互。但是他会有 Stage、Sprite,会有DisplayObjectContainer和DisplayObject组成的树形结构,类似dom,但又不同,而且基于canvas实现了一套事件绑定的机制,可以做到和dom事件类似的使用方式,极大地简化事件处理。另外游戏中会有对音视频和图片的处理,游戏引擎也都做了封装。

总之,我觉得游戏引擎就是在canvas上实现了一套类似dom机制但又有自己特点的框架。

总结

网页应用需要处理的是显示逻辑、交互逻辑和业务逻辑,而游戏是更复杂的显示逻辑(动画)、以及交互逻辑、游戏逻辑。网页开发的dom +css 和游戏引擎在canvas之上建立起的类似机制,思想上相似之处,使用上有很多的不同。

游戏开发和dom类似但又不同的东西,学习的过程可以对渲染和交互还有ui有更深的理解。

相关文章

  • 网页开发与游戏开发的区别

    想学下游戏开发,最近一直在看egret相关的东西。有一些想法。 网页开发 浏览器提供的dom渲染机制,我们可以通过...

  • 小程序原理

    小程序与普通网页开发的区别 小程序的主要开发语言是 JavaScript,小程序的开发同普通的网页开发相比有很大的...

  • 小程序开发基础

    小程序与普通网页开发的区别 网页开发渲染线程和脚本是一个过程,而小程序二者是分开的,分别运行在不同的线程 网页开发...

  • 微信小程序开发(微信小程序与普通网页开发的区别和联系)

    1. 小程序与普通网页开发的区别 (1)开发语言 小程序的主要开发语言是 JavaScript 小程序的开发同普通...

  • 小程序与普通网页开发的区别以及小程序的执行环境

    小程序与普通网页开发的区别 ​ 小程序的主要开发语言是 JavaScript ,所以通常小程序的开发会被用来同普通...

  • 小程序开发入门

    一:小程序开发与普通网页开发的区别1.1区别 1.2 获取appid 二:项目构成 2.1小程序项目的基本构成 2...

  • 小程序入门

    一、前置知识 1、注册帐号,获取appid。 2、微信开发者工具:调试小程序、公众号 3、与普通网页开发的区别: ...

  • HTML基础

    新的征程 web前端介绍 web前端开发做什么 pc端web开发;移动端web开发;混合app开发;网页游戏/移动...

  • JS原生面试题篇

    1:小程序与普通网页开发的区别? 小程序开发的主要语音是JS。app.json的全局小程序配置,包括了小程序的所有...

  • 微信公众号开发之vue整理

    一、公众号开发与html5移动端开发区别 从前端开发角度上来说,没有什么差别.不一样的有:1)需要网页授权登录,2...

网友评论

      本文标题:网页开发与游戏开发的区别

      本文链接:https://www.haomeiwen.com/subject/galfoftx.html