用C++实现跨平台游戏开发之Irrlicht引擎
一.导言
Irrlicht engine是一个用C++编写的高性能实时3D引擎,可应用于C++程序或。网络语言。通过使用Direct3D(Windows平台)、OpenGL 1.2或者自己的软件着色程序,引擎可以完全跨平台。虽然它是开源的,但Irrlicht库提供了商业3D引擎上可以找到的艺术功能,如动态阴影、粒子系统、角色动画、室内和室外技术、碰撞检测等等。
Irrlicht是德国童话中一种动物的名字。它会发光,会飞,大多数沼泽附近都能找到。“Irrlicht”这个词是两个德语词(“irr”的意思是疯狂;而“Licht”的意思是光)。在英语中,它被翻译成“鬼火”。
Irrlicht非常幸运地得到了一个庞大而活跃的开发团队的支持,这个团队拥有大量的项目。不过由于Irrlicht主要由Nikolaus Gebhardt设计,所以游戏在设计上非常一致。你可以在网上随处找到Irrlicht的增强程序,如可选地形生成器、门户生成器、导出器、世界层生成器、相关教程和编辑器等。此外,它独立创建绑定到Java,Perl,Ruby,BASIC,Python,LUA甚至更多的语言。最重要的是,它是完全免费的。
二,不公平特征
在深入分析API之前,请先让我更具体地介绍一下Irrlicht为3D游戏开发者提供了哪些功能:
可以在Linux和Windows 98、ME、NT、2000和XP(MacOS在计划中)上运行的引擎
为Direct3D 8生成器或Direct3D 9生成器(可选)提供了抗锯齿支持
可更换皮肤的GUI环境(包括带有金属纹理的冷色调皮肤)为一些老式的对话框增加了美丽的外观。
场景管理系统,允许室内/室外无缝转换
具有骨骼和变形目标动画功能的角色动画系统。
一个特效系统,包括粒子效果(雨、烟、火、雪等。)、公告板、光照贴图、环境、贴图、模板缓冲阴影、雾、纹理动画、视差贴图、凹凸贴图等等。
内置材质支持,包括对像素和顶点着色器版本1.1到3.0、ARB片段和顶点程序以及HLSL(GLSL正在计划中)的支持
。NET语言绑定,这使得引擎对所有人都可用。NET语言,如C#、可视化Basic.NET和Delphi.NET。
一个内置的flat * vertical软件生成器,具有z- buffer、Gouraud shadow、alpha混合和透明度以及快速2D绘制等功能(参见图2)。
您期待已久的2D绘图功能,如阿尔法混合,位图复制的基础上关键颜色,字体绘制,以及混合三维和2D图形。
可以直接导入常用的建模文件格式:Maya、3DStudio Max、COLLADA、DeleD、Milkshape、Quake 3 levels、Quake2 models、DirectX、Pulsar、My3DTools、FSRad和地图学商店。
可以直接从BMP,PNG,Photoshop,JPEG,Targa和PCX导入纹理
快速易用的碰撞检测和响应
针对快速3D操作和容器模板库进行了优化。
直接读取档案(可能是压缩的,比如。zip文件)
集成了一个快速XML解析器。
为简单的本地化开发提供Unicode支持
位律师回复
0条评论