GLScene is an OpenGL based 3D library for
Delphi. It provides visual components and objects allowing
description and rendering of 3D scenes in an easy, no-hassle, yet
powerfull manner.
GLScene is not just an OpenGL wrapper or
utility library, it has grown to become a set of founding classes
for a generic 3D engine with Rapid Application Development in
mind. GLScene allows you to quickly design and render 3D scenes
without having to learn the intricacies of OpenGL, if you know
how to design a TForm, you'll easily master the basic operations
of TGLScene. The library comes with a large collections of demos showcasing the ease of use, and demonstrating RAD wasn't done at the expense of CPU/GPU horsepower.
support for 2D and 1D objects (sprites, lines
with spline support) fully integrated
HUD objects (sprites rendered in 2D coordinates)
Utility objects (grids, skydome, arrows...)
support classes for directly accessing OpenGL
camera and light objects that can be used
anywhere in a scene objects hierarchy
behaviour objects can be attached to objects for
animation purposes, easily extendable
per-object special effects (before/after object
rendering and scene after-effects), easily
extendable
support for particle systems, any object or
object structure can be a particle
3D Studio file import with automatic and precise
normal vector calculation (using the given
smoothing groups of the file) and texture
coordinate import
Other imported formats : OBJ/OBJF, SMD, MD2, STL, TIN, PLY
Materials
easy to use, optimized, material object
material library to share and reuse materials
ambient, diffuse, emission, specular and
shininess support
support of blending modes (transparency, additive...)
alpha-channel auto-generation
support for OpenGL texture formats, including compressed ones (DXT, S3TC etc.)
polymorphic image support for texturing (allows
many formats as well as
procedural textures), easily extendable
more than 150 predefined colors like
clrCornflowerBlue or clrCoolCopper (easily
extendable) in addition to standard colors and direct RGBA specifications
easily to use texture movement and scaling properties,
independently from texture coordinates
32 bits Bitmap support class
Rendering
automatically uses the hardware OpenGL driver if
available
a well working camera model using focal length
and targeting
multiple viewers for one or more scenes, easy
change of view through camera selection
fog and depth-of-view support
render to a file, a bitmap or to the printer in
any color and pixel resolution
full screen support with dynamic resolution
changes
reflections and mirror effects
dynamic shadow casting
high-performance scene-wide transparent particles system support
automatic frustrum culling (hierarchical or per-object)
Animation
propagation of time progression events
skeletal animation (multiple bones per vertex)
frame interpolation and morph targets
easily extendable Behaviours
dynamic physics : inertia, acceleration, damping
and force application
automatic, realtime scene cadenceing
Interface
easy-to-use functions to determine picked objects
helper functions for camera movements
helper functions for picked object's translation
helper functions for converting between screen and world coordinates, raycasting
Sound
built-in support for 3DSound sources and listener
automatic update of position, velocity and orientation of sources and listener
sound samples library component
sound managers for WaveOut, BASS and FMOD.
Utilities
optimized geometry functions and utilities (vector,
quaternion and matrix...)
cubic spline support functions and class
mesh manipulation and optimization (stripification, vertex-cache awareness, etc.)
component to make full-featured screen-saver in a
few clicks
precise frame speed determination
asynchronous timer (multi-threaded)
joystick support
asynchronous keyboard access, keymap support
Notes :
* Delphi 5 basicly
supports BMP, WMF, EMF, ICO and JPG, you can add support for GIF,
TIF, TGA, PSD and many more by including the GraphicEx library from Mike Lischke.