Changeset View
Changeset View
Standalone View
Standalone View
source/renderer/SkyManager.cpp
Show All 33 Lines | |||||
#include "ps/CStr.h" | #include "ps/CStr.h" | ||||
#include "ps/CLogger.h" | #include "ps/CLogger.h" | ||||
#include "ps/Game.h" | #include "ps/Game.h" | ||||
#include "ps/Loader.h" | #include "ps/Loader.h" | ||||
#include "ps/Filesystem.h" | #include "ps/Filesystem.h" | ||||
#include "ps/World.h" | #include "ps/World.h" | ||||
#include "renderer/SkyManager.h" | #include "renderer/SkyManager.h" | ||||
#include "renderer/Renderer.h" | #include "renderer/Renderer.h" | ||||
#include "renderer/RenderingOptions.h" | |||||
SkyManager::SkyManager() | SkyManager::SkyManager() | ||||
: m_RenderSky(true), m_SkyCubeMap(0) | : m_RenderSky(true), m_SkyCubeMap(0) | ||||
{ | { | ||||
} | } | ||||
/////////////////////////////////////////////////////////////////// | /////////////////////////////////////////////////////////////////// | ||||
// Load all sky textures | // Load all sky textures | ||||
▲ Show 20 Lines • Show All 170 Lines • ▼ Show 20 Lines | #else | ||||
glRotatef(180.0f + RADTODEG(g_Renderer.GetLightEnv().GetRotation()), 0.0f, 1.0f, 0.0f); | glRotatef(180.0f + RADTODEG(g_Renderer.GetLightEnv().GetRotation()), 0.0f, 1.0f, 0.0f); | ||||
// Currently we have a hardcoded near plane in the projection matrix. | // Currently we have a hardcoded near plane in the projection matrix. | ||||
glScalef(10.0f, 10.0f, 10.0f); | glScalef(10.0f, 10.0f, 10.0f); | ||||
CShaderProgramPtr shader; | CShaderProgramPtr shader; | ||||
CShaderTechniquePtr skytech; | CShaderTechniquePtr skytech; | ||||
if (g_Renderer.GetRenderPath() == CRenderer::RP_SHADER) | if (g_RenderingOptions.GetRenderPath() == RenderPath::SHADER) | ||||
{ | { | ||||
skytech = g_Renderer.GetShaderManager().LoadEffect(str_sky_simple); | skytech = g_Renderer.GetShaderManager().LoadEffect(str_sky_simple); | ||||
skytech->BeginPass(); | skytech->BeginPass(); | ||||
shader = skytech->GetShader(); | shader = skytech->GetShader(); | ||||
shader->BindTexture(str_baseTex, m_SkyCubeMap); | shader->BindTexture(str_baseTex, m_SkyCubeMap); | ||||
} | } | ||||
else | else | ||||
{ | { | ||||
Show All 37 Lines | #else | ||||
// GL_TEXTURE_CUBE_MAP_POSITIVE_Z | // GL_TEXTURE_CUBE_MAP_POSITIVE_Z | ||||
glTexCoord3f(+1, +1, -1); glVertex3f(-1.0f, -1.0f, +1.0f); | glTexCoord3f(+1, +1, -1); glVertex3f(-1.0f, -1.0f, +1.0f); | ||||
glTexCoord3f(-1, +1, -1); glVertex3f(+1.0f, -1.0f, +1.0f); | glTexCoord3f(-1, +1, -1); glVertex3f(+1.0f, -1.0f, +1.0f); | ||||
glTexCoord3f(-1, -1, -1); glVertex3f(+1.0f, +1.0f, +1.0f); | glTexCoord3f(-1, -1, -1); glVertex3f(+1.0f, +1.0f, +1.0f); | ||||
glTexCoord3f(+1, -1, -1); glVertex3f(-1.0f, +1.0f, +1.0f); | glTexCoord3f(+1, -1, -1); glVertex3f(-1.0f, +1.0f, +1.0f); | ||||
glEnd(); | glEnd(); | ||||
if (g_Renderer.GetRenderPath() == CRenderer::RP_SHADER) | if (g_RenderingOptions.GetRenderPath() == RenderPath::SHADER) | ||||
{ | { | ||||
skytech->EndPass(); | skytech->EndPass(); | ||||
} | } | ||||
else | else | ||||
{ | { | ||||
glBindTexture(GL_TEXTURE_CUBE_MAP, 0); | glBindTexture(GL_TEXTURE_CUBE_MAP, 0); | ||||
glDisable(GL_TEXTURE_CUBE_MAP); | glDisable(GL_TEXTURE_CUBE_MAP); | ||||
glEnable(GL_TEXTURE_2D); | glEnable(GL_TEXTURE_2D); | ||||
} | } | ||||
glPopMatrix(); | glPopMatrix(); | ||||
glDepthMask(GL_TRUE); | glDepthMask(GL_TRUE); | ||||
#endif | #endif | ||||
} | } |
Wildfire Games · Phabricator