| 252 | } |
| 253 | |
| 254 | void render_flatdelta(int wtex, int x, int y, int size, float h1, float h4, float h3, float h2, sqr *l1, sqr *l4, sqr *l3, sqr *l2, bool isceil) // floor/ceil quads on a slope |
| 255 | { |
| 256 | if(showmipstats) { l3 = l1 = &sbright; l4 = l2 = &sdark; } |
| 257 | |
| 258 | Texture *t = lookupworldtexture(wtex); |
| 259 | float xf = TEXTURESCALE/t->xs; |
| 260 | float yf = TEXTURESCALE/t->ys; |
| 261 | float xs = size*xf; |
| 262 | float ys = size*yf; |
| 263 | float xo = xf*x; |
| 264 | float yo = yf*y; |
| 265 | |
| 266 | bool first = striptype!=STRIP_DELTA || x!=ox+size || striptex!=wtex || y!=oy; |
| 267 | |
| 268 | if(first) |
| 269 | { |
| 270 | stripend(verts); |
| 271 | firstindex = verts.length(); |
| 272 | striptex = wtex; |
| 273 | oy = y; |
| 274 | striptype = STRIP_DELTA; |
| 275 | if(isceil) |
| 276 | { |
| 277 | vert(x, y, h1, l1, xo, yo); |
| 278 | vert(x, y+size, h2, l2, xo, yo+ys); |
| 279 | } |
| 280 | else |
| 281 | { |
| 282 | vert(x, y+size, h2, l2, xo, yo+ys); |
| 283 | vert(x, y, h1, l1, xo, yo); |
| 284 | } |
| 285 | } |
| 286 | |
| 287 | if(isceil) |
| 288 | { |
| 289 | vert(x+size, y, h4, l4, xo+xs, yo); |
| 290 | vert(x+size, y+size, h3, l3, xo+xs, yo+ys); |
| 291 | } |
| 292 | else |
| 293 | { |
| 294 | vert(x+size, y+size, h3, l3, xo+xs, yo+ys); |
| 295 | vert(x+size, y, h4, l4, xo+xs, yo); |
| 296 | } |
| 297 | |
| 298 | ox = x; |
| 299 | nquads++; |
| 300 | } |
| 301 | |
| 302 | void render_2tris(sqr *h, sqr *s, int x1, int y1, int x2, int y2, int x3, int y3, sqr *l1, sqr *l2, sqr *l3) // floor/ceil tris on a corner cube |
| 303 | { |
nothing calls this directly
no test coverage detected