Changeset View
Changeset View
Standalone View
Standalone View
source/renderer/scripting/JSInterface_Renderer.cpp
Show All 14 Lines | |||||
* along with 0 A.D. If not, see <http://www.gnu.org/licenses/>. | * along with 0 A.D. If not, see <http://www.gnu.org/licenses/>. | ||||
*/ | */ | ||||
#include "precompiled.h" | #include "precompiled.h" | ||||
#include "JSInterface_Renderer.h" | #include "JSInterface_Renderer.h" | ||||
#include "graphics/TextureManager.h" | #include "graphics/TextureManager.h" | ||||
#include "graphics/GameView.h" | |||||
#include "ps/Game.h" | |||||
#include "ps/Profile.h" | #include "ps/Profile.h" | ||||
#include "ps/ScreenSize.h" | |||||
#include "renderer/Renderer.h" | #include "renderer/Renderer.h" | ||||
#include "renderer/ShadowMap.h" | #include "renderer/ShadowMap.h" | ||||
#include "scriptinterface/ScriptInterface.h" | #include "scriptinterface/ScriptInterface.h" | ||||
#define IMPLEMENT_BOOLEAN_SCRIPT_SETTING(NAME, SCRIPTNAME) \ | #define IMPLEMENT_BOOLEAN_SCRIPT_SETTING(NAME, SCRIPTNAME) \ | ||||
bool JSI_Renderer::Get##SCRIPTNAME##Enabled(ScriptInterface::CxPrivate* UNUSED(pCxPrivate)) \ | bool JSI_Renderer::Get##SCRIPTNAME##Enabled(ScriptInterface::CxPrivate* UNUSED(pCxPrivate)) \ | ||||
{ \ | { \ | ||||
return g_Renderer.GetOptionBool(CRenderer::OPT_##NAME); \ | return g_Renderer.GetOptionBool(CRenderer::OPT_##NAME); \ | ||||
Show All 13 Lines | |||||
IMPLEMENT_BOOLEAN_SCRIPT_SETTING(WATERREALDEPTH, WaterRealDepth); | IMPLEMENT_BOOLEAN_SCRIPT_SETTING(WATERREALDEPTH, WaterRealDepth); | ||||
IMPLEMENT_BOOLEAN_SCRIPT_SETTING(WATERREFLECTION, WaterReflection); | IMPLEMENT_BOOLEAN_SCRIPT_SETTING(WATERREFLECTION, WaterReflection); | ||||
IMPLEMENT_BOOLEAN_SCRIPT_SETTING(WATERREFRACTION, WaterRefraction); | IMPLEMENT_BOOLEAN_SCRIPT_SETTING(WATERREFRACTION, WaterRefraction); | ||||
IMPLEMENT_BOOLEAN_SCRIPT_SETTING(SHADOWSONWATER, WaterShadows); | IMPLEMENT_BOOLEAN_SCRIPT_SETTING(SHADOWSONWATER, WaterShadows); | ||||
IMPLEMENT_BOOLEAN_SCRIPT_SETTING(FOG, Fog); | IMPLEMENT_BOOLEAN_SCRIPT_SETTING(FOG, Fog); | ||||
IMPLEMENT_BOOLEAN_SCRIPT_SETTING(SILHOUETTES, Silhouettes); | IMPLEMENT_BOOLEAN_SCRIPT_SETTING(SILHOUETTES, Silhouettes); | ||||
IMPLEMENT_BOOLEAN_SCRIPT_SETTING(SHOWSKY, ShowSky); | IMPLEMENT_BOOLEAN_SCRIPT_SETTING(SHOWSKY, ShowSky); | ||||
IMPLEMENT_BOOLEAN_SCRIPT_SETTING(SMOOTHLOS, SmoothLOS); | IMPLEMENT_BOOLEAN_SCRIPT_SETTING(SMOOTHLOS, SmoothLOS); | ||||
IMPLEMENT_BOOLEAN_SCRIPT_SETTING(POSTPROC, Postproc); | |||||
IMPLEMENT_BOOLEAN_SCRIPT_SETTING(DISPLAYFRUSTUM, DisplayFrustum); | IMPLEMENT_BOOLEAN_SCRIPT_SETTING(DISPLAYFRUSTUM, DisplayFrustum); | ||||
#undef IMPLEMENT_BOOLEAN_SCRIPT_SETTING | #undef IMPLEMENT_BOOLEAN_SCRIPT_SETTING | ||||
std::string JSI_Renderer::GetRenderPath(ScriptInterface::CxPrivate* UNUSED(pCxPrivate)) | std::string JSI_Renderer::GetRenderPath(ScriptInterface::CxPrivate* UNUSED(pCxPrivate)) | ||||
{ | { | ||||
return CRenderer::GetRenderPathName(g_Renderer.GetRenderPath()); | return CRenderer::GetRenderPathName(g_Renderer.GetRenderPath()); | ||||
} | } | ||||
void JSI_Renderer::SetRenderPath(ScriptInterface::CxPrivate* UNUSED(pCxPrivate), const std::string& name) | void JSI_Renderer::SetRenderPath(ScriptInterface::CxPrivate* UNUSED(pCxPrivate), const std::string& name) | ||||
{ | { | ||||
g_Renderer.SetRenderPath(CRenderer::GetRenderPathByName(name)); | g_Renderer.SetRenderPath(CRenderer::GetRenderPathByName(name)); | ||||
} | } | ||||
bool JSI_Renderer::GetPostprocEnabled(ScriptInterface::CxPrivate* UNUSED(pCxPrivate)) | |||||
{ | |||||
return g_Renderer.m_Options.m_Postproc; | |||||
} | |||||
void JSI_Renderer::SetPostprocEnabled(ScriptInterface::CxPrivate* UNUSED(pCxPrivate), bool Enabled) | |||||
{ | |||||
g_Renderer.m_Options.m_Postproc = Enabled; | |||||
g_Renderer.Resize(g_ScreenSize.RendererWidth(), g_ScreenSize.RendererHeight()); | |||||
SViewPort vp = { 0, 0, g_ScreenSize.RendererWidth(), g_ScreenSize.RendererHeight() }; | |||||
g_Game->GetView()->SetViewport(vp); | |||||
} | |||||
void JSI_Renderer::RecreateShadowMap(ScriptInterface::CxPrivate* UNUSED(pCxPrivate)) | void JSI_Renderer::RecreateShadowMap(ScriptInterface::CxPrivate* UNUSED(pCxPrivate)) | ||||
{ | { | ||||
g_Renderer.GetShadowMap().RecreateTexture(); | g_Renderer.GetShadowMap().RecreateTexture(); | ||||
} | } | ||||
bool JSI_Renderer::TextureExists(ScriptInterface::CxPrivate* UNUSED(pCxPrivate), const std::wstring& filename) | bool JSI_Renderer::TextureExists(ScriptInterface::CxPrivate* UNUSED(pCxPrivate), const std::wstring& filename) | ||||
{ | { | ||||
return g_Renderer.GetTextureManager().TextureExists(filename); | return g_Renderer.GetTextureManager().TextureExists(filename); | ||||
Show All 31 Lines |
Wildfire Games · Phabricator