CS248 Video Game Project Resources
This page includes links to a number of online resources
which may provide assistance or inspiration during development
of your 3D video game project for Project 3. This
page is still under construction, so check back again soon!
CS248 Project-specific Links
OpenGL Programming Information
- The
OpenGL Programming Guide
book (aka "The Red Book") recommended
for this class is perhaps the best guide to learning OpenGL programming.
The errata for this book is
available online, as well as the
source code,
which is also available in the CS248 class directory.
- The "official" OpenGL Website. This
site is the most comprehensive collection of information about OpenGL,
including programming tips, tutorials, and developer documentation, as
well as the latest news about new OpenGL applications.
-
SIGGRAPH'99 Advanced OpenGL Programming Course Notes. These course notes
from the Advanced OpenGL course at the SIGGRAPH conference contain a wealth of
information that goes beyond the basic techniques discussed in the Red Book. There is
a particularly good section on
"Tuning Your OpenGL Application" for peak performance. OpenGL/GLUT source
code from the 1997 course is available
in the CS248 class directory, and is also available online.
- "Way cool, way fast OpenGL rendering
techniques." Like the title says, this page includes links to discussions
and examples of a number of interesting rendering effects possible with OpenGL.
- Nate Robins's OpenGL
tutorial programs demonstrate basic OpenGL functionality by
allow the user to interactively modify parameters and see the effect
on the 3D scene. These programs are also available in the class
directory.
- An older index of OpenGL resources.
- The OpenGL FAQ and
Troubleshooting Guide probably has answers to many of your questions.
-
Online manual pages for most of the
OpenGL,
GLU,
and
GLX commands.
They
are also avalable in PDF or PostScript form.
- The Mesa 3D Graphics Library is a
a freely available implementation of OpenGL that you can download and
install if you are using a computer platform that does not already support
OpenGL.
Windowing and Interface Toolkits
- We recommend using GLUT to handle the windowing and event management for
your OpenGL programs. GLUT for the Sweet Hall SGIs is already installed in
the CS248 class directory. The primary
GLUT Web page
has pointers to GLUT information, including
documentation for GLUT API and GLUT sample programs, which are also
available in the class directory.
- GLUT by itself provides very limited GUI widget functionality (only menus).
The Micro User Interface (MUI) toolkit comes with GLUT and can be used
for buttons, text fields, sliders, and other widgets. The necessary
MUI files are installed in the CS248 class directory, and some brief
MUI documentation is available online.
- We've experienced some annoying bugs with MUI. Another simple UI toolkit
that sits on top of GLUT and OpenGL is
The Picoscopic User Interface (PUI). Note that PUI requires
that you program in C++.
- GLUI is
yet another C++ GUI library that sits on top of GLUT and OpenGL.
- Other windowing toolkits are nearly as portable but more complete,
such as
wxWindows and
FLTK .
- For a list of other interface toolkits, see
The GUI Toolkit, Framework Page.
Game Development Resources
- Gamasutra is a Web site devoted to
game development. It contains articles about all aspects of the game
industry and development process including a number of feature articles on game programming.
Gamasutra is a supplementary site of
Game Developer magazine.
- GameDev.net. Another good site
aimed at providing resources for game developers.
- VIS-SIM.ORG. This site serves professional
developers of visual simulation systems such as flight simulators and military
training applications. Video games and visual simulation systems share a
broad range of development issues, from designing realistic 3D environments
to real-time rendering of complex graphics.
- Real-Time Rendering Resources.
This is the Web resource page accompanying your optional textbook,
Real-Time Rendering, and covers many topics of interest to developers
of video game graphics engines.
3D Modeling and Game Content
- Ultimate 3D Links is a great
starting point for programs and data for 3D game content. In particular,
check out their links to
shareware 3D modeling programs as well as their numerous links to
collections of thousands of free 3D models and textures (follow the
index links "3D Objects>Free Objects" and "Textures>Free" on the left
side of their Web page).
- Viewpoint Digital is one
of the leading 3D content providers in the video game industry. Although
most of their models are expensive, it is fun to browse their extensive
online catalogs of
3D models and textures.
- 3D Exploration is a program
that converts 3D models to different file formats, including C code with
OpenGL calls.
Advanced Rendering Effects
Text in OpenGL
- A number of libraries exist for doing text better and easier in
OpenGL. Here are pointers to a few:
glBDF,
TexFont,
GLTT,
FNT.
Sound
- The SL sound
library is a fully portable (except MacOS) audio driver suited
to C++ and GLUT applications.
- We have examples of how to combine glut graphics programs and sound
on both Linux and MS Windows. See
/usr/class/cs248/assignments/assignment3/sound-examples/....
This uses SL on Linux, and DirectSound on MS Windows.
Motion Capture
- Some sample motion capture data, along with an example OpenGL
viewer, is available here.
- More free motion data files in a variety of formats are available
here.
- Some docs describing a variety of mocap file formats are
here.
Client/Server Networking
Last update:
November 16, 2001 10:31:45 AM