我所遭遇过的游戏中间件---SpeedTree SpeedTree是一个专门用于渲染植被的中间件,并提供了一套完善的植物编辑工具.在它官方提供的DEMO中,你会看到高度逼真的树木和植物,在风的影响下树影婆娑,十分精美.感觉它的Shader写到了极致,让我有种叹为观止的感觉.SpeedTree有两大特点,其一就是牛B的Shader,可以渲染出美伦美奂的植物,其二是高效的场景植被管理引擎,可以高效地对场景植物进行剔除. 先说其Shader.看过网上几篇关于SpeedTree的文章,将其图形数据分成三…
我所遭遇过的游戏中间件---nvDXTLib nvDXTLib是Nvidia提供的一套用于DXT纹理压缩SDK.接口十分简洁,就是提供了几个纹理压缩的函数,其中我使用最多的函数是: DXTLIB_API NV_ERROR_CODE nvDXTcompress( const unsigned char * srcImage, size_t width, size_t height, size_t byte_pitch, nvPixelOrder pixelOrder, nvCompressionO…
我所遭遇过的游戏中间件---HumanIK Autodesk HumanIK游戏中间件,为游戏创建更加可信.真实的角色动画.该中间件的全身逆向运动(FBIK)系统支持角色真实地与所在环境及其它角色进行交互.通过动态地将FBIK信息分层置于运行中的现有视频中,创建.修改和重新利用角色动画,以此来节省动画师宝贵的时间. 以上语句拷贝自HumanIK广告手册.所谓IK(反向动力学)就是相反于正常的骨骼动作播放,提供骨架上某几根骨骼的变换状态,让骨架动态的摆出合理的位置.举个具体应用的例子,如果要实现两…
我所遭遇过的游戏中间件--Kynapse Autodesk Kynapse游戏中间件是一款面向游戏开发.非玩家控制角色实时模拟的领先的人工智能解决方案.Kynapse具有先进的路径查找功能,比如三维路径查找.动态环境评估,并支持复杂地形中的群体路径查找.高效的制作工具包以及专为简便集成和自定义而设计的结构可帮助游戏开发人员简化创建顶级控制台游戏和 PC游戏的过程.这项高性能的游戏人工智能技术能够帮助游戏开发者在复杂的地形中,模拟先进的动态三维自动寻路.环境感知与大规模群体移动.其主要功能有:  …
我所遭遇过的游戏中间件---Scaleform Scaleform帮助开发人员利用现代系统的三维硬件加速性能创建电影品质的菜单.游戏内HUD,动画纹理.迷你游戏以及移动游戏与应用.Scaleform作为一个可视化UI设计的中间件解决方案,其高性能已被充分证明,有了它,开发者通过Adobe Flash Studio可以高效率.低成本地创建富有现代感的GPU加速动画用户界面和矢量图形,而无需学习新工具的使用或者动画处理方法.Scaleform的另外一个名子叫GFX,在本文中有时使用Scaleform…
我所遭遇过的游戏中间件---Redux 一.关于Redux Substance Redux 是一款纹理处理软件加中间件,专门用于纹理生成和压缩.具其用户指南介绍,它能够对纹理集进行优化,可以将现有压缩算法的性能提高50%或更多.其压缩方式可是无损压缩,也可以是无损压缩.压缩时可以由用户自定义压缩比和图像质量. Redux可以针对批量纹理文件进行压缩打包.操作流程是新建一个Project项目,为该项目导入若干个纹理文件,可以设置每一个纹理的压缩参数.最后导出压缩文件.Redux可以对多种格式的图像…
我所遭遇过的游戏中间件--Apex Apex是PhysX的扩展中间件,它是在PhysX的基础上封装了一层.用于实现布料,粒子,破碎这三种物理效果.我只研究其布料处理.使用Apex做物理最大的好处是:它的布料可以即受物理影响,又受骨骼蒙皮的影响.物理布料有很大的不确定性,你无法知道在做了一套动作后,布料的模拟还是否正常.然而有了骨骼蒙皮的影响,就给布料带来确定性.在PhysX的Max导出插件中,美工可以设置布料上每一个顶点受物理影响的范围.运算过程应该是先对布料上的点做骨骼蒙皮运算,再做物理模拟.…
我所遭遇过的游戏中间件--PhysX PhysX现在是Nvidia的物理中间件.其特点是简练且功能强大.当我最初拿到PHYSX的SDK时,就发现这个物理中间件比Havok要小很多,但该有的功能都有,甚至有软体softbody,这是Havok没有的功能.而后我便从Havok的坑跳到了PhysX的坑里.下面将我在PhysX里碰到的坑一一讲述下. (1)Max导出插件      PhysX的Max导出插件做的不如Havok,最缺少的功能是无法对导出的模型进行矩阵变换.要知道Max的坐标系为Z轴向上右手…
我所遭遇过的游戏中间件--Havok Havok是我接触的第一款游戏中间件,那是在五,六年前,我刚刚毕业,对游戏开发还是个菜鸟.我记得先是对游戏场景中的地形和其他静态物体生成刚体,然后做角色的Ragdoll就是模拟人死之后顺着地形躺下,然后又做车辆模拟,后来还做过破碎.下面先一一枚举下我做的事情:      (1)地形刚体是每次场景加载时实时生成的.      (2)场景中的所有静态物体生成一个巨大的组合刚体,每一个静态物体都是刚体的一个Shape,然后将该刚体保存到文件中.      (3)创…
使用Flash做游戏界面的另一种方式是通过Abode提供flash.ocx处理Flash界面.将Flash图像通过GDI绘制出来后,再将图像数据拷贝到一个D3D的纹理结构中,最后由引擎的D3D接口进行渲染.用它来做游戏UI界面的好处就是方便,快捷.做出来的Flash在Abode的播放器中什么样,那么在游戏客户端中的就是什么样.不用担心什么显示不一致,脚本不支持之类的问题.另一方面,FlashOcx对AS脚本的处理效率比Scaleform强得多.但最大的问题就是渲染效率,毕竟需要做大量的像素拷贝工…