KlayGE/en

From KlayGE
< KlayGE
Revision as of 09:19, 5 December 2010 by Gongminmin (Talk | contribs)

Jump to: navigation, search

KlayGE is an open source game engine with cross-platform plugin-based architecture. It's started since 2003. The explicit goal of KlayGE is: to arm your engine with cutting-edge technology. It provides a framework to make game development, testing, porting as simple as possible.

Licensing

KlayGE is released under the GPL 2.0 license. In other words, anyone can use it and access to its source code.

Features

Graphics

  • Support DirectX 11, OpenGL 2.0-4.1 and OpenGL ES 2.0.
  • Use fxml as the effect script for any renderable object. It can be exported directly from artist created content.
  • Python script can be dynamic interpreted at run-time. So scripts don’t need to be recompiled after modification.
  • Build terrains by height map technology.
  • Support skinned animation.
  • Hardware occlusion culling
  • Particle system
  • Post processing technology
  • Self-adaptive hardware states cache and deferred update mechanism.
  • Support per-pixel lighting and rendering
  • Distance-based font system, takes advantages from both vector fonts and bitmap fonts.
  • Support procedural texture
  • Support Sub Surface Scattering, which can be used to render translucency materials such as leaf, skin, jade-ware.
  • Support PN Triangles to smooth low polygon mesh at run-time
  • Shading
  • A shader library includes common operations
  • A complete interface abstracted from many low level graphics API
  • Multi-pass rendering.
  • Fully support of programmable shading
  • Multiple input vertex streams is supported
  • Lighting
  • Dynamic lighting
  • Omni-directional shadow mapping

Audio

  • Audio output on many platforms.
  • 3D audio source and Doppler effect.
  • Ogg Vorbis as input format.
  • Streaming playing

Tools

  • Normal map generator, converts height map to normal map.
  • Distance map generator, generates distance map from height map or 3D volume.
  • MeshML export plug in, export models from 3DS Max.
  • OpenGL compatibility checking tool.
  • HDR compressor, compresses both cubemap and 2D HDR textures.
  • Normal map compressor, provides 2:1 or 4:1 compression ratio.
  • Distance-based font generator, converts a vector font to the format that engine uses.
  • FXML2Shader tool, converts a FXML effect script to HLSL or Cg shader.

Programming

  • KlayGE is open sourced. Includes all the source code of engine and tools.
  • An extendable, object-oriented engine written in C++. This architecture can loading commands and resources both statically and dynamically. Easy for porting and debugging.
  • Takes Python as scripting language. Automatically provides support for dynamic data type. Easy for development and cooperating with C++ host.

External links