From c7bea1307779c704cfa1879b0fefa11fa0463d93 Mon Sep 17 00:00:00 2001 From: lordhavoc Date: Fri, 15 Jun 2001 20:55:45 +0000 Subject: [PATCH] another attempt to fix skybox loading git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@234 d7cf8633-e32d-0410-b094-e92efae38249 --- gl_poly.c | 25 +++++++++++++++++-------- gl_poly.h | 1 + render.h | 3 --- 3 files changed, 18 insertions(+), 11 deletions(-) diff --git a/gl_poly.c b/gl_poly.c index df53f9f0..1bc09e66 100644 --- a/gl_poly.c +++ b/gl_poly.c @@ -751,7 +751,7 @@ void skypolyrender(void) } } -char skyname[256]; +static char skyname[256]; /* ================== @@ -760,19 +760,19 @@ R_SetSkyBox */ char *suf[6] = {"rt", "bk", "lf", "ft", "up", "dn"}; rtexture_t *skyboxside[6]; -void R_SetSkyBox(char *sky) +int R_SetSkyBox(char *sky) { int i; char name[1024]; byte* image_rgba; if (strcmp(sky, skyname) == 0) // no change - return; + return true; if (strlen(sky) > 1000) { Con_Printf ("sky name too long (%i, max is 1000)\n", strlen(sky)); - return; + return false; } skyboxside[0] = skyboxside[1] = skyboxside[2] = skyboxside[3] = skyboxside[4] = skyboxside[5] = NULL; @@ -780,7 +780,7 @@ void R_SetSkyBox(char *sky) skyname[0] = 0; if (!sky[0]) - return; + return true; for (i = 0;i < 6;i++) { @@ -802,7 +802,9 @@ void R_SetSkyBox(char *sky) { skyavailable_box = true; strcpy(skyname, sky); + return true; } + return false; } // LordHavoc: added LoadSky console command @@ -814,11 +816,18 @@ void LoadSky_f (void) if (skyname[0]) Con_Printf("current sky: %s\n", skyname); else - Con_Printf("no skybox has been set\n", skyname); + Con_Printf("no skybox has been set\n"); break; case 2: - R_SetSkyBox(Cmd_Argv(1)); - Con_Printf("skybox set to %s\n", skyname); + if (R_SetSkyBox(Cmd_Argv(1))) + { + if (skyname[0]) + Con_Printf("skybox set to %s\n", skyname); + else + Con_Printf("skybox disabled\n"); + } + else + Con_Printf("failed to load skybox %s\n", Cmd_Argv(1)); break; default: Con_Printf("usage: loadsky skyname\n"); diff --git a/gl_poly.h b/gl_poly.h index bd8c4f6f..a7bb414e 100644 --- a/gl_poly.h +++ b/gl_poly.h @@ -1,4 +1,5 @@ +extern int R_SetSkyBox(char* sky); extern cvar_t r_skyquality; #define TPOLYTYPE_ALPHA 0 diff --git a/render.h b/render.h index b8c9bf54..5d834267 100644 --- a/render.h +++ b/render.h @@ -20,9 +20,6 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // refresh.h -- public interface to refresh functions -// sky stuff -extern void R_SetSkyBox(char* sky); - // far clip distance for scene extern cvar_t r_farclip; -- 2.39.2