2006-08-14 01:16:03 +02:00
|
|
|
The goal of this project is to add Cell Shading capabilities to the Quake III
|
|
|
|
engine with Real-time performance.
|
2005-11-17 11:35:03 +01:00
|
|
|
|
2006-08-14 01:16:03 +02:00
|
|
|
In order to provide such feature we have decided to use Kuwahara filter.
|
|
|
|
Kuwahara filter is a noise-reduction filter that preserves edges.
|
2005-11-17 11:35:03 +01:00
|
|
|
|
2006-08-14 01:16:03 +02:00
|
|
|
It uses four subquadrants to calculate the mean and variance and chooses the
|
|
|
|
mean value for the region with the smallest variance.
|
2005-11-17 11:35:03 +01:00
|
|
|
|
2006-08-14 01:16:03 +02:00
|
|
|
To increase the hand-painted effect we have decided to apply a simple blur
|
|
|
|
filter to reduce hard-edges on textures and increase the flatness effect.
|
|
|
|
|
|
|
|
To produce the cell shading effect we use no graphics card shaders, so our
|
|
|
|
implementation could run with almost any gfx card. The edge effect is produced
|
|
|
|
by painting backface polygons with a thick wireframe without textures and
|
|
|
|
repaint all the scene, but this time, with textures.
|
|
|
|
|
|
|
|
We have also implemented a different algorithm (we call it White Texture),
|
|
|
|
which uses white textures. It looks like this and this, you can set the
|
|
|
|
console variable r_celshadalgo to 2, and load another map, or run using the
|
|
|
|
appropiate link that came with the release.
|
|
|
|
|
|
|
|
WWW: http://q3cellshading.sourceforge.net/
|