draw: draw_distance for 3d spaces, proper positioning of skybox according to it, scenery demo on circle rasters
This commit is contained in:
@ -441,66 +441,68 @@ void finally_render_skybox(DeferredCommandDrawSkybox command) {
|
||||
glEnable(GL_DEPTH_CLAMP);
|
||||
#endif
|
||||
|
||||
float const d = camera_far_z / sqrtf(3);
|
||||
|
||||
glBegin(GL_QUADS); {
|
||||
/* up */
|
||||
glTexCoord3f(50.f, 50.f, 50.f);
|
||||
glVertex3f(50.f, 50.f, 50.f);
|
||||
glTexCoord3f(-50.f, 50.f, 50.f);
|
||||
glVertex3f(-50.f, 50.f, 50.f);
|
||||
glTexCoord3f(-50.f, 50.f, -50.f);
|
||||
glVertex3f(-50.f, 50.f, -50.f);
|
||||
glTexCoord3f(50.f, 50.f, -50.f);
|
||||
glVertex3f(50.f, 50.f, -50.f);
|
||||
glTexCoord3f(d, d, d);
|
||||
glVertex3f(d, d, d);
|
||||
glTexCoord3f(-d, d, d);
|
||||
glVertex3f(-d, d, d);
|
||||
glTexCoord3f(-d, d, -d);
|
||||
glVertex3f(-d, d, -d);
|
||||
glTexCoord3f(d, d, -d);
|
||||
glVertex3f(d, d, -d);
|
||||
|
||||
/* down */
|
||||
glTexCoord3f(50.f, -50.f, 50.f);
|
||||
glVertex3f(50.f, -50.f, 50.f);
|
||||
glTexCoord3f(50.f, -50.f, -50.f);
|
||||
glVertex3f(50.f, -50.f, -50.f);
|
||||
glTexCoord3f(-50.f, -50.f, -50.f);
|
||||
glVertex3f(-50.f, -50.f, -50.f);
|
||||
glTexCoord3f(-50.f, -50.f, 50.f);
|
||||
glVertex3f(-50.f, -50.f, 50.f);
|
||||
glTexCoord3f(d, -d, d);
|
||||
glVertex3f(d, -d, d);
|
||||
glTexCoord3f(d, -d, -d);
|
||||
glVertex3f(d, -d, -d);
|
||||
glTexCoord3f(-d, -d, -d);
|
||||
glVertex3f(-d, -d, -d);
|
||||
glTexCoord3f(-d, -d, d);
|
||||
glVertex3f(-d, -d, d);
|
||||
|
||||
/* east */
|
||||
glTexCoord3f(50.f, -50.f, 50.f);
|
||||
glVertex3f(50.f, -50.f, 50.f);
|
||||
glTexCoord3f(50.f, 50.f, 50.f);
|
||||
glVertex3f(50.f, 50.f, 50.f);
|
||||
glTexCoord3f(50.f, 50.f, -50.f);
|
||||
glVertex3f(50.f, 50.f, -50.f);
|
||||
glTexCoord3f(50.f, -50.f, -50.f);
|
||||
glVertex3f(50.f, -50.f, -50.f);
|
||||
glTexCoord3f(d, -d, d);
|
||||
glVertex3f(d, -d, d);
|
||||
glTexCoord3f(d, d, d);
|
||||
glVertex3f(d, d, d);
|
||||
glTexCoord3f(d, d, -d);
|
||||
glVertex3f(d, d, -d);
|
||||
glTexCoord3f(d, -d, -d);
|
||||
glVertex3f(d, -d, -d);
|
||||
|
||||
/* west */
|
||||
glTexCoord3f(-50.f, -50.f, 50.f);
|
||||
glVertex3f(-50.f, -50.f, 50.f);
|
||||
glTexCoord3f(-50.f, -50.f, -50.f);
|
||||
glVertex3f(-50.f, -50.f, -50.f);
|
||||
glTexCoord3f(-50.f, 50.f, -50.f);
|
||||
glVertex3f(-50.f, 50.f, -50.f);
|
||||
glTexCoord3f(-50.f, 50.f, 50.f);
|
||||
glVertex3f(-50.f, 50.f, 50.f);
|
||||
glTexCoord3f(-d, -d, d);
|
||||
glVertex3f(-d, -d, d);
|
||||
glTexCoord3f(-d, -d, -d);
|
||||
glVertex3f(-d, -d, -d);
|
||||
glTexCoord3f(-d, d, -d);
|
||||
glVertex3f(-d, d, -d);
|
||||
glTexCoord3f(-d, d, d);
|
||||
glVertex3f(-d, d, d);
|
||||
|
||||
/* north */
|
||||
glTexCoord3f(-50.f, -50.f, 50.f);
|
||||
glVertex3f(-50.f, -50.f, 50.f);
|
||||
glTexCoord3f(-50.f, 50.f, 50.f);
|
||||
glVertex3f(-50.f, 50.f, 50.f);
|
||||
glTexCoord3f(50.f, 50.f, 50.f);
|
||||
glVertex3f(50.f, 50.f, 50.f);
|
||||
glTexCoord3f(50.f, -50.f, 50.f);
|
||||
glVertex3f(50.f, -50.f, 50.f);
|
||||
glTexCoord3f(-d, -d, d);
|
||||
glVertex3f(-d, -d, d);
|
||||
glTexCoord3f(-d, d, d);
|
||||
glVertex3f(-d, d, d);
|
||||
glTexCoord3f(d, d, d);
|
||||
glVertex3f(d, d, d);
|
||||
glTexCoord3f(d, -d, d);
|
||||
glVertex3f(d, -d, d);
|
||||
|
||||
/* south */
|
||||
glTexCoord3f(-50.f, -50.f, -50.f);
|
||||
glVertex3f(-50.f, -50.f, -50.f);
|
||||
glTexCoord3f(50.f, -50.f, -50.f);
|
||||
glVertex3f(50.f, -50.f, -50.f);
|
||||
glTexCoord3f(50.f, 50.f, -50.f);
|
||||
glVertex3f(50.f, 50.f, -50.f);
|
||||
glTexCoord3f(-50.f, 50.f, -50.f);
|
||||
glVertex3f(-50.f, 50.f, -50.f);
|
||||
glTexCoord3f(-d, -d, -d);
|
||||
glVertex3f(-d, -d, -d);
|
||||
glTexCoord3f(d, -d, -d);
|
||||
glVertex3f(d, -d, -d);
|
||||
glTexCoord3f(d, d, -d);
|
||||
glVertex3f(d, d, -d);
|
||||
glTexCoord3f(-d, d, -d);
|
||||
glVertex3f(-d, d, -d);
|
||||
} glEnd();
|
||||
|
||||
#ifndef __EMSCRIPTEN__
|
||||
|
Reference in New Issue
Block a user