22 static bool visible_shadow_volumes =
false;
27 : verts(0), nverts(0), max_verts(0), edges(0), num_edges(0), enabled(true)
37 edges =
new(__FILE__,__LINE__) WORD[npolys * 6];
92 lpos.
x = tmp *
Vec3(xform(0,0), xform(0,1), xform(0,2));
93 lpos.
y = tmp * Vec3(xform(1,0), xform(1,1), xform(1,2));
94 lpos.
z = tmp * Vec3(xform(2,0), xform(2,1), xform(2,2));
98 for (
int i = 0; i < s->
NumPolys(); i++) {
107 for (
int n = 0; n < p->
nverts; n++) {
119 Vec3 extent = lpos * -1;
123 for (
int i = 0; i < (int)
num_edges; i++) {
127 Vec3 v3 = v1 + extent;
128 Vec3 v4 = v2 + extent;
147 if ((
edges[2*i+0] == v1 &&
edges[2*i+1] == v2) ||
152 edges[2*i+1] = edges[2*(num_edges-1)+1];
160 edges[2*num_edges+0] = v1;
161 edges[2*num_edges+1] = v2;
169 return visible_shadow_volumes;
175 visible_shadow_volumes = vis;