From c6c2e9139fcdaa9c059bfe1c4997f1b11e3fa482 Mon Sep 17 00:00:00 2001 From: Areloch Date: Sun, 5 Dec 2021 11:00:02 -0600 Subject: [PATCH] Cleans up some core execution behavior Removes a duplicated material definition Fixes up PostFX init'ing order so it inits before trying to load the prefs Adds a skip of loading the CoreModule's materials so we don't double-execute any of them Fixes a typo for the Vignette PostFX's name so it properly integrates --- .../core/gameObjects/shapes/materials.tscript | 17 ---------- .../game/core/postFX/images/materials.tscript | 32 ------------------- .../game/core/postFX/scripts/postFx.tscript | 26 +++++++-------- .../core/rendering/Core_Rendering.tscript | 4 +-- .../rendering/scripts/graphicsOptions.tscript | 2 +- .../game/core/utility/scripts/module.tscript | 3 ++ 6 files changed, 19 insertions(+), 65 deletions(-) delete mode 100644 Templates/BaseGame/game/core/postFX/images/materials.tscript diff --git a/Templates/BaseGame/game/core/gameObjects/shapes/materials.tscript b/Templates/BaseGame/game/core/gameObjects/shapes/materials.tscript index 9cc31fbbe..1ff2dc498 100644 --- a/Templates/BaseGame/game/core/gameObjects/shapes/materials.tscript +++ b/Templates/BaseGame/game/core/gameObjects/shapes/materials.tscript @@ -55,23 +55,6 @@ singleton Material(CameraMat) }; //--- camera.dts MATERIALS END --- -//--- noshape.dts MATERIALS BEGIN --- -singleton Material(noshape_NoShape) -{ - mapTo = "NoShape"; - - diffuseMapAsset[0] = ""; - - diffuseColor[0] = "0.8 0.003067 0 .8"; - emissive[0] = 0; - - doubleSided = false; - translucent = 1; - translucentBlendOp = "LerpAlpha"; - castShadows = false; -}; - -//--- noshape.dts MATERIALS END --- //--- noshapetext.dae MATERIALS BEGIN --- singleton Material(noshapetext_lambert1) diff --git a/Templates/BaseGame/game/core/postFX/images/materials.tscript b/Templates/BaseGame/game/core/postFX/images/materials.tscript deleted file mode 100644 index df1abcfbc..000000000 --- a/Templates/BaseGame/game/core/postFX/images/materials.tscript +++ /dev/null @@ -1,32 +0,0 @@ -//----------------------------------------------------------------------------- -// Copyright (c) 2012 GarageGames, LLC -// -// Permission is hereby granted, free of charge, to any person obtaining a copy -// of this software and associated documentation files (the "Software"), to -// deal in the Software without restriction, including without limitation the -// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -// sell copies of the Software, and to permit persons to whom the Software is -// furnished to do so, subject to the following conditions: -// -// The above copyright notice and this permission notice shall be included in -// all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS -// IN THE SOFTWARE. -//----------------------------------------------------------------------------- - -singleton Material( Empty ) -{ -}; - -singleton Material(WarningMaterial) { - detailMapAsset[0] = "Core_PostFX:missingTexture_image"; - diffuseColor[0] = "25 16 0"; - emissive[0] = false; - translucent = false; -}; diff --git a/Templates/BaseGame/game/core/postFX/scripts/postFx.tscript b/Templates/BaseGame/game/core/postFX/scripts/postFx.tscript index cbea8fe1f..24035a97f 100644 --- a/Templates/BaseGame/game/core/postFX/scripts/postFx.tscript +++ b/Templates/BaseGame/game/core/postFX/scripts/postFx.tscript @@ -20,21 +20,21 @@ // IN THE SOFTWARE. //----------------------------------------------------------------------------- -singleton ShaderData( PFX_PassthruShader ) -{ - DXVertexShaderFile = $Core::CommonShaderPath @ "/postFX/postFxV.hlsl"; - DXPixelShaderFile = $Core::CommonShaderPath @ "/postFX/passthruP.hlsl"; - - OGLVertexShaderFile = $Core::CommonShaderPath @ "/postFX/gl/postFxV.glsl"; - OGLPixelShaderFile = $Core::CommonShaderPath @ "/postFX/gl/passthruP.glsl"; - - samplerNames[0] = "$inputTex"; - - pixVersion = 2.0; -}; - function postFXInit() { + singleton ShaderData( PFX_PassthruShader ) + { + DXVertexShaderFile = $Core::CommonShaderPath @ "/postFX/postFxV.hlsl"; + DXPixelShaderFile = $Core::CommonShaderPath @ "/postFX/passthruP.hlsl"; + + OGLVertexShaderFile = $Core::CommonShaderPath @ "/postFX/gl/postFxV.glsl"; + OGLPixelShaderFile = $Core::CommonShaderPath @ "/postFX/gl/passthruP.glsl"; + + samplerNames[0] = "$inputTex"; + + pixVersion = 2.0; + }; + //Load the core postFX files themselves if (!$Server::Dedicated) { diff --git a/Templates/BaseGame/game/core/rendering/Core_Rendering.tscript b/Templates/BaseGame/game/core/rendering/Core_Rendering.tscript index 142f04783..eb18dfe8a 100644 --- a/Templates/BaseGame/game/core/rendering/Core_Rendering.tscript +++ b/Templates/BaseGame/game/core/rendering/Core_Rendering.tscript @@ -59,11 +59,11 @@ function Core_Rendering::initClient(%this) configureCanvas(); + postFXInit(); + //Autodetect settings if it's our first time if($pref::Video::autoDetect) AutodetectGraphics(); - - postFXInit(); closeSplashWindow(); diff --git a/Templates/BaseGame/game/core/rendering/scripts/graphicsOptions.tscript b/Templates/BaseGame/game/core/rendering/scripts/graphicsOptions.tscript index 40fcc9e6d..a03745ccb 100644 --- a/Templates/BaseGame/game/core/rendering/scripts/graphicsOptions.tscript +++ b/Templates/BaseGame/game/core/rendering/scripts/graphicsOptions.tscript @@ -811,7 +811,7 @@ function AutodetectGraphics_Apply(%shaderVer, %intel, %videoMem ) PostFXManager.settingsEffectSetEnabled(HDRPostFX, $pref::PostFX::EnableHDR); PostFXManager.settingsEffectSetEnabled(DepthOfFieldPostFX, $pref::PostFX::EnableDOF); PostFXManager.settingsEffectSetEnabled(LightRayPostFX, $pref::PostFX::EnableLightRays); - PostFXManager.settingsEffectSetEnabled(VignettePostEffect, $pref::PostFX::EnableVignette); + PostFXManager.settingsEffectSetEnabled(VignettePostFX, $pref::PostFX::EnableVignette); echo("Graphics quality settings have been auto detected."); } diff --git a/Templates/BaseGame/game/core/utility/scripts/module.tscript b/Templates/BaseGame/game/core/utility/scripts/module.tscript index 1f6a755d1..2b102eb9e 100644 --- a/Templates/BaseGame/game/core/utility/scripts/module.tscript +++ b/Templates/BaseGame/game/core/utility/scripts/module.tscript @@ -44,6 +44,9 @@ function loadModuleMaterials(%moduleGroup) if(%module.group !$= %moduleGroup) continue; } + + if(%module.ModuleId $= "CoreModule") //the core container module is a special case that has some path complications + continue; //so we'll skip it so it doesn't complicate the other core modules' path tests %modulePath = %module.ModulePath;