随笔分类 -  Graphics Engine

摘要: 我们不指望自己的游戏在每一个玩家的机器上,都美仑美奂。 但我们希望自己的游戏,能够流畅的运行在每一个玩家的机器上。 这样至少给了玩家一次体验这个游戏的机会。 如果玩家愿意为这个游戏升级自己的配置,那又何尝不是一件值得让人骄傲的事! 阅读全文
posted @ 2016-03-15 00:32 麒麟子MrKylin 阅读(2023) 评论(1) 推荐(0) 编辑
摘要:最近公司游戏正在准备上线,所以FlasCC也就没有研究了,偶尔有闲功夫,也是玩玩3DMAX和UNITY3D。 感觉不会3DMAX,是一种局限。 回到主题,记录一下镜面反射矩阵的推导。 在用Irrlicht和RTT做镜面效果的时候,用到了反射矩阵。 就是需要把摄相机镜像,渲染一个RT,贴到镜面模型上。这个其实还纠结了许久,因为之前做水面渲染的时候,水面是平的,很好计算摄相机在水面以下的位置。 但... 阅读全文
posted @ 2013-06-15 00:49 麒麟子MrKylin 阅读(2345) 评论(1) 推荐(0) 编辑
摘要:历时两年开发的3D游戏引擎终于演示了,也算是对这两年工作的一个总结。 只是觉得特别别扭的就是演示会上的不善言辞,很多东西都没有说清楚。但还好各位观众都比较满意. 不知不觉半年多没写博客了,也不太习惯啰嗦,上几个图留作记念吧。 场景编辑器 模型材质编辑器 特效编辑器 DEMO截图 感谢公司给了我们机会,让我们能开开心心地造轮子。也感... 阅读全文
posted @ 2011-10-10 21:15 麒麟子MrKylin 阅读(593) 评论(2) 推荐(0) 编辑
摘要:今天做完了光照提交,被法线问题狠狠地纠结了两个小时。现在想来,自己真是很2. 材质系统雏形算是有了,支持FPP和SHADER、材质动画、XML加载。算下来,这系统也做得够久了,把所有时间算起来,估计也有6人*月的样子。反复修改好几次,这次算是在使用上有点长进。其间也收集了不少值得注意的问题。 这些问题在OGRE,Torque等源码里都有所注释,感觉开源代码最大的好处就是注释完整。比许多家酿的东西要好。(至少好认。。。)随笔记录的一些注意事项,贴在此处以备忘在D3D和SM1中.常量总是会被打包成4元素大小. 因此. 在SM1中.我们只能使用INT4或FLOAT4的设置方式.在HLSL中.如果使用 阅读全文
posted @ 2011-03-15 16:10 麒麟子MrKylin 阅读(421) 评论(1) 推荐(1) 编辑
摘要:其基本原理很多例子上有讲到。下面给出一些比较合适的链接 http://developer.nvidia.com/object/cube_map_ogl_tutorial.html NVIDIA官网上的 Opengl Cube texture mapping http://www.zwqxin.com/archives/shaderglsl/review-cube-mapping-shader.html 某位兄弟的个人BLOG。 以上两位都适合OPENGL控。 本文给出一个DX HLSL例子。并解释了反射方向计算的数学模型。希望能给大家一定的帮助。 CUBE映射主要分为两步: 一、在VS中根据法线和观察位置计算反射方向,并且得到观察空间中的反射方向。 反射方向有两种计算方法。 1、在世界坐标系空间中计算,然后再将计算到的反射方向转换到观察空间。 这要求我们转入观察位置。 2、在观察空间中进行计算,此时观察位置已经为0,0,0,于是不需要传入观察位置,并且得到的向量即为所求。本文的代码采用此种方式。 二、用这个反射方向在PS中对CUBE纹理进行采样。 阅读全文
posted @ 2011-01-07 13:36 麒麟子MrKylin 阅读(2697) 评论(5) 推荐(1) 编辑
摘要:第一,了解骨骼结构(Skeletal Structures)和骨层级(Bone Hierarchies):骨骼结构就是连续很多的骨头(Bone)相结合,形成的骨层级。第一个骨头叫做根骨(root bone),是形成骨骼结构的关键点。其它所有的骨骼作为孩子骨(child bone)或者兄弟骨(sibling bone)附加在根骨之上。所谓的“骨”用一个帧(frame)对象表示。在Directx中,用一个D3DXFRAME结构或者X文件中的Frame template来表示帧对象。下面看一下Frame template和D3DXFRAME结构的定义:template Frame{ 3D82AB 阅读全文
posted @ 2009-03-23 21:50 麒麟子MrKylin 阅读(816) 评论(0) 推荐(0) 编辑
摘要:引擎的明天(2001年~) 2001年有许多优秀的3D射击游戏陆续发布,其中一部分采用的是Quake III和Unreal Tournament等现成引擎,如《星际迷航深度空间九:坠落》、《重返德军总部》和《荣誉勋章:盟军进攻》,而更多的则采用的是自己开发的引擎,比较有代表性的包括网络射击游戏《部落2》(Tribes 2)、第一人称射击游戏《马科斯·佩恩》、《红色派系》(Red Faction)和《英雄萨姆》等。 《部落2》采用的是V12引擎,这款引擎虽然无法同Quake III和Unreal Tournament相提并论,但开发者为它制定的许可模式却相当新颖,你只需花上100美元就可以获得引 阅读全文
posted @ 2008-12-28 13:34 麒麟子MrKylin 阅读(568) 评论(0) 推荐(0) 编辑
摘要:引擎的革命(1998年~2000年) 游戏的图像发展到《虚幻》这里已经达到了一个天花板的高度,接下去的发展方向很明显不可能再朝着视觉方面进行下去。前面说过,引擎技术对于游戏的作用并不仅局限于画面,它还影响到游戏的整体风格,例如,所有采用Doom引擎制作的游戏,无论是《异教徒》还是《毁灭巫师》,都有着相似的内容,甚至连情节设定都如出一辙。玩家开始对端着枪跑来跑去的单调模式感到厌倦,开发者们不得不从其它方面寻求突破,由此掀起了第一人称射击游戏的一个新的高潮。 两部划时代的作品同时出现在1998年——Valve公司的《半条命》(Half-Life)和LookingGlass工作室的《神偷:暗黑计划》 阅读全文
posted @ 2008-12-28 13:32 麒麟子MrKylin 阅读(640) 评论(0) 推荐(0) 编辑
摘要:引擎的转变(1994年~1997年) 在引擎的进化过程中,肯·西尔弗曼于1994年为3D Realms公司开发的Build引擎是一个重要的里程碑,Build引擎的“肉身”就是那款家喻户晓的《毁灭公爵》(Duke Nukem 3D)。《毁灭公爵》已经具备了今天第一人称射击游戏的所有标准内容,如跳跃、360度环视以及下蹲和游泳等特性,此外还把《异教徒》里的飞行换成了喷气背包,甚至加入了角色缩小等令人耳目一新的内容。在Build引擎的基础上先后诞生过14款游戏,例如《农夫也疯狂》(Redneck Rampage)、《阴影武士》(Shadow Warrior)和《血兆》(Blood)等,还有台湾艾生资 阅读全文
posted @ 2008-12-28 13:31 麒麟子MrKylin 阅读(536) 评论(0) 推荐(0) 编辑
摘要:二、引擎的进化 曾经有一段时期,游戏开发者关心的只是如何尽量多地开发出新的游戏并把它们推销给玩家。尽管那时的游戏大多简单粗糙,但每款游戏的平均开发周期也要达到8到10个月以上,这一方面是由于技术的原因,另一方面则是因为几乎每款游戏都要从头编写代码,造成了大量的重复劳动。渐渐地,一些有经验的开发者摸索出了一条偷懒的方法,他们借用上一款类似题材的游戏中的部分代码作为新游戏的基本框架,以节省开发时间和开发费用。根据马老先生的生产力学说,单位产品的成本因生产力水平的提高而降低,自动化程度较高的手工业者最终将把那些生产力低下的手工业者淘汰出局,引擎的概念就是在这种机器化作业的背景下诞生的。 每一款游戏都 阅读全文
posted @ 2008-12-28 13:29 麒麟子MrKylin 阅读(487) 评论(0) 推荐(0) 编辑
摘要:在阅读各种游戏介绍的时候我们常常会碰见“引擎”(Engine)这个单词,引擎在游戏中究竟起着什么样的作用?它的进化对于游戏的发展产生了哪些影响?希望下面这篇文章能为大家释疑。以希望能够帮助一些刚进入游戏行业的小菜,和未进入游戏行业的大菜们!一、什么是引擎 我们可以把游戏的引擎比作赛车的引擎,大家知道,引擎是赛车的心脏,决定着赛车的性能和稳定性,赛车的速度、操纵感这些直接与车手相关的指标都是建立在引擎的基础上的。游戏也是如此,玩家所体验到的剧情、关卡、美工、音乐、操作等内容都是由游戏的引擎直接控制的,它扮演着中场发动机的角色,把游戏中的所有元素捆绑在一起,在后台指挥它们同时、有序地工作。简单地说 阅读全文
posted @ 2008-12-28 13:28 麒麟子MrKylin 阅读(1003) 评论(0) 推荐(0) 编辑
摘要:http://softwarecommunity-zho.intel.com/articles/zho/32028.htm介绍一种简单而有效的多线程方案,能加速大量的3D模型的动画渲染。此方案通过使用线程池、双缓冲、间隔更新等方法显著提升了骨骼动画的性能。尤其值得一提的是,此方案可以使基于CPU的骨骼动画在多核系统上获得与基于GPU动画接近的性能,从而在某些情况下可成为除基于GPU动画外的另一种良好选择。 阅读全文
posted @ 2008-12-21 21:15 麒麟子MrKylin 阅读(373) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示