读《game engine architecture》有感

标签: game engine architecture | 发表时间:2011-02-24 19:23 | 作者:ustc_msra_ase 启鑫
出处:http://www.cnblogs.com/

最近在看一本叫做《game engine architecture》的书,这本书从很细,很具体的讲解现在游戏引擎的体系结构。本书的亮点:1.讲解现代游戏引擎架构,拥有非常新的实例。包括作者自己公司的引擎和商业引擎例如Unreal的实例。2.清楚的讲解实现细节。代码少而思想多,往往一段话就可以让你了解某个部分的实现--(来自豆瓣上的点评)。下面来讲讲我的看法。

两星期前我没有涉足过game的任何东西,对于编程也是一知半解。凭着自己的热情和对图形编程等的兴趣开始了游戏引擎体系结构的学习。它给我的第一感觉是这个一个很庞大的软件,涉及到的内容绝对可以用“相当丰富”来形容。下面是我从很多资料中得到的这个引擎大概的容貌:

 

从这幅图就可以看出来这个软件是多么的给力啊。继续看每一个部分简介的时候,发现里面涉及的知识包括有图形学,人工智能,数学,物理,美术等的知识。这本书就是从下面开始往上讲各部分的内容。

今天来稍微讲一下书中的第五章关于内存管理方面的知识,内存主要从两方面来影响系统的性能,1.dynamic memory allocation,主要体现在malloc()和c++中的new关键字上,由于它是heap形式的分配,由于1它要适应各种大小的分配方式,势必会影响系统的性能;2某些操作系统调用malloc()等的时候,会进入内核态,然后再回来,这样就增加了相应的消耗。但是这些操作又是不可避免的,那么怎么优化呢?方法很多,想具体了解请看书的第五章第二节。2.memory access patterns,主要体现在内存的碎片上。于是就要在第一个因素解决的前提下,进行消除碎片的工作。具体的方法见书。

从这个小点就可以看到这本书是何等的详细,细致,想看这本书的话,可以到:http://books.google.com/books?id=LJ20tsePKk4C&printsec=frontcover&dq=Game+Engine+Architecture&hl=zh-CN&ei=RT9mTZrnKsrirAeNh9naCg&sa=X&oi=book_result&ct=result&resnum=1&ved=0CCsQ6AEwAA#v=onepage&q&f=false。但是从这几天学习的情况来看的话,只是一味的看书还是不行的,需要找一个开源的引擎来学习一下,推荐irrlicht,可以到:http://irrlicht.sourceforge.net/ 下载,可以到http://baike.baidu.com/view/623466.htm看一下简介。里面有源代码,大家可以学习一下。

                                                              --by xiaoming

作者: ustc_msra_ase 发表于 2011-02-24 19:23 原文链接

评论: 0 查看评论 发表评论


最新新闻:
· Android 前景(2011-02-24 17:56)
· 盛大传奇被侵权案获解决 涉事公司赔偿300万(2011-02-24 17:54)
· eWeek:十大难题困扰Windows 7(2011-02-24 17:53)
· 关于iPad 2的12个传言:或于4月开售(2011-02-24 17:51)
· Firefox 4 Beta 12不是终结者(2011-02-24 17:50)

编辑推荐:Google前女软件工程师分享的工作经历

网站导航:博客园首页  我的园子  新闻  闪存  小组  博问  知识库

相关 [game engine architecture] 推荐:

读《game engine architecture》有感

- 启鑫 - 博客园-首页原创精华区
最近在看一本叫做《game engine architecture》的书,这本书从很细,很具体的讲解现在游戏引擎的体系结构. 本书的亮点:1.讲解现代游戏引擎架构,拥有非常新的实例. 包括作者自己公司的引擎和商业引擎例如Unreal的实例. 代码少而思想多,往往一段话就可以让你了解某个部分的实现--(来自豆瓣上的点评).

Facebook’s architecture(转)

- Adam - 淘宝JAVA中间件团队博客
Facebook’s HipHop [1] then converts it to C++ and compiles it using g++, thus providing a high performance templating and Web logic execution layer. Some of these services are implemented in PHP, C++ or Java depending on service requirements (some other languages are probably used…).

译|High-Performance Server Architecture

- - 掘金 架构
本文的目的是分享我多年来关于如何开发某种应用程序的一些想法,对于这种应用程序,术语“服务”只是一个无力的近似称呼. 更准确地说,将写的与一大类程序有关,这些程序旨每秒处理大量离散的消息或请求. 网络服务通常最适合此定义,但从某种意义上讲,实际上并非所有的程序都是服务. 但是,由于“高性能请求处理程序”是很糟糕的标题,为简单起见,倒不如叫“服务”万事大吉.

浅析App Engine

- - 搜索研发部官方博客
在国内外,云计算正在大步的走向商业化的道路,也得到了越来越多公司的重视. 其中平台即服务(Platform-as-a-Service  PaaS)已经称为业界探讨云计算的热点方式之一,采用PaaS模式来构建应用运行平台App Engine是一种重要的实现方式. 本文主要是对App Engine的背景、特点、需求等进行分析整理,并据此对业界主要的App Engine进行了调研分析.

Gird Engine 是什么?

- - 博客园_iTech's Blog
Gird Engine 指的是SGE(Sun Gird Engine),是一个开源免费的batch-queuing 系统用来对分布式资源的管理. 典型地他将被应用于计算机farm和高性能计算cluster,用来接收,schedule,分发和管理远程和分布式的大量的独立,并行的非交互的jobs,他也可以管理和schedule分布式资源的分配,例如处理器,内存,硬盘和软件license.

[Architecture] MVP, MVC, MVVM, 傻傻分不清楚~

- Amo - 點部落-小朱® 的技術隨手寫

LAKE LUGANO 湖畔住宅 / JM ARCHITECTURE

- Discoverer - 60designwebpick
位于 LUGANO 湖湖畔山坡上的两层别墅住宅,由意大利的 JM ARCHITECTURE 事务所设计. 一个圆角多边形玻璃房在地面之上的层,包含生活区、厨房、餐厅及仓储空间. 卧室、浴室和车库在半地下较低的层,每一个层级都有与其密切关联的独立室外空间. 住宅的两个层级都被庭院所包围,在较高层级的玻璃房之中可以欣赏背靠山坡的景色,以及透过庭院俯瞰 LUGANO 湖.

Google App Engine应用大全

- 桃仁 - iGFW
之前写过一篇《利用Micolog在GAE上搭建个人免费博客》,简单介绍了google app engine的一些简单情况. 现在把gae上的一些应用整合了一下. 分了几大类,包括了开源的GAE应用程序等等. 一是方便自己后续的使用和查找,另一方面也方便那些需要的人. 示例:http://gae-django-cms.appspot.com/.

Google Apps Engine支持SQL

- wang - Solidot
Google的云计算平台Apps Engine宣布支持关系型数据库服务Google Cloud SQL. Cloud SQL是基于开源的MySQL. 此前Apps Engine只支持基于Google File System和BigTable数据库的schemaless数据存储,提供了类SQL的查询语言GQL,但不支持关系功能,例如在同一查询中加入和过滤结果,或者是过滤子查询结果.