yes, I've seen that too. at least in my shadow demo concave shapes won't work, only convex ones. The reason why is concave shapes may force the renderers ray to go trough the hull surface not 1 or to time sonly, but 3 or 4 times.
Where in true stencil shadows the counter would add one when the ray hits the outside surface of the volume and subtract 1 when it hits the inside surface (resulting in 0 or 1 for shadow or not shadow), this blitz based demo uses ALpha to produce 2 maskables shades of grey.
I have also started the implementation of volume creation using a method desribed in the papers. This method will create a list conaining the 3 neighbour triangles of every triangle. It will then determine the backface culling state of every triangle, from the viewpoint of the light. Now every nonculled triangle that has at least 1 neighbour that is culled is a potential edge triangle. Finally I have to determine if the edge triangles are obscured by other triangles. If they are not, then they are the wanted edge triangles.
The problem is: I again have to check the visibility of every triangle from the viewpoint of the light. That's the slow part again, No matter if you use Linepick, Coldet picks or even the fast ICU method.
For the ICU method a copy of the mesh must be created on the fly, with unwelded vertices, the triangles are then colored individually, just to render it, then use readpixelfast to determine what colors were rendered (=visible triangles) and finally delete the ICU mesh copy again. Basicly ICU may be faster than all math picking stuff, but it also complicates things massively and makes it unflexible.
I still hope Fredborg will release the source for the volume creation of the Beethoven Stencil shadows demo.
I stopped this since this is really trying to reinvent the wheel.
Where in true stencil shadows the counter would add one when the ray hits the outside surface of the volume and subtract 1 when it hits the inside surface (resulting in 0 or 1 for shadow or not shadow), this blitz based demo uses ALpha to produce 2 maskables shades of grey.
I have also started the implementation of volume creation using a method desribed in the papers. This method will create a list conaining the 3 neighbour triangles of every triangle. It will then determine the backface culling state of every triangle, from the viewpoint of the light. Now every nonculled triangle that has at least 1 neighbour that is culled is a potential edge triangle. Finally I have to determine if the edge triangles are obscured by other triangles. If they are not, then they are the wanted edge triangles.
The problem is: I again have to check the visibility of every triangle from the viewpoint of the light. That's the slow part again, No matter if you use Linepick, Coldet picks or even the fast ICU method.
For the ICU method a copy of the mesh must be created on the fly, with unwelded vertices, the triangles are then colored individually, just to render it, then use readpixelfast to determine what colors were rendered (=visible triangles) and finally delete the ICU mesh copy again. Basicly ICU may be faster than all math picking stuff, but it also complicates things massively and makes it unflexible.
I still hope Fredborg will release the source for the volume creation of the Beethoven Stencil shadows demo.
I stopped this since this is really trying to reinvent the wheel.