Paradise is our API (Application Program Interface) based on Windows95 which provides all services for rendering real time graphics and sound to create virtual worlds.

Paradise is interfaced with DirectX via our Platform Abstraction Layer. All the engines are software implemented and only use Microsoft APIs for future hardware accelerator support.

Paradise is written in C++ except critical parts written in Pentium and MMX assembler and optimized by hand.

Voxels engine
for natural landscape tiled data base
Geometry interpolation.
Color bi-linear interpolation MMX
Sub voxel positioning.
Vertical textures mapping.
Mip-mapping.
16 bit Zbuffer generation.
Depth layering optimization.
Flat region optimization.
Dynamic hidden region optimization.
Water effect.
256 colors mode.
65536 colors mode. MMX

Polygonal object engine
None, Flat or Gouraud shading
Two opposite coloured lights.
Advanced materials (skin, chrome, metal, translucent,...)
Perspective correct texture mapping
Sub-pixel / Sub-texel accuracy.
Mip-mapping.
Bump mapping.
Color keying.
Progressive mesh refinement.
Radix sort, BSP or Zbuffer.
256 colors mode.
24 bits colors mode. MMX

Effects engine
Pixel perfect dynamic Soft shadow generation.
Procedural Ray & Sphere primitive.
Advanced particle system.
Coloured lighting effects (glow, halo and lens flares)
Depth cueing.
Depth of field.
Dynamic water with reflection and transparency.
Volumetric fog.

Advanced animation engine
Skinning with skeletal deformation of ponderated meshed envelope.
Animation interpolator.
Animation cross fader.
Animation weighted mixer.
Procedural animation channels.
Constrained mixing of procedural and sampled animation channels
Inverse kinematics.

Sprites engine
RLC decompression.
Scaling with resampling.
2 Level Anti-Aliasing.
Transparency.
256 colors mode.
65536 colors mode. MMX

Audio engine
3D sound positioning.
Disk sound streaming.
Priority based CPU loading control.
Red book audio musics.

World engine
Hierarchical collision detection.
Accurate physics model.
Network distribution.
Activity control.
Run-time profiler for dynamic quality vs speed control.
Generalized data base model.