34 {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,},
35 {0x00, 0x00, 0x20, 0x40, 0x40, 0x20, 0x00, 0x00,},
36 {0x00, 0x20, 0xa0, 0xc0, 0xc0, 0xa0, 0x20, 0x00,},
37 {0x00, 0x40, 0xc0, 0xff, 0xff, 0xc0, 0x40, 0x00,},
38 {0x00, 0x40, 0xc0, 0xff, 0xff, 0xc0, 0x40, 0x00,},
39 {0x00, 0x20, 0xa0, 0xc0, 0xc0, 0xa0, 0x20, 0x00,},
40 {0x00, 0x00, 0x20, 0x40, 0x40, 0x20, 0x00, 0x00,},
41 {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,}
51 static GLuint wpTextureHandle = 0;
54 return wpTextureHandle;
65 return wpTextureHandle;
293 const float splashFactor = prt.
ttl / 500.0f;
294 thisParticleSize *= (
splashSize - 1.0f) * splashFactor + 1.0f;
295 dx = dy = thisParticleSize;
297 dx =
i & 1 ? thisParticleSize* 2 : thisParticleSize; dy =
i & 1 ? thisParticleSize : thisParticleSize * 2 ;
300 x = prt.
x; y = prt.
y; z = prt.
z;
303 GLfloat *pos = &prtPos[3 * 4 * prtCount];
304 GLfloat *texcoord = &prtTexcoord[2 * 4 * prtCount];
305 GLushort *idx = &prtIndex[3 * 2 * prtCount];
308 pos[0] = x - dx; pos[1] = y - dy; pos[2] = z + dz * 2;
309 pos[3] = x + dx; pos[4] = y - dy; pos[5] = z + dz *2;
310 pos[6] = x + dx; pos[7] = y + dy; pos[8] = z;
311 pos[9] = x - dx; pos[10] = y + dy; pos[11] = z;
313 texcoord[0] = 0; texcoord[1] = 0;
314 texcoord[2] = 1.0f; texcoord[3] = 0;
315 texcoord[4] = 1.0f; texcoord[5] = 1.0f;
316 texcoord[6] = 0; texcoord[7] = 1.0f;
318 idx[0] = 4 * prtCount; idx[1] = 4 * prtCount + 1; idx[2] = 4 * prtCount + 2;
319 idx[3] = 4 * prtCount + 2; idx[4] = 4 * prtCount + 3; idx[5] = 4 * prtCount;
331 R_BindArray(GL_TEXTURE_COORD_ARRAY, GL_FLOAT, prtTexcoord);
333 glDrawElements(GL_TRIANGLES, prtCount * 3 * 2, GL_UNSIGNED_SHORT, prtIndex);
trace_t CL_Trace(const Line &traceLine, const AABB &box, const le_t *passle, le_t *passle2, int contentmask, int worldLevel)
Moves the given mins/maxs volume through the world from start to end.
void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *texels)