- All software supplied and maintained by one company
- Complete printed and on-line documentation in Fortran-90 (no need to buy
OpenGL books written for the C programmer)
- Full integration with existing 3D graphics routines
- Full integration with GINOMENU offering widget facilities over and above
f90gl
- 3D object routines includes spheres, cubes, cones, volumes, wedges, spline
surfaces and bezier surfaces
- Common GINO interaction model under Windows and X avoiding the need for
X-Windows or Windows API calls
- Single call for Segment hitting
- Automatic calculation of planar normals which are essential for flat
shading
- Automatic calculation of averaged normals for smooth shading of built-in 3D
objects
- Facets generated with one routine (compared to a minimum of 6)
- Automatic grouping of adjacent primitives
- GINOSURF switchable to utilise lighting, shading and animation of 3D
surfaces
- OpenGL graphics can be sent to a window (GINO), a PictureBox (GINO with VB,
Delphi, Borland BCB, .NET) a graphics frame (GINOMENU) or a BMP file
GINO/OpenGL programs require access to the OpenGL libraries on the installed
platform. Under Windows this consists of two DLL's, OPENGL32.DLL and GLU32.DLL
which reside in the SYSTEM or SYSTEM32 directory. On UNIX platforms, OpenGL is
usually provided as a proprietary set of libraries or in the case of LINUX, the
MESA implementation can be used.
Under Windows, the performance of GINO/OpenGL programs depends on the
installed graphics card and whether it provides hardware OpenGL acceleration or
not. Most of the older graphics cards do not provide any acceleration, but
GINO/OpenGL program will still work using the standard DLL's but at a slower
pace.
It is important to always use the latest set of graphics card drivers as
they are regularly being updated by the manufacturers (usually with
improvements!)
GINO provides an interface to OpenGL through its 3D device drivers WOGL (on
the PC) and GLX (on workstations). Existing GINO 2D and 3D graphics facilities
are available using these drivers without program modification (except device
driver nomination routine) often giving better performance where 3D graphics
hardware is available.
New GINO features in the form of lighting and texture mapping etc. are fully
integrated into the GINO library through proprietary subroutine calls which
interface to OpenGL functionality in the OpenGL drivers alone. Lighting and
texture mapping is not simulated on non-OpenGL device drivers.
Using a proprietary interface to the OpenGL functionality allows GINO to
develop in parallel to OpenGL but also allows us to use any new 3D interface
(eg. Direct 3D) without users having to change their applications.
Please click here for a list of OpenGL features
with their availability in the GINO library.
Performance
Performance of OpenGL programs can be improved in many ways, including those
described below:
- Use as few light sources as possible
- Store objects in segments
- In animated objects, only use the facet primitive - most cards are tuned to
draw only triangular facets at high speed
- Use as few changes to material properties within an object as possible -
i.e. group together facets with the same material
- Cull back facing facets if possible
- Switch off back surface lighting
- Try changing to a lower resolution (some graphics cards do not perform well
at very high resolutions such as 1600 x 1200)
- Check the Depth Buffer capabilities of the graphics card and set GINO to
match it
If performance or other problems persist, make sure that you have the latest
video driver from the manufacturer - don't rely on the one supplied with the
board as it will almost always be out-of-date. Alternatively, go to
http://www.opengl.org/applications/graphic_cards.html
where there is a Glsetup program to automatically analyze and download the
latest drivers for most of the popular boards.
|