08.08.2004
Program uses pixel buffer, for rendering scene to texture. Motion blur is make with equation:
frame(t+1) = alpha*texture + (1-alpha)*frame(t)
Frame buffer doesn’t need clear. Frame buffer doesn’t contain z-buffer. Alpha is preset on 0.18. Texture has 1024 * 1024. Texture contain z-buffer.
Request: WGL_ARB_pbuffer, WGL_ARB_pixel_format and WGL_ARB_render_texture.
source code and executable – 640kB
10.02.2004
I use vertex program for drawing object lighting with 17 point lights.
Reques: GL_ARB_vertex_program
source code and executable – 240kB
30.10.2003
It uses:
- law of reflection
- Snell’s Law
- Fresnel equation
Recommend: GL_ARB_multitexture, GL_ARB_texture_env_combine and GL_ARB_texture_cube_map.
source code and executable – 180kB without jpeglibm.lib
12.09.2003
There are:
- lighting with light-map which was created with radiosity in 3ds max
- better collision
- gravitation and jumps
source code and executable – 660kB without jpeglibm.lib
model to 3ds max – 95kB
25.08.2003
I use algorithm, which is explained in
Practical and Robust Shadow Volumes (.pdf) (2153 KB).
Program request hardware accelerated 8 bits stencil buffer.
source code and program – 25kB
31.07.2003
Request:
GL_ARB_multitexture, GL_ARB_texture_env_combine a GL_ATI_envmap_bumpmap.
source code and executable – 320kB without jpeglibm.lib
24.07.2003
Dot Product 3 Bump Mapping is per-pixel lighitng. Use dot product per-pixel. Standard lighting in OpenGL is computed per-vertex. I use equation:
color = ambient + (N.L)xDifuzeColor + (N.H)^SpecExp x SpecularColor
N is normal vector, this is texture map, created from bump map with Sobel-Prewitt filter.
L is light vector. L = light_pos – vertex_pos
H = HalfVector = normalize[ ( eye_pos-vertex_pos ) + ( light_pos-vertex_pos) ]
Request: GL_ARB_multitexture, GL_ARB_texture_env_combine, GL_ARB_texture_env_dot3.
source code and executable – 430kB without jpeglibm.lib
08.09.2002
Terrain is important part of more type games.
I use octree and volumetric fog.
source code (without jpeg.lib) and executable – 290kB