Difference between revisions of "KlayGE/en"

From KlayGE
Jump to: navigation, search
 
(18 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Languages}}
+
'''[[KlayGE]]''' is a [[Platforms|cross-platform]] open source game engine with 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, [[Regression testing | testing]], porting as simple as possible.  
 
+
'''[[KlayGE]]''' is a cross-platform open source game engine with 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 [[licensing|license]]. In other words, anyone can use it and access to its source code.
+
  
 
== Features ==
 
== Features ==
 
=== Graphics ===
 
=== Graphics ===
* Support DirectX 11, OpenGL 2.0-4.1 and OpenGL ES 2.0.
+
* [[Deferred rendering]]-based
* Use [[fxml]] as the effect script for any renderable object. It can be exported directly from artist created content.
+
* Support Direct3D 11-12, OpenGL 2.0-4.5 and OpenGL ES 2.0-3.2.
 +
* 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.
 
* 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.
 
* Build [[terrains]] by height map technology.
 
* Support skinned animation.
 
* Support skinned animation.
* Hardware occlusion culling
+
* Hardware occlusion culling.
* [[Particle system]]
+
* [[Particle system]].
* [[Post processing]] technology
+
* [[Post process|Post processing]] technology.
 
* Self-adaptive hardware states cache and deferred update mechanism.
 
* Self-adaptive hardware states cache and deferred update mechanism.
* Support per-pixel lighting and rendering
+
* Support per-pixel lighting and rendering.
 
* Distance-based font system, takes advantages from both vector fonts and bitmap fonts.
 
* Distance-based font system, takes advantages from both vector fonts and bitmap fonts.
* Support [[procedural texture]]
+
* Support [[procedural texture]].
* Support [[Sub Surface Scattering]], which can be used to render translucency materials such as leaf, skin, jade-ware.
+
* 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
+
* Support [[Phong tessellation]] to smooth low polygon mesh at run-time.
 +
* A [[material system]] for [[deferred rendering]]
 
* Shading
 
* Shading
 
:* A shader library includes common operations
 
:* A shader library includes common operations
Line 31: Line 28:
 
:* Dynamic lighting
 
:* Dynamic lighting
 
:* Omni-directional shadow mapping
 
:* Omni-directional shadow mapping
 +
:* Realtime indirect lighting
 +
:* Environment lighting
 +
:* Area lighting
  
 
=== Audio ===
 
=== Audio ===
Line 46: Line 46:
 
* Normal map compressor, provides 2:1 or 4:1 compression ratio.
 
* 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.
 
* 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.
+
* FXML2Shader tool, converts a [[FXML]] effect script to HLSL shader.
 +
* Color Grading texture generator.
  
 
=== Programming ===
 
=== Programming ===
Line 52: Line 53:
 
* An extendable, object-oriented engine written in C++. This architecture can loading commands and resources both statically and dynamically. Easy for porting and debugging.
 
* 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.
 
* Takes Python as scripting language. Automatically provides support for dynamic data type. Easy for development and cooperating with C++ host.
 +
* Native code on every platforms.
  
 
== External links ==
 
== External links ==
Line 57: Line 59:
 
*[http://www.klayge.org/gallery/ KlayGE's Gallery]
 
*[http://www.klayge.org/gallery/ KlayGE's Gallery]
  
{{Languages}}
+
[[zh:KlayGE]]
 +
[[ru:KlayGE/ru]]

Latest revision as of 01:02, 25 December 2016

KlayGE is a cross-platform open source game engine with 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.

Features

Graphics

  • Deferred rendering-based
  • Support Direct3D 11-12, OpenGL 2.0-4.5 and OpenGL ES 2.0-3.2.
  • 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 Phong tessellation to smooth low polygon mesh at run-time.
  • A material system for deferred rendering
  • 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
  • Realtime indirect lighting
  • Environment lighting
  • Area lighting

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 shader.
  • Color Grading texture generator.

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.
  • Native code on every platforms.

External links