124{
126 float min_len = dt / 256.0f;
127
130 vert[1].
t =
hex->current.zero_wait*0.5f;
132 vert[2].
t = 0.5f*
hex->current.peak_time + vert[1].
t*(1-
hex->current.peak_time);
135 vert[3].
v =
hex->current.half_height;
136
137 if (
hex->current.reflect) {
138 for (j=4; j <= 7; ++j) {
139 vert[j].
t = 1 - vert[7-j].
t;
140 vert[j].
v = - vert[7-j].
v;
141 }
142 } else {
143 for (j=4; j <= 7; ++j) {
144 vert[j].
t = 0.5f + vert[j-4].
t;
145 vert[j].
v = - vert[j-4].
v;
146 }
147 }
150
151 for (j=0; j < 8; ++j) {
152 if (vert[j+1].
t <= vert[j].
t + min_len) {
153
154
155
156
157
158
159
160
161
162
163
164
165 vert[j+1].
t = vert[j].
t;
166 }
167 }
168
169 if (vert[8].
t != 1.0f) {
170
171
173 for (j=5; j <= 8; ++j)
176 }
177
178
179 for (j=0; j < 8; ++j)
180 if (vert[j+1].
t == vert[j].
t)
182 else
183 vert[j].
s = (vert[j+1].
v - vert[j].
v) / (vert[j+1].
t - vert[j].
t);
184
185
187 vert[8].
v = vert[0].
v;
188 vert[8].
s = vert[0].
s;
189}