OpenGL |
Games-Demos |
OpenGL Performer
REFLECTION
This code was ported to C++ from Delphi
and originates from the Reflection Demo on the site
http://www.exsanity.freeola.com/opengl.html
(Original Delphi code by Phil Freeman).
It demonstrates how to mirror geometry on a plane.
A simple reflection demo which does not use the stencil buffer but
instead renders the reflection to a texture using glCopyTexSubImage2D
and then maps the texture onto the mirror using gluProject. No need
for stencil buffer or reflection of the camera below the plane as in
other methods.
Compiles for Windows and most Unixes. Based on GLUT. |
Windows
Executable.
Source
Code.
Note: Needs GLUT Library installed. |
BICUBIC SURFACE PATCHES
The knot shown in the picture on the
right side was done using Ferguson Patches which is a form of
Bicubic Surface.
The concept behind Bicubic patches is that in order to build a smooth
representation of an object such as the one above we do not need to
store thousands of small polygons to draw the object.
Instead we store a very coarse mesh of points which lye on the surface
and interpolate along them to find as many interior points (new point
which lie between two original points) as we want. We can then draw
the object forming again polygons or using lines. The most common form
of interpolation Bicubic interpolation, and in 3D there are various
methods to interpolate between 4 points to find any interior point and
form a patch, some are Hermite Patches, Bezier Patches, B-Spline
Patches and Ferguson Patches.
This program draws this knot and rotates it using 2 methods of
Bicubic patch interpolation. |
Windows
Executable.
Note: Needs GLUT Library installed. |
CUBIC SPLINES
This program fits a curve through
the specified points, it is an example of curve interpolation using
cubic spline interpolation.
Once executed choose 1 for display and interactive change of a curve (spline),
the other 2 choices (2,3) display how a spiral and a cubic polynomial
are interpolated. Initially there are 3 points, moving the cursor over
a point and holding down the left mouse button the point can be moved
to a new position, pressing the right mouse new points get inserted at
the specified position. A curve is always interpolated through the
existing points. Uses GLUT. |
Windows
Executable
Note: Needs GLUT Library installed. |
RAYTRACER
Implementation of a raytracer, which
reads the scene to render from a scene ASCII file. Supports
-
Variable amount of Depth
reflections
-
Ambient, Diffuse and Phong
lighting
-
Shadows, Reflections and
infinite amount of lights.
-
CSG operations.
-
Bounding sphere speedup for
rendering and interactive navigation.
-
Shapes which can be rendered are
spheres, planes, cubes, pyramids, quads, triangles and triangle
meshes.
OpenGL is only used only for drawing
2D pixels on the screen and GLUT for setting up a window.
Windows
Executable with scene files.
Note: Needs Glut Library installed. |
|
|
|
VECTORCALC
VectorCalc is a simple yet efficient
tool for computing the normal vectors at the Edges of a plane.
The plane is centered at (0,0,0) and can be rotated arbitrarily around
the primary axes. The normals can also be rotated around the axis
formed by the edge they start from.
VectorCalc was primarily developed for finding the normal pointing
vectors of SonicStrip Beacons of InterSense trackers, mounted on
projection walls or other locations. SonicStrip Beacons are used for
setting up tracking at VR installations or installations which require
tracking. But it may be also usefull in other fields of application,
where the normals of arbitrarily oriented planes have to be computed.
There are Linux, Irix and Windows versions available. |
Windows
Executable
Note: Needs GLUT Library installed. |
TEXSYNTHESIS
TexSynthesis can be used for easy
creation of Terrain Textures. It takes as input the elevation data of
the terrain region as a greyscale bitmap and outputs the created
terrain texture for saving after previewing it on a 3D of the actual
terrain with this texture.
The texture is created by specifying various terrain types (by
specifying an image file or just a color) for various regions of the
terrain using elevation and slope. Smooth transitions between various
terrain types can be specified for blending. All the specified texture
maps, colors and the information for the terrain regions regions are
combined and blended onto the terrain map data to produce a final
texture map with lighting and shading already precomputed (optional). |
|
DAYSKY EDITOR
Implementation of an procedural
DaySky simulation based on the Paper "Analytic Model of DaySky"
by Preetham et.al.
Colors on any point on the SkyDome are computed by the DaySky model
which takes into account the sun position and other weather factors
such as turbidity, exposure, gamma and a specifically introduced model
which enhances the colors at sunset/rise. After sunset a basic Night
Sky model is computed which also features Stars and Moon. The position
of the sun and all of the weather attributes can be animated to have
animating sunset/rise with change of weather conditions. The color of
the Sun as light source is also computed in order for objects under
the SkyDome to be lighted correctly even at Night.
This editor allows preview real-time preview and simulation of the
SkyDome and the lighting conditions on any objects. |
|
CAL3D ANIMATION LOADER/VIEWER
Preview skeleton and inverse
kinematics animation with mesh, material and lod data exported in
Cal3D animation format using the Cal3D SDK. The Cal3D animation format
can be exported using plugins from Max and Maya. The Models animations
can be previewed and be customized and blended together changing their
animation cycle, speed and timings for smooth transitions. Bounding
Box, Mesh and Skeleton data can also be displayed for information.
Provides SDK for easy integration into OpenGL applications. |
|
XSI LOADER/VIEWER
Load and Preview models in
dotXSI 3.0 and 3.6 format. Loads and displays mesh and material data
with info. Provides SDK for easy integration into OpenGL applications. |
|
|