Sylphis3D Features

Rendering

  • A combination of BSP-Portal rendering system
  • Per-Pixel lighting (diffuse, specular, glossmaped bump mapping)
  • Beam-Tree optimized realtime shadows
  • Filtered lights
  • Object oriented scene management
  • Stackable post-process effects (Glare, motion blur, old film, etc)

Collision detection - response

  • Per polygon collision detection and motion clipping
  • Various collision primitives : sphere, box, capsule, cylinder
  • Joints between bodies : hinge, ball-socket, double-hinge
  • Rigid body dynamics(Realistic physics simulation)

Sound

  • 3D sound
  • Moving sound sources, and listeners with sound pitching(doppler effect simulation)
  • Environment acoustics simulation
  • Support for EAX
  • Streaming and precached loading of audio data
  • WAV, OGG wave file support

Shaders

  • Vertex/Fragment programs
  • GLSL vertex/fragment shaders
  • Procedural texture-mapping
  • Multipass rendering
  • Loadtime image manipulation : contrast, brightness, mixing
  • Conversion from height maps to normal maps
  • Combination of any number of height maps and normal maps to one normal map.
  • Texture coordinate manipulation : scale, rotate, scroll
  • Vertex position manipulation
  • Color manipulation
  • All parameters can be assigned to functions of time (pulsing textures, etc
  • PNG, TGA and JPEG images support

Animation system

  • Skeletal based animation with vertex blending (Organic meshes are deformed correctly at elbows etc)
  • Skeletal animation blending
  • Bone animation override

Scripting

  • Fully Python scripted
  • Fully object oriented
  • Everything is script controlled
  • Scripts can be attached to almost everything.
  • Green-threads for clean game code. These are not system threads and have no overhead as system threads. Sylphis can run hundreds of threads in run state with no performance cost.
  • Action based game programming
  • Script console. While the engine is running you can actually implement a new game entity and spawn it in the world!
  • Intergrated development environment(SDE). While the engine is running you can start the SDE end debug the code on the fly (Inspect variables, set breakpoints, etc)

Miscellaneous

  • Collection files so that you don't have to store hundreds of files in the engine's directory
  • Automatic memory management and garbage collection on both C++ and Python objects. For C++ objects this is an option.
  • Easy user interface building.
  • Truetype font support
  • Cross platform and cross compiler