void R_InitParticleTexture (void) { int x,y; byte data[8][8][4]; // // particle texture // for (x=0 ; x<8 ; x++) { for (y=0 ; y<8 ; y++) { data[y][x][0] = 255; data[y][x][1] = 255; data[y][x][2] = 255; data[y][x][3] = dottexture[x][y]*255; } } r_particletexture = GL_LoadPic ("***particle***", (byte *)data, 8, 8, it_sprite, 32); // // also use this for bad textures, but without alpha // for (x=0 ; x<8 ; x++) { for (y=0 ; y<8 ; y++) { data[y][x][0] = dottexture[x&3][y&3]*255; data[y][x][1] = 0; // dottexture[x&3][y&3]*255; data[y][x][2] = 0; //dottexture[x&3][y&3]*255; data[y][x][3] = 255; } } r_notexture = GL_LoadPic ("***r_notexture***", (byte *)data, 8, 8, it_wall, 32); }
void R_InitParticleTexture (void) { int x,y; byte data[8][8][4]; /// // particle texture // for (x=0 ; x<8 ; x++) { for (y=0 ; y<8 ; y++) { data[y][x][0] = 255; data[y][x][1] = 255; data[y][x][2] = 255; data[y][x][3] = dottexture[x][y]; // c14 Just this line changes } } r_particletexture = Draw_FindPic("particle"); //c14 add this line if (!r_particletexture) { //c14 add this line r_particletexture = GL_LoadPic ("***particle***", (byte *)data, 8, 8, it_sprite, 32); } //c14 add this line // // also use this for bad textures, but without alpha // for (x=0 ; x<8 ; x++) { for (y=0 ; y<8 ; y++) { data[y][x][0] = dottexture[x&3][y&3]*255; data[y][x][1] = 0; // dottexture[x&3][y&3]*255; data[y][x][2] = 0; //dottexture[x&3][y&3]*255; data[y][x][3] = 255; } } r_notexture = GL_LoadPic ("***r_notexture***", (byte *)data, 8, 8, it_wall, 32); // --==OBSIDIAN UPDATE==-- // Based on work by Carbon14 r_shelltexture[0] = Draw_FindPic("shell/shell0"); r_shelltexture[1] = Draw_FindPic("shell/shell1"); r_shelltexture[2] = Draw_FindPic("shell/shell2"); r_shelltexture[3] = Draw_FindPic("shell/shell3"); r_shelltexture[4] = Draw_FindPic("shell/shell4"); for (x = 0; x < 5; x++){ if (!r_shelltexture[x]) { r_shelltexture[x] = GL_LoadPic ("***shell***", (byte *)data, 8, 8, it_sprite, 32); } } }
/* =============== R_FindImage Finds or loads the given image =============== */ image_t *R_FindImage (char *name, imagetype_t type) { image_t *image; int i, len; byte *pic, *palette; int width, height; char *ptr; if (!name) return NULL; // ri.Sys_Error (ERR_DROP, "R_FindImage: NULL name"); len = strlen(name); if (len<5) return NULL; // ri.Sys_Error (ERR_DROP, "R_FindImage: bad name: %s", name); #ifndef _WIN32 // fix backslashes while ((ptr=strchr(name,'\\'))) { *ptr = '/'; } #endif // look for it for (i=0, image=r_images ; i<numr_images ; i++,image++) { if (!strcmp(name, image->name)) { image->registration_sequence = registration_sequence; return image; } } // // load the pic from disk // pic = NULL; palette = NULL; if (!strcmp(name+len-4, ".pcx")) { LoadPCX (name, &pic, &palette, &width, &height); if (!pic) return NULL; // ri.Sys_Error (ERR_DROP, "R_FindImage: can't load %s", name); image = GL_LoadPic (name, pic, width, height, type); } else if (!strcmp(name+len-4, ".wal")) { image = R_LoadWal (name); } else if (!strcmp(name+len-4, ".tga")) return NULL; // ri.Sys_Error (ERR_DROP, "R_FindImage: can't load %s in software renderer", name); else return NULL; // ri.Sys_Error (ERR_DROP, "R_FindImage: bad extension on: %s", name); if (pic) free(pic); if (palette) free(palette); return image; }