|OpenGL demo -- First Person Shooter||9 Jul. 04|
demo is the start of a simple First Person Shooter game from Steve Wortham. There are no
monsters, zombies, Nazis, or 2D sprites to shoot yet -- just you in a room
by yourself with 2 big guns. But I think it is very useful OpenGL demo for
beginners. It shows how to implement radiosity to render lightmaps,
multitexturing to apply the lightmaps and a particle engine.
- Thanks, Steve Wortham
|1,008 KB (VC++ source code and some textures)|
|Quadrilateral Surface Mesh ( 3D Paving )||29 Mar. 04|
The paving was first introduced for meshing in the Blacker paper "Paving: A New Approach to Automated Quadrilateral Mesh Generation" But it was for two-dimensional surface. The Roger J. Cass's paper, "Generalized 3D Paving: An Automated Quadrilateral Surface Mesh Generation Algorithm", presented the extension of the paving algorithm for quad mesh generation to arbitrary 3D trimmed surfaces.
And this version fixed some bugs in the previous version.
First, load the Surface from IGES file and then click the Hybrid Quad mesh button on the toolbar, set the mesh parameters, then click the OK button and lastly, watch the black cat pacing before the mesh is generated completely.
|3,528 KB (Exe, DLL and Some Models, including a body data model)|
|Delaunay type triangular surface Mesh||31 Oct. 03|
Nurbs surface Delaunay Triangulation
For each triangle on a surface, its circumcircle is mapped into the parametric space, and the geometry of the mapped circle in the parametric space is approximated by an ellipse function. The triangulation in the parametric space is created and maintained using the property of empty circumellipse instead of empty circumcircle. Also surface's boundary curvature is used to control surface mesh density distribution if you like, or just fixed size.
First, load the Surface from iges file and then click the mesh button on the toolbar, set the mesh parameter.
|3,801 KB (Exe, DLL and Some Models)|
|IGES Viewer||5 Sep. 03|
This program is designed to load and display zyo (my format) and IGES CAD model.
You can take it as a IGES Viewer.
The B-spline Surface is rendered by my tessellation mesh, no Open GL evaluators (gluNewNurbsRenderer);
The untrimmed surface is meshed by tessellation.
The trimmed plane suface is meshed by Delaunay Triangulation with no minimum angle.
The trimmed curved surface is meshed by tessellation first and then spliting the boundaries' cells.
The background is fade by drawing a quad with different colors' vertexs.
|2,693 KB (Exe, DLL and Some Models)|
|Custom-Shaped OpenGL Window||9 Aug 03|
is a sphere with a texture mapping of earth.
By holding down the left mouse button and moving mouse, You can move the Window.
By holding down the right mouse button and moving mouse, You can rotate the earth.
Press Esc to close the window.
The red point on the earth is my location. :)
|547 KB (Exe and Source for VC++6.0)|
|Delaunay Trianglation Mesh Generation||11 Feb 03|
By far the most popular of the triangle meshing techniques are
those utilizing the Delaunay (Boris, N. Delaunay, (1934) "Sur la Sphere"
Vide. Izvestia Akademia Nauk SSSR, VII Seria, Otdelenie Matematicheskii i
Estestvennyka Nauk Vol 7 pp.793-800) criterion. The Delaunay criterion, sometimes called the "empty sphere" property simply stated,
says that any node must not be contained within the circumsphere of any
tetrahedra within the mesh.
The Delaunay criterion in itself, is not an algorithm for generating a mesh. It merely provides the criteria for which to connect a set of existing points in space. As such it is necessary to provide a method for generating node locations within the geometry. A typical approach is to first mesh the boundary of the geometry to provide an initial set of nodes. The boundary nodes are then triangulated according to the Delaunay criterion. Nodes are then inserted incrementally into the existing mesh, redefining the triangles locally as each new node is inserted to maintain the Delaunay criterion.
It is one 2D Delaunay algorithm with boundary nodes.
|47 KB (Exe and Source, DLL for VC++6.0)|
|Convex Hull of 2D Point Set||3 Dec 02|
simple example of how to compute the convex hull of any 2D point set or polygon
with no restrictions. the general 2D hull algorithms first sort the vertex point
set in O(n log n) time, and then use a stack to compute the hull in O(n) time. And
this example uses Andrew's Monotone Chain Algorithm.
|37 KB (EXE and Source for VC++6.0)|
|Reflection and shadow||3 Aug 02|
simple example of how to achieve reflections on a flat surface using
OpenGL blending. The example has a mode using OpenGL stenciling to avoid
drawing the reflection not on the top of the floor. Initially, stenciling
is not used so if you look (by holding down the left mouse button and
moving) at the dinosaur from "below" the floor, you'll see a bogus
dinosaur and appreciate how the basic technique works. Enable stenciling
with the popup menu and the bogus
dinosaur goes away! Also, notice that OpenGL lighting works correctly with
(Program that were contributed to the GLUT distribution from www.opengl.org)
|129 KB (EXE AND SOURCE)|
|Transparent 3D Demo||30 Jul 02|
|7 KB (EXE AND SOURCE)|
|Site Up||24 Jul 02|
Today, I've started Ziyoo homepage, which is about programming in Computer graphics. Mesh, OpenGL and Surface with C++. I hope you find what you're looking for or something else that interests you.