|


Libraries/Source Code

Graphics, 3D/2D Engines
OGRE
OGRE is a 3D graphics rendering engine that presents
an object-oriented (OO) interface that allows you to
render 3D scenes independently of the underlying 3D
implementation, be it Direct3D or OpenGL. It
provides material / shader support, meshes,
animation, facilities for you to manage your scenes
and special effects, etc. The engine is useful for
writing games, architectural visualisations,
simulations, etc. It supports Windows, Linux and Mac
OS X and is licensed under the GNU Lesser Public
License (LGPL).
Open Scene Graph
Open Scene Graph (OSG) is a high level 3D graphics
toolkit that you can use in development of games,
visual simulation, virtual reality, scientific
visualizations and modelling. It is an object
oriented framework written in standard C++, uses
OpenGL, and supports Windows, Mac OS X, Linux,
FreeBSD, IRIX and Solaris. OSG is released under a
"relaxed version" of the GNU LGPL, allowing its use
in both open and closed source projects (see the
site for details).
g2 2D Graphics Library
This open source 2D graphics library is written in C
and has a C, Fortran and Perl interface. It exposes
functions that you can use to generate graphics for
Postscript, X11, PNG, and Win32. The library has
been tested on Linux, AIX, Digital Unix, SunOS, IRIX,
VMS and Windows NT/2000.
GD Library
This is a well-known library for the creation of PNG
and JPEG images. It is written in ANSI C, but you
can also call the library from Perl, Tcl, Pascal,
Haskell, REXX and possibly other languages. It has
facilities for you to draw lines and arcs, write
text, colour the images, cut and paste images, do
flood fills, etc.
Expression 3D Toolkit
Expression is a C++/STL toolkit that supports
interactive 3D graphics using OpenGL as well as
non-interactive sphere tracing. It runs on Win32 and
Linux, supports JPEG and 3DS filters, is MT-safe
(thread-safe) (supports both POSIX and Win32
multithreading), handles 3D and homogenous
coordinates, 3x3 and 4x4 matrices, quaternion,
colour range maps, axis aligned bounding boxes,
fogs, procedural textures, fullscreen and windowed
modes, polygonal models (tri-mesh), primitive sky,
particle systems, etc.
Bolt3D Engine
Bolt3D is a real-time 3D engine for Win32 systems.
It supports real-time gouraud, phong,
texture-mapping, particle systems (for stuff like
smoke and bubbles), bilinear-filtering, surface
mapping, artificial spotlights, fog effects, 3D
object creation (spheres, cones, sweeps, cubes,
hardware acceleration, etc. You can interface the
code from Visual C++, Delphi and Visual Basic. The
engine is free.
libAfterImage
libAfterImage is an image manipulation library for X
Windows that supports loading, storing blending,
rendering and manipulation of images. Image formats
like XCF, XPM, PPM/PNM, BMP, ICO, JPEG, PNG, GIF,
TIFF (full range) can be imported into the library,
which also allows you to use TrueType fonts. The
library may be used without X Windows, and handles
scaling, tinting, flipping, tiling, textuarized,
semi-transparent 3D text rendering, etc.
Libart
This 2D graphics library supports numerous data
structures (vector paths, Bezier paths, RGB and RGBA
images, sorted vector paths, MicroTile arrays,
Affine transformations) and algorithms (converting
Bezier paths into vector paths, antialiased
rendering of SVPs, alpha-compositing, etc).
GraphLib
This C++ class library that can be used to represent
graphs. It comes with a few graph algorithms and is
extensible. It runs on Windows 9x and Linux.
Interactive Visualisation Framework
Ivf++ is a C++ visualisation framework for 3D
rendering that encapsulates OpenGL and GLUT
functionality. Its extensible foundation classes can
be used either standalone or in conjunction with
other GUI libraries such as FLTK, MFC and GTK+. It
comes with tutorials and a user's guide. It runs on
Windows and X11 (Unix systems) and apparently has
been tested on Windows NT/2000, Linux and IRIX.
Graphix
This MSDOS graphics library is designed for the Free
Pascal Compiler (which can be found, along with
other free Pascal compilers) and Borland Pascal 7.0.
It has various capabilities, including the support
of various graphics modes from 320x200 to 1600x1200
(and above) using direct-RGB (15, 16, 24 and 32
bit), 8 bit graphics modes, mouse library, image
handling library (BMP, GIF, ICO, JPG, PCX, PBM/PGM/PPM,
PNG, TGA, etc), font library (FNT bitmapped fonts,
CHR-BGI fonts, VGA-BIOS 16x8 font), graphics effects
library (alphablending, masking operations,
rotating, scaling), triangle-output library (for
3-D, etc), and video and animation library (AVI, FLI/FLC,
GIF, Quicktime MOV).
Dislin
This is a plotting library for displaying data as
curves, bar graphs, pie charts, 3-D colour graphics,
3-D graphics, elementary images, 3D-colour plots,
surfaces, contours and maps. Versions are available
for C, Fortran 77 and Fortran 90 compilers on Linux,
FreeBSD, OpenVMS, MS-DOS, Windows 95/98/NT, and
other flavours of Unix. On some operating systems,
Java, Perl, and Python are also supported. (Not all
versions of the library are free, though.)
Gx2 Graphical Library
GX2 is a graphical library for Borland Pascal 7 and
the Free Pascal Compiler ("soon"). It uses an object
oriented interface and supports the loading and
saving of BMP, GIF, PNG, JPG and PCX files. It comes
with 65 fonts (vector and bitmap) and supports True
Type Fonts and the conversion of Borland CHR fonts.
Most of the work in image handling (e.g. conversion,
opening) is done by the library automatically. Other
features supported include antialiasing of fonts,
lines and circles, alphablending, alphamapping,
transparency (add/sub), rotation, colour dithering,
fading, colour printing to Epson and HP compatible
printers, etc. The library uses 32 bit DPMI code,
optimized to take advantage of the MMX.
PASJPEG
Compress and decompress JPEG files with this
library, which is actually a port of the Independent
JPEG Group's C sources into Pascal/Delphi. It was
written for Turbo Pascal 7.0 and Delphi 2.0 but
should work with other Pascal compilers which are
compatible with these two.
MESA
A
3D graphics library with an API similar to OpenGL.
It implements the OpenGL 1.2 API specification (as
of version 3.0), and works on most Unix systems with
X11. Drivers are available for Amiga, Windows,
Macintosh, MSDOS, NeXT, BeOS, etc. 3D hardware
supported include 3dfx Voodoo1, Voodoo2, Voodoo
Rush, Voodoo Banshee, Voodoo3, nVidia, Amiga Warp3D,
Matrox G200/G400, nVidia RIVA, ATI Rage Pro.
Gizmo3D
This C++ 3D engine is free for non-commercial use.
It is available for Win32, Linux and IRIX. It
provides for scene management and presentation, 3D
graphical nodes, multipass rendering and effects,
selection and collision detection, animation
control, etc.
LibXMI
You can use this C library for rasterizing 2-D
vector graphics primitives such as wide polygonal
lines, circular and elliptical arcs and filled
polygons. It does not interface with the screen
directly, rather, it draws into a user-supplied
matrix of pixels. Platforms supported include Linux,
FreeBSD and Unix systems. However, the author notes
that it should be possible to compile it and install
it on any system with a C compiler.
Scitech MGL
SciTech, makers of the well-known Display Doctor,
has released its Scitech MGL library under an open
source public license. This full-blown graphics
library has loads of features to allow you to write
2D/3D graphics programs (such as games, etc). It has
a 3D API that can scale from software-only to full
3D hardware geometry acceleration. You use the
OpenGL API to write your program, for the Windows
and/or MSDOS environment, thus allowing you to
maintain one set of sources for programs on these
platforms. The library comes with complete source
code, and a host of useful supplemental libraries
(also with source code). There are too many features
to list here. Check out the website yourself. The
website boasts that this library was used in the
development of games like WinQuake and Hexen II.
ImageMagick
ImageMagick is a well known package of libraries and
tools for reading, writing and manipulating many
image formats, including GIF, JPEG, PNG, PDF, Photo
CD, etc. You can create the image, rotate it, resize
it, add special effects, convert between formats,
and so on. The library is in C, but there are C++,
Perl, Java and Python interfaces as well. The
object-oriented C++ interface provides integrated
support for STL. Supported platforms include Linux,
Windows NT/95, Macintosh, VMS, OS2 and "virtually
any Unix".
LibWMF
LibWMF is a library that is able to parse Win16 WMF
files and converts them to GIF or fig file formats,
or X draw commands for use in an X Windows program.
The library is released under the LGPL and should
work on Linux.
Paintlib
Paintlib is a C++ class library that allows you to
easily decode an image and manipulate it. It
supports, with the help of publicly available
libraries, the following formats: JPEG, TGA, TIFF,
JPEG/JFIF, Windows BMP, Mac PICT, and TIFF previews
in EPS files. It can be used on Win32, MSDOS, Linux,
etc. There is apparently an ActiveX control as well.
PNG Source Code, Library and Utilities
The Portable Network Graphics format is a lossless
compression image format. The site features lots of
information about PNG and includes source code and
libraries for you to implement PNG in your own
program. There are even Java and JavaScript
versions, converters, and a whole lot of other
utilities and source code.
JPEGFile
A
Win32 class library that allows you to read JPEG
files into a RGB buffer and saves the buffer as a
RGB file or a grey scale JPEG file.
|
 Graphics, 3D/2D Engines
CATEGORIES :
|
 |