Home - Forums - Documentation - Gallery - Bugs
(Putting temporarily the whole page, assuming it is better than an obsolete page)
Line 1: Line 1:
== CS ==
== CS ==
-
* Portability
 
-
* Highly platform independent with good platform abstraction. Supports GNU/Linux, OSX and Windows.
 
-
* Support of a wide range of compilers and IDE, including gcc, MinGW/MSYS, Cygwin, Visual C++ 8 & 9.
 
-
* Written in standard C++ using very few non-standard extensions.
 
-
* Self contained so that many modules requires no or few external dependencies.
 
-
* File system abstraction layer, VFS, that handles both physical files on disk and files within ZIP files, giving virtual layout independent from platform and physical layout.
 
-
* Abstracted configuration layer with support for settings in configuration file, system dependent storage such as the registry and command line.
 
-
* Modularity
+
* Portability
-
* Modularized using a lightweight component framework, SCF, based upon the COM model. Components can be easily loaded or switched.
+
** Highly platform independent with good platform abstraction. Supports GNU/Linux, OSX and Windows.
-
* Bindings for other programming languages through SWIG: Java, Python, Perl.
+
** Support of a wide range of compilers and IDE, including gcc, MinGW/MSYS, Cygwin, Visual C++ 8 & 9.
-
* All subsystems easily extendable for new file formats.
+
** Written in standard C++ using very few non-standard extensions.
 +
** Self contained so that many modules requires no or few external dependencies.
 +
** File system abstraction layer, VFS, that handles both physical files on disk and files within ZIP files, giving virtual layout independent from platform and physical layout.
 +
** Abstracted configuration layer with support for settings in configuration file, system dependent storage such as the registry and command line.
-
* Rendering & Lighting
+
* Modularity
-
* OpenGL-based engine, supports hardware accelerated rendering on all supported platforms and cards from all well known vendors.
+
** Modularized using a lightweight component framework, SCF, based upon the COM model. Components can be easily loaded or switched.
-
* Rendering loops for custom rendering of objects.
+
** Bindings for other programming languages through SWIG: Java, Python, Perl.
-
* Static, pseudo-dynamic and dynamic lights. Statically and dynamically lit objects can be combined.
+
** All subsystems easily extendable for new file formats.
-
* Shadow map shadows.
+
-
* Multiple render targets.
+
-
* Rendering to textures.
+
-
* Shaders
+
* Rendering & Lighting
-
* Can be written in Cg, ARB, and GLSL. Shader description and mappings are defined in a XML compliant language.
+
** OpenGL-based engine, supports hardware accelerated rendering on all supported platforms and cards from all well known vendors.
-
* Support for multiple passes, vertex and fragment programs. Light selection and multiple lights in one pass possible.
+
** Rendering loops for custom rendering of objects.
-
* Node-based system for combination of shaders and post-processing effects.
+
** Static, pseudo-dynamic and dynamic lights. Statically and dynamically lit objects can be combined.
-
* HDR rendering, tone mapping and eye adaptation.
+
** Shadow map shadows.
-
* Fallback system of shader techniques for hardware compatibility.
+
** Multiple render targets.
-
* Cache storage of compiled shaders for faster loading.
+
** Rendering to textures.
-
* Library of available shaders and post-processing effects: diffuse, specular, bump map, glow, parallax, fur, bloom, blur, water, glass, and many others.
+
-
* Automatic environment mapping.
+
-
* Scene & Level Of Detail Management
+
* Shaders
-
* Decomposition of a world in sectors with portals connecting them. Portals can be used for effects such as LOD management, streamed loading or space warping.
+
** Can be written in Cg, ARB, and GLSL. Shader description and mappings are defined in a XML compliant language.
-
* Two different cullers: frustum culling (Frustvis), and dPVS (Dynavis), which also does software occlusion culling.
+
** Support for multiple passes, vertex and fragment programs. Light selection and multiple lights in one pass possible.
-
* General system for static LOD on all types of meshes.
+
** Node-based system for combination of shaders and post-processing effects.
-
* Impostors for replacement of far meshes with a 2D object.
+
** HDR rendering, tone mapping and eye adaptation.
-
* Threaded loader for streamed loading of levels and objects.
+
** Fallback system of shader techniques for hardware compatibility.
-
* Instanciation of meshes and objects.
+
** Cache storage of compiled shaders for faster loading.
 +
** Library of available shaders and post-processing effects: diffuse, specular, bump map, glow, parallax, fur, bloom, blur, water, glass, and many others.
 +
** Automatic environment mapping.
-
* Meshes
+
* Scene & Level Of Detail Management
-
* Many different type of meshes: general triangle mesh with skeletal animation, morphing and sockets, cal3d, sprite 2D, sprite 3D, ocean,...
+
** Decomposition of a world in sectors with portals connecting them. Portals can be used for effects such as LOD management, streamed loading or space warping.
-
* Terrain mesh with paging and splatting.
+
** Two different cullers: frustum culling (Frustvis), and dPVS (Dynavis), which also does software occlusion culling.
-
* Foliage system to dress up a scene with objects such as flora and rocks,...
+
** General system for static LOD on all types of meshes.
-
* Decals to be added on top of other meshes.
+
** Impostors for replacement of far meshes with a 2D object.
-
* Configurable and extensible particle system mesh with billboards, emitters, physical effectors,...
+
** Threaded loader for streamed loading of levels and objects.
-
* Halos and lens flares.
+
** Instanciation of meshes and objects.
-
* Automatic triangulation of shapes.
+
-
* Animation
+
* Meshes
-
* Specialized mesh for advanced skeletal animation with animation blending tree, weight skinning, morphing, and sockets.
+
** Many different type of meshes: general triangle mesh with skeletal animation, morphing and sockets, cal3d, sprite 2D, sprite 3D, ocean,...
-
* Many types of animation nodes can be combined to generate dynamically complex animations: multi-blending, Finite State Machine, random, priority, LookAt, speed (time warping).
+
** Terrain mesh with paging and splatting.
-
* Ragdoll animation and animation of hairs & equipment.
+
** Foliage system to dress up a scene with objects such as flora and rocks,...
-
* Skeletal animation and morphing for the general triangle mesh.
+
** Decals to be added on top of other meshes.
-
* Generic animation system for triggering of time events, moving of objects, fade in/out.
+
** Configurable and extensible particle system mesh with billboards, emitters, physical effectors,...
 +
** Halos and lens flares.
 +
** Automatic triangulation of shapes.
-
* Audio
+
* Animation
-
* 2D and 3D sounds with OpenAL.
+
** Specialized mesh for advanced skeletal animation with animation blending tree, weight skinning, morphing, and sockets.
-
* Audio codecs: speex, ogg, wav (8- and 16-bit PCM).
+
** Many types of animation nodes can be combined to generate dynamically complex animations: multi-blending, Finite State Machine, random, priority, LookAt, speed (time warping).
-
* Provides both one-time playing of effects and streaming playing in the background for music.
+
** Ragdoll animation and animation of hairs & equipment.
 +
** Skeletal animation and morphing for the general triangle mesh.
 +
** Generic animation system for triggering of time events, moving of objects, fade in/out.
-
* Physics & Collisions
+
* Audio
-
* Physics of rigid bodies and joints, made through a wrapper for two physics libraries: Bullet and ODE.
+
** 2D and 3D sounds with OpenAL.
-
* Support of kinematic bodies for interaction between classical animation and the physical simulation.
+
** Audio codecs: speex, ogg, wav (8- and 16-bit PCM).
-
* Debug plugin to visualize the physical simulation.
+
** Provides both one-time playing of effects and streaming playing in the background for music.
-
* Simplified collision detection when you don't need the full dynamics simulation.
+
-
* Data Representation
+
* Physics & Collisions
-
* XML language for the description of each object and plugin of the whole CS. XML files can be set binary for faster loading.
+
** Physics of rigid bodies and joints, made through a wrapper for two physics libraries: Bullet and ODE.
-
* Procedural, dynamic and animated textures.
+
** Support of kinematic bodies for interaction between classical animation and the physical simulation.
-
* Support for many image formats: png, jpg, dds, bmp, gif, tga, mng, jng, (binary) alpha, transparency, non 2n sized images,...
+
** Debug plugin to visualize the physical simulation.
-
* Importers for many 3D file format: Blender through blender2crystal, 3D Studio Max, Maya, COLLADA, and model importers for common file formats such as 3ds, cal3d and md2.
+
** Simplified collision detection when you don't need the full dynamics simulation.
-
* User Interface
+
* Data Representation
-
* Event system & peripherals: mouse, joystick, keyboard.
+
** XML language for the description of each object and plugin of the whole CS. XML files can be set binary for faster loading.
-
* Graphical user interface system through CEGUI.
+
** Procedural, dynamic and animated textures.
-
* User interface widgets for wxWidgets.
+
** Support for many image formats: png, jpg, dds, bmp, gif, tga, mng, jng, (binary) alpha, transparency, non 2n sized images,...
-
* Text localization.
+
** Importers for many 3D file format: Blender through blender2crystal, 3D Studio Max, Maya, COLLADA, and model importers for common file formats such as 3ds, cal3d and md2.
-
* Plugin fo easy video recording and screenshots.
+
-
* Font servers, FreeType2 and glyphs fonts.
+
-
* Project Management
+
* User Interface
-
* Debugging tools: generic plugin for visual debugging of scenes, support for Valgrind.
+
** Event system & peripherals: mouse, joystick, keyboard.
-
* Scripts for generation of new projects.
+
** Graphical user interface system through CEGUI.
-
* Easy compilation and customization of the whole project thanks to Jam.
+
** User interface widgets for wxWidgets.
 +
** Text localization.
 +
** Plugin fo easy video recording and screenshots.
 +
** Font servers, FreeType2 and glyphs fonts.
 +
* Project Management
 +
** Debugging tools: generic plugin for visual debugging of scenes, support for Valgrind.
 +
** Scripts for generation of new projects.
 +
** Easy compilation and customization of the whole project thanks to Jam.
== CEL ==
== CEL ==
-
* Entity System
+
* Entity System
-
* Each object in CEL is an entity. Entities are defined by adding them a list of property classes that defines their attributes and their behavior.
+
** Each object in CEL is an entity. Entities are defined by adding them a list of property classes that defines their attributes and their behavior.
-
* Generic event system for communication between property classes.
+
** Generic event system for communication between property classes.
-
* Persistence layer for saving and loading world states.
+
** Persistence layer for saving and loading world states.
-
* Runtime Package Environment
+
* Runtime Package Environment
-
* CELStart: generic executable for all CELStart applications, only data files have to be installed.
+
** CELStart: generic executable for all CELStart applications, only data files have to be installed.
-
* The whole logic may be written with bindings for Python, or in a XML scripting language.
+
** The whole logic may be written with bindings for Python, or in a XML scripting language.
-
* World Management
+
* World Management
-
* Avatar and Non Player Character management: synchronization of the user actions with the mesh, its position, its orientation and its collisions.
+
** Avatar and Non Player Character management: synchronization of the user actions with the mesh, its position, its orientation and its collisions.
-
* Camera management with many different modes: first person, third person, tracking, isometric, horizontal.
+
** Camera management with many different modes: first person, third person, tracking, isometric, horizontal.
-
* Region management: decomposition of a complete world in regions, with zoning between regions.
+
** Region management: decomposition of a complete world in regions, with zoning between regions.
-
* Advanced management of portals, e.g. for closing portals that are occluded.
+
** Advanced management of portals, e.g. for closing portals that are occluded.
-
* Spawning of entities.
+
** Spawning of entities.
-
* Triggering of proximity events.
+
** Triggering of proximity events.
-
* Inventory & Interaction
+
* Inventory & Interaction
-
* Key and peripherals events bindings.
+
** Key and peripherals events bindings.
-
* Billboards and tooltips.
+
** Billboards and tooltips.
-
* Inventory system.
+
** Inventory system.
-
* Selecting and grabbing objects.
+
** Selecting and grabbing objects.
-
* Advanced Physics
+
* Advanced Physics
-
* Projectiles and damages to entities.
+
** Projectiles and damages to entities.
-
* Collision management with the ground.
+
** Collision management with the ground.
-
* Advanced physical effects: fluids, thrusters, steering, explosions, attractors and repulsors.
+
** Advanced physical effects: fluids, thrusters, steering, explosions, attractors and repulsors.
-
* Vehicles and their physics: bikes, cars, tanks, hovercrafts, or any wheeled vehicle.
+
** Vehicles and their physics: bikes, cars, tanks, hovercrafts, or any wheeled vehicle.
-
* Mesh deformation, e.g. for destroying gradually an object.
+
** Mesh deformation, e.g. for destroying gradually an object.
-
* Artificial Intelligence
+
* Artificial Intelligence
-
* Finite state machine for the management of the evolution of the environment.
+
** Finite state machine for the management of the evolution of the environment.
-
* Behavior trees to build complex artificial behaviors.
+
** Behavior trees to build complex artificial behaviors.
-
* Path finding and steering behaviors.
+
** Path finding and steering behaviors.
-
* Neural networks and genetic algorithms.
+
** Neural networks and genetic algorithms.
[[Category:Media]]
[[Category:Media]]

Revision as of 09:36, 6 April 2010

CS

  • Portability
    • Highly platform independent with good platform abstraction. Supports GNU/Linux, OSX and Windows.
    • Support of a wide range of compilers and IDE, including gcc, MinGW/MSYS, Cygwin, Visual C++ 8 & 9.
    • Written in standard C++ using very few non-standard extensions.
    • Self contained so that many modules requires no or few external dependencies.
    • File system abstraction layer, VFS, that handles both physical files on disk and files within ZIP files, giving virtual layout independent from platform and physical layout.
    • Abstracted configuration layer with support for settings in configuration file, system dependent storage such as the registry and command line.
  • Modularity
    • Modularized using a lightweight component framework, SCF, based upon the COM model. Components can be easily loaded or switched.
    • Bindings for other programming languages through SWIG: Java, Python, Perl.
    • All subsystems easily extendable for new file formats.
  • Rendering & Lighting
    • OpenGL-based engine, supports hardware accelerated rendering on all supported platforms and cards from all well known vendors.
    • Rendering loops for custom rendering of objects.
    • Static, pseudo-dynamic and dynamic lights. Statically and dynamically lit objects can be combined.
    • Shadow map shadows.
    • Multiple render targets.
    • Rendering to textures.
  • Shaders
    • Can be written in Cg, ARB, and GLSL. Shader description and mappings are defined in a XML compliant language.
    • Support for multiple passes, vertex and fragment programs. Light selection and multiple lights in one pass possible.
    • Node-based system for combination of shaders and post-processing effects.
    • HDR rendering, tone mapping and eye adaptation.
    • Fallback system of shader techniques for hardware compatibility.
    • Cache storage of compiled shaders for faster loading.
    • Library of available shaders and post-processing effects: diffuse, specular, bump map, glow, parallax, fur, bloom, blur, water, glass, and many others.
    • Automatic environment mapping.
  • Scene & Level Of Detail Management
    • Decomposition of a world in sectors with portals connecting them. Portals can be used for effects such as LOD management, streamed loading or space warping.
    • Two different cullers: frustum culling (Frustvis), and dPVS (Dynavis), which also does software occlusion culling.
    • General system for static LOD on all types of meshes.
    • Impostors for replacement of far meshes with a 2D object.
    • Threaded loader for streamed loading of levels and objects.
    • Instanciation of meshes and objects.
  • Meshes
    • Many different type of meshes: general triangle mesh with skeletal animation, morphing and sockets, cal3d, sprite 2D, sprite 3D, ocean,...
    • Terrain mesh with paging and splatting.
    • Foliage system to dress up a scene with objects such as flora and rocks,...
    • Decals to be added on top of other meshes.
    • Configurable and extensible particle system mesh with billboards, emitters, physical effectors,...
    • Halos and lens flares.
    • Automatic triangulation of shapes.
  • Animation
    • Specialized mesh for advanced skeletal animation with animation blending tree, weight skinning, morphing, and sockets.
    • Many types of animation nodes can be combined to generate dynamically complex animations: multi-blending, Finite State Machine, random, priority, LookAt, speed (time warping).
    • Ragdoll animation and animation of hairs & equipment.
    • Skeletal animation and morphing for the general triangle mesh.
    • Generic animation system for triggering of time events, moving of objects, fade in/out.
  • Audio
    • 2D and 3D sounds with OpenAL.
    • Audio codecs: speex, ogg, wav (8- and 16-bit PCM).
    • Provides both one-time playing of effects and streaming playing in the background for music.
  • Physics & Collisions
    • Physics of rigid bodies and joints, made through a wrapper for two physics libraries: Bullet and ODE.
    • Support of kinematic bodies for interaction between classical animation and the physical simulation.
    • Debug plugin to visualize the physical simulation.
    • Simplified collision detection when you don't need the full dynamics simulation.
  • Data Representation
    • XML language for the description of each object and plugin of the whole CS. XML files can be set binary for faster loading.
    • Procedural, dynamic and animated textures.
    • Support for many image formats: png, jpg, dds, bmp, gif, tga, mng, jng, (binary) alpha, transparency, non 2n sized images,...
    • Importers for many 3D file format: Blender through blender2crystal, 3D Studio Max, Maya, COLLADA, and model importers for common file formats such as 3ds, cal3d and md2.
  • User Interface
    • Event system & peripherals: mouse, joystick, keyboard.
    • Graphical user interface system through CEGUI.
    • User interface widgets for wxWidgets.
    • Text localization.
    • Plugin fo easy video recording and screenshots.
    • Font servers, FreeType2 and glyphs fonts.
  • Project Management
    • Debugging tools: generic plugin for visual debugging of scenes, support for Valgrind.
    • Scripts for generation of new projects.
    • Easy compilation and customization of the whole project thanks to Jam.

CEL

  • Entity System
    • Each object in CEL is an entity. Entities are defined by adding them a list of property classes that defines their attributes and their behavior.
    • Generic event system for communication between property classes.
    • Persistence layer for saving and loading world states.
  • Runtime Package Environment
    • CELStart: generic executable for all CELStart applications, only data files have to be installed.
    • The whole logic may be written with bindings for Python, or in a XML scripting language.
  • World Management
    • Avatar and Non Player Character management: synchronization of the user actions with the mesh, its position, its orientation and its collisions.
    • Camera management with many different modes: first person, third person, tracking, isometric, horizontal.
    • Region management: decomposition of a complete world in regions, with zoning between regions.
    • Advanced management of portals, e.g. for closing portals that are occluded.
    • Spawning of entities.
    • Triggering of proximity events.
  • Inventory & Interaction
    • Key and peripherals events bindings.
    • Billboards and tooltips.
    • Inventory system.
    • Selecting and grabbing objects.
  • Advanced Physics
    • Projectiles and damages to entities.
    • Collision management with the ground.
    • Advanced physical effects: fluids, thrusters, steering, explosions, attractors and repulsors.
    • Vehicles and their physics: bikes, cars, tanks, hovercrafts, or any wheeled vehicle.
    • Mesh deformation, e.g. for destroying gradually an object.
  • Artificial Intelligence
    • Finite state machine for the management of the evolution of the environment.
    • Behavior trees to build complex artificial behaviors.
    • Path finding and steering behaviors.
    • Neural networks and genetic algorithms.
| Article | Discussion | View source | History |