diff --git a/LICENSE.txt b/LICENSE.txt index 41944d6..fc603ac 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -1,4 +1,4 @@ -Copyright (c) 2018-2023 Marisa the Magician, UnSX Team +Copyright (c) 2018-2025 Marisa the Magician, UnSX Team Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/animdefs.txt b/animdefs.txt index f83970b..9482f3a 100644 --- a/animdefs.txt +++ b/animdefs.txt @@ -7,4 +7,3 @@ texture invis00 canvastexture PAmmoLed 256 128 canvastexture FlakALed 128 64 canvastexture MiniALed 64 64 -canvastexture AmbGlowT 4 4 diff --git a/cvarinfo.txt b/cvarinfo.txt index 59f655a..29e1220 100644 --- a/cvarinfo.txt +++ b/cvarinfo.txt @@ -42,7 +42,6 @@ server bool flak_sawammo = false; // chainsaw uses fuel nosave bool flak_zoomsound = false; // sniper rifle plays unused zoom sounds (annoying) nosave bool flak_zoomshader = false; // sniper rifle has a scope shader server bool flak_vanillaarmor = true; // shield belt removes body/thigh armors on pickup -nosave int flak_ambglow = 1; // ambient glow for pickup skins (0: none, 1: normal, 2: high visibility) user int flak_skinteam = -1; // team color for player skin user String flak_cmdoskin = "cmdo"; // skin for Male Commando class diff --git a/gldefs.txt b/gldefs.txt index 798f5ba..7fd10a8 100644 --- a/gldefs.txt +++ b/gldefs.txt @@ -311,13 +311,11 @@ HardwareShader Texture "models/jhbox1.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/jhbox1.png" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/bossheadT.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/bossheadT.png" - Texture "ambglow" "AmbGlowT" } Brightmap Texture "models/bossgibT.png" { @@ -335,7 +333,6 @@ HardwareShader Texture "models/JBRifle2.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/JBRifle2.png" - Texture "ambglow" "AmbGlowT" } Brightmap Texture "models/JBRifle21.png" { @@ -357,13 +354,11 @@ HardwareShader Texture "models/JBammo1.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/JBammo1.png" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/ASMD_t.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/ASMD_t.png" - Texture "ambglow" "AmbGlowT" } Brightmap Texture "models/ASMD_t1.png" { @@ -381,19 +376,16 @@ HardwareShader Texture "models/JShockCore.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/JShockCore.png" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/JShockCore_2.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/JShockCore_2.png" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/SASMD_t.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/ASMD_t.png" - Texture "ambglow" "AmbGlowT" } Brightmap Texture "models/SASMD_t1.png" { @@ -411,7 +403,6 @@ HardwareShader Texture "models/JSShockCore.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/JShockCore.png" - Texture "ambglow" "AmbGlowT" } Brightmap Texture "models/Jwarhead2.png" { @@ -425,13 +416,11 @@ HardwareShader Texture "models/Jwhpick1.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/Jwhpick1.png" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/JPammo_01.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/JPammo_01.png" - Texture "ambglow" "AmbGlowT" } Brightmap Texture "models/JPulseGun_02.png" { @@ -441,179 +430,145 @@ HardwareShader Texture "models/JPulsePickup_01.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/JPulsePickup_01.png" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/AToxSuit1.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/GoldSkin2.png" { Shader "shaders/glsl/MeshEnviroMap_AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/JFA1.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/Flak_t.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/JMedBox1.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/JThighPads_01.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/JVial0.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/Jarmor2.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/Jflakslugel1_.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/Jhboxbeta1.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/Jmissile_01_.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/AUbelt1.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/AUbelt1.png" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/jinvis.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/jinvis.png" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/Jlboot2.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/Jlboot2.png" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/JRelicSkull_01b.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/JRelicSkull_01.png" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/JRelicSkull_01g.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/JRelicSkull_01.png" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/JRelicSkull_01r.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/JRelicSkull_01.png" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/BlueSkin2.png" { Shader "shaders/glsl/MeshEnviroMap_AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/RedSkin2.png" { Shader "shaders/glsl/MeshEnviroMap_AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/NewGreen.png" { Shader "shaders/glsl/MeshEnviroMap_AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/bpak.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/JEClip.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/Jautot1.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/BladeHopperT.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/JM21.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/Mini_t.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/JRocketPack1.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/JuRocket1_.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/Eight_t.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/BulletBoxT.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/RifleR1.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/JRifle2.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/JRazorw.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/JRazorw.png" - Texture "ambglow" "AmbGlowT" } Brightmap Texture "models/JRazor2.png" { @@ -655,13 +610,11 @@ HardwareShader Texture "models/tloc1_.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/tloc1.png" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/tloc2_.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/tloc2.png" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "invis00" { @@ -842,104 +795,86 @@ Brightmap Texture "models/Chunk_a11.png" HardwareShader Texture "models/JChainSawPick1.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/jbarrel4.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/shield.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/JAllMap1_a00.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/JAllMap1_a00.png" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/JAllMap1_a01.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/JAllMap1_a01.png" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/JAllMap1_a02.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/JAllMap1_a02.png" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/JAllMap1_a03.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/JAllMap1_a03.png" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/JAllMap2.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/JAllMap3.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/GOLD.png" { Shader "shaders/glsl/MeshEnviroMap_AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/s_camera.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/Effect1.png" { Shader "shaders/glsl/MeshEnviroMap_AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/ABoxBlue_env.png" { Shader "shaders/glsl/MeshEnviroMap_AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/ABoxGreen_env.png" { Shader "shaders/glsl/MeshEnviroMap_AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/ABoxRed_env.png" { Shader "shaders/glsl/MeshEnviroMap_AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/ABoxPurple_env.png" { Shader "shaders/glsl/MeshEnviroMap_AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/JAmmoBox1.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" - Texture brighttex "brightmaps/JAmmoBox1.png" - Texture "ambglow" "AmbGlowT" + Texture "brighttex" "brightmaps/JAmmoBox1.png" } HardwareShader Texture "models/S_Ammo.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" - Texture brighttex "brightmaps/S_Ammo.png" - Texture "ambglow" "AmbGlowT" + Texture "brighttex" "brightmaps/S_Ammo.png" } HardwareShader Texture "graphics/UTBg.png" { Shader "shaders/glsl/UTBg.fp" - Texture starstex "graphics/UTBg_Stars.png" - Texture moontex "graphics/UTBg_Moon.png" + Texture "starstex" "graphics/UTBg_Stars.png" + Texture "moontex" "graphics/UTBg_Moon.png" } HardwareShader Texture "graphics/UTProtoBg.png" { @@ -948,23 +883,22 @@ HardwareShader Texture "graphics/UTProtoBg.png" HardwareShader Texture "models/AmmoLed.png" { Shader "shaders/glsl/AmmoLed.fp" - Texture scrtex "PAmmoLed" + Texture "scrtex" "PAmmoLed" } HardwareShader Texture "models/FlakAmmoLED.png" { Shader "shaders/glsl/AmmoLed.fp" - Texture scrtex "FlakALed" + Texture "scrtex" "FlakALed" } HardwareShader Texture "models/miniammoled.png" { Shader "shaders/glsl/AmmoLed.fp" - Texture scrtex "MiniALed" + Texture "scrtex" "MiniALed" } HardwareShader Texture "models/220/Judamage1.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/220/Judamage1.png" - Texture "ambglow" "AmbGlowT" } Brightmap Texture "models/220/oldtloc1.png" { @@ -974,7 +908,6 @@ HardwareShader Texture "models/220/oldtloc1_.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/220/oldtloc1.png" - Texture "ambglow" "AmbGlowT" } Brightmap Texture "models/220/Jwarhead4.png" { @@ -984,12 +917,10 @@ HardwareShader Texture "models/220/Jwhpick1.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/220/Jwhpick1.png" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/220/wars_.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } Brightmap Texture "models/222/Jwarhead4.png" { @@ -999,12 +930,10 @@ HardwareShader Texture "models/222/Jwhpick1.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/222/Jwhpick1.png" - Texture "ambglow" "AmbGlowT" } HardwareShader Texture "models/222/Jwars1_.png" { Shader "shaders/glsl/AmbientGlow.fp" - Texture "ambglow" "AmbGlowT" } Brightmap Texture "models/222/JPulseGun_02.png" { @@ -1014,7 +943,6 @@ HardwareShader Texture "models/222/JPulsePickup_01.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/222/JPulsePickup_01.png" - Texture "ambglow" "AmbGlowT" } Brightmap Texture "models/322/JPulseGun_02.png" { @@ -1024,7 +952,6 @@ HardwareShader Texture "models/322/JPulsePickup_01.png" { Shader "shaders/glsl/AmbientGlow_Brightmapped.fp" Texture "brighttex" "brightmaps/322/JPulsePickup_01.png" - Texture "ambglow" "AmbGlowT" } // PP shaders HardwareShader PostProcess scene diff --git a/language.txt b/language.txt index ae51a3b..689f5bb 100644 --- a/language.txt +++ b/language.txt @@ -263,10 +263,6 @@ FLAK_SKIN = "Skin"; FLAK_FACE = "Face"; FLAK_BOPTS = "Beta Models"; FLAK_XOPTS = "Extras"; -FLAK_AMBGLOW = "Ambient Glow"; -FLAK_GLOWOFF = "Disabled"; -FLAK_GLOWON = "Standard"; -FLAK_GLOWEX = "Visible"; FLAK_MCREDS = "UT Credits"; FLAK_CDT = "Doom Tournament"; FLAK_CLEAD = "Development Lead:"; @@ -726,9 +722,6 @@ FLAK_TCOLOR = "Color de Equipo"; FLAK_SKIN = "Piel"; FLAK_FACE = "Cara"; FLAK_BOPTS = "Modelos Beta"; -FLAK_AMBGLOW = "Brillo Ambiental"; -FLAK_GLOWOFF = "Desactivado"; -FLAK_GLOWON = "Estándar"; FLAK_MCREDS = "Créditos de UT"; FLAK_CLEAD = "Desarrolladora Jefe:"; FLAK_CASSETS = "Assets Adicionales:"; diff --git a/menudef.txt b/menudef.txt index b8605b3..3d36de5 100644 --- a/menudef.txt +++ b/menudef.txt @@ -59,12 +59,6 @@ OptionValue "DeemerVer" 1, "220" 2, "222" } -OptionValue "AmbientGlow" -{ - 0, "$FLAK_GLOWOFF" - 1, "$FLAK_GLOWON" - 2, "$FLAK_GLOWEX" -} OptionMenu "UTPlayerMenu" { Class "UTOptionMenu" @@ -112,7 +106,6 @@ OptionMenu "UTOptionMenu" Slider "$FLAK_FSTRENGTH", "flak_flashstrength", 0.0, 1.0, 0.1, 1 StaticText " " StaticText "$FLAK_IOPTS", 1 - Option "$FLAK_AMBGLOW", "flak_ambglow", "AmbientGlow" Option "$FLAK_RADBOOTS", "flak_radboots", "YesNo" Option "$FLAK_VARMOR", "flak_vanillaarmor", "YesNo" StaticText " " @@ -189,13 +182,9 @@ OptionMenu "UTCreditsMenu" StaticText "Epic Games", "White" StaticText " " StaticText "$FLAK_CPATRON", "Gold" - StaticText "Snacks, Artem Bashev, john,", "White" - StaticText "Jonas Höglund, Lilian Lamp, Valerie Thiessen,", "White" - StaticText "Corey Hectus, Dac, Pietro Gagliardi, Xada Xephron,", "White" - StaticText "Alexa Jones-Gonzales, John, NekoMithos,", "White" - StaticText "bouncytem, Figo, Holly_Rook,", "White" - StaticText "Namsan, YaGirlJuniper, Ashley Lambert,", "White" - StaticText "LordMisfit, m8f, 3d0xp0xy", "White" + StaticText "Bean, Snacks, bouncytem,", "White" + StaticText "Fantasmita, Pietro Gagliardi, NekoMithos,", "White" + StaticText "Antlason Widowz, YaGirlJuniper", "White" StaticText " " StaticText "$FLAK_CTHANK", "Gold" StaticText "KynikossDragonn, Raffine52, KeksDose, Skerion", "White" diff --git a/shaders/glsl/AmbientGlow.fp b/shaders/glsl/AmbientGlow.fp index 31d6020..bce68b0 100644 --- a/shaders/glsl/AmbientGlow.fp +++ b/shaders/glsl/AmbientGlow.fp @@ -1,26 +1,9 @@ // imitation of the Unreal Engine 1.x ambient glow effect -vec4 ProcessLight( vec4 color ) -{ - vec2 gs = texture(ambglow,vec2(.5)).xy; - if ( gs.x > .5 ) return color; - if ( gs.y > .5 ) - { - float glow = max(0.,sin(timer*4.)-.5); - return vec4(min(color.rgb+vec3(glow),1.),color.a); - } - float glow = .25+.2*sin(timer*8.); - return vec4(min(color.rgb+vec3(glow),1.),color.a); -} -vec4 ProcessTexel() +void SetupMaterial( inout Material mat ) { - vec2 gs = texture(ambglow,vec2(.5)).xy; - if ( gs.x > .5 ) getTexel(vTexCoord.st); - if ( gs.y > .5 ) - { - float glow = max(0.,sin(timer*4.)-.5); - vec4 col = getTexel(vTexCoord.st); - return vec4(min(col.rgb+vec3(glow),1.),col.a); - } - return getTexel(vTexCoord.st); + mat.Base = getTexel(vTexCoord.st); + float glow = .25+.2*sin(timer*8.); + mat.Bright = vec4(vec3(glow),1.); + mat.Normal = ApplyNormalMap(vTexCoord.st); } diff --git a/shaders/glsl/AmbientGlow_Brightmapped.fp b/shaders/glsl/AmbientGlow_Brightmapped.fp index b9759a8..780d5e7 100644 --- a/shaders/glsl/AmbientGlow_Brightmapped.fp +++ b/shaders/glsl/AmbientGlow_Brightmapped.fp @@ -1,28 +1,11 @@ // imitation of the Unreal Engine 1.x ambient glow effect // plus brightmapping -vec4 ProcessLight( vec4 color ) -{ - float bright = texture(brighttex,vTexCoord.st).x; - vec2 gs = texture(ambglow,vec2(.5)).xy; - if ( gs.x > .5 ) return vec4(min(color.rgb+vec3(bright),1.),color.a); - if ( gs.y > .5 ) - { - float glow = max(0.,sin(timer*4.)-.5); - return vec4(min(color.rgb+vec3(bright)+vec3(glow),1.),color.a); - } - float glow = .25+.2*sin(timer*8.); - return vec4(min(color.rgb+vec3(bright)+vec3(glow),1.),color.a); -} -vec4 ProcessTexel() +void SetupMaterial( inout Material mat ) { - vec2 gs = texture(ambglow,vec2(.5)).xy; - if ( gs.x > .5 ) getTexel(vTexCoord.st); - if ( gs.y > .5 ) - { - float glow = max(0.,sin(timer*4.)-.5); - vec4 col = getTexel(vTexCoord.st); - return vec4(min(col.rgb+vec3(glow),1.),col.a); - } - return getTexel(vTexCoord.st); + mat.Base = getTexel(vTexCoord.st); + float bright = texture(brighttex,vTexCoord.st).x; + float glow = .25+.2*sin(timer*8.); + mat.Bright = vec4(vec3(min(1.,bright+glow)),1.); + mat.Normal = ApplyNormalMap(vTexCoord.st); } diff --git a/shaders/glsl/FizzDistortX.fp b/shaders/glsl/FizzDistortX.fp index 3ea0108..6341159 100644 --- a/shaders/glsl/FizzDistortX.fp +++ b/shaders/glsl/FizzDistortX.fp @@ -1,9 +1,4 @@ -vec4 ProcessLight( vec4 color ) -{ - return vec4(1.); -} - -vec4 ProcessTexel() +void SetupMaterial( inout Material mat ) { vec2 coord = vTexCoord.st; vec2 dist = 2.*texture(warptex,vTexCoord.st).xy-1.; @@ -13,5 +8,7 @@ vec4 ProcessTexel() dist.y *= abs(mod(dist.x+timer*5.45363,4.)-2.)-1.; coord.y -= dist.y*.09; coord.y = clamp(coord.y,0.,1.); - return getTexel(coord); + mat.Base = getTexel(coord); + mat.Bright = vec4(1.); // force fullbright + mat.Normal = ApplyNormalMap(vTexCoord.st); } diff --git a/shaders/glsl/FizzDistortXY.fp b/shaders/glsl/FizzDistortXY.fp index 73fe1df..5d91c71 100644 --- a/shaders/glsl/FizzDistortXY.fp +++ b/shaders/glsl/FizzDistortXY.fp @@ -1,9 +1,4 @@ -vec4 ProcessLight( vec4 color ) -{ - return vec4(1.); -} - -vec4 ProcessTexel() +void SetupMaterial( inout Material mat ) { vec2 coord = vTexCoord.st; vec2 dist = 2.*texture(warptex,vTexCoord.st*.6).xy-1.; @@ -14,5 +9,7 @@ vec4 ProcessTexel() coord.y -= dist.y*.09; coord.x += timer*.05346; coord.y += timer*.03425; - return getTexel(coord); + mat.Base = getTexel(coord); + mat.Bright = vec4(1.); // force fullbright + mat.Normal = ApplyNormalMap(vTexCoord.st); } diff --git a/shaders/glsl/MeshEnviroMap.fp b/shaders/glsl/MeshEnviroMap.fp index 8f95332..6f918fb 100644 --- a/shaders/glsl/MeshEnviroMap.fp +++ b/shaders/glsl/MeshEnviroMap.fp @@ -1,7 +1,8 @@ // imitation of the Unreal Engine 1.x bMeshEnviroMap effect, not 1:1 but gets close -vec4 ProcessTexel() +void SetupMaterial( inout Material mat ) { vec3 eyedir = normalize(uCameraPos.xyz-pixelpos.xyz); vec3 norm = reflect(eyedir,normalize(vWorldNormal.xyz)); - return getTexel(norm.xz*.5+.5); + mat.Base = getTexel(norm.xz*.5+.5); + mat.Normal = ApplyNormalMap(vTexCoord.st); } diff --git a/shaders/glsl/MeshEnviroMap_AmbientGlow.fp b/shaders/glsl/MeshEnviroMap_AmbientGlow.fp index 5b5f39b..09f4141 100644 --- a/shaders/glsl/MeshEnviroMap_AmbientGlow.fp +++ b/shaders/glsl/MeshEnviroMap_AmbientGlow.fp @@ -1,29 +1,12 @@ -// imitation of the Unreal Engine 1.x ambient glow effect -vec4 ProcessLight( vec4 color ) -{ - vec2 gs = texture(ambglow,vec2(.5)).xy; - if ( gs.x > .5 ) return color; - if ( gs.y > .5 ) - { - float glow = max(0.,sin(timer*4.)-.5); - return vec4(min(color.rgb+vec3(glow),1.),color.a); - } - float glow = .25+.2*sin(timer*8.); - return vec4(min(color.rgb+vec3(glow),1.),color.a); -} - // imitation of the Unreal Engine 1.x bMeshEnviroMap effect, not 1:1 but gets close -vec4 ProcessTexel() +// + +// imitation of the Unreal Engine 1.x ambient glow effect +void SetupMaterial( inout Material mat ) { vec3 eyedir = normalize(uCameraPos.xyz-pixelpos.xyz); vec3 norm = reflect(eyedir,normalize(vWorldNormal.xyz)); - vec2 gs = texture(ambglow,vec2(.5)).xy; - if ( gs.x > .5 ) getTexel(norm.xz*.5+.5); - if ( gs.y > .5 ) - { - float glow = max(0.,sin(timer*4.)-.5); - vec4 col = getTexel(norm.xz*.5+.5); - return vec4(min(col.rgb+vec3(glow),1.),col.a); - } - return getTexel(norm.xz*.5+.5); + float glow = .25+.2*sin(timer*8.); + mat.Bright = vec4(vec3(glow),1.); + mat.Base = getTexel(norm.xz*.5+.5); + mat.Normal = ApplyNormalMap(vTexCoord.st); } diff --git a/shaders/glsl/utbg.fp b/shaders/glsl/utbg.fp index 1ef854c..d44fbbc 100644 --- a/shaders/glsl/utbg.fp +++ b/shaders/glsl/utbg.fp @@ -1,4 +1,4 @@ -vec4 ProcessTexel() +void SetupMaterial( inout Material mat ) { vec2 uv = vTexCoord.st; vec2 ccoord = uv-vec2(.5,1.1); @@ -9,13 +9,13 @@ vec4 ProcessTexel() vec3 bcol = texture(starstex,fract(coord)).rgb; coord = uv*1.5; coord = (coord-vec2(.8,.3))*2.; - vec4 mcol = texture(moontex,coord); + vec4 mcol = texture(moontex,clamp(coord,vec2(0.),vec2(1.))); bcol = mix(bcol*.3,mcol.rgb*.7,mcol.a); coord = proj*.5+vec2(-.5,-1.)*timer*.1; - coord = fract(coord); vec3 col = getTexel(coord).rgb; col *= mix(vec3(1.9,.4,.2),vec3(1.),pow(pt.z,.5)); col *= mix(vec3(1.3,.5,.3),vec3(1.),pow(pt.x+.8,.5)); col *= mix(vec3(1.1,1.4,1.3),vec3(.3),clamp(1.3*pow(distance(pt.xy,vec2(.2,-.25)),.9),0.,1.)); - return vec4(bcol+col,1.); -} + mat.Base = vec4(bcol+col,1.); + mat.Normal = ApplyNormalMap(vTexCoord.st); +} \ No newline at end of file diff --git a/shaders/glsl/utprotobg.fp b/shaders/glsl/utprotobg.fp index 73ebc31..b3cfcbc 100644 --- a/shaders/glsl/utprotobg.fp +++ b/shaders/glsl/utprotobg.fp @@ -1,22 +1,28 @@ // based on https://www.shadertoy.com/view/Ms2SWW -vec4 ProcessTexel() +void SetupMaterial( inout Material mat ) { vec2 uv = vTexCoord.st; vec2 p = 2.*(uv-.5); p.x += sin(timer*.2)*.3; p.y += cos(timer*.2)*.3; float a = atan(p.y,p.x); + float a2 = atan(p.y,abs(p.x)); a += timer*.1; + a2 += timer*.1; float r = length(p); - vec2 ccoord = fract(vec2(.25/r+.1*timer,a/3.14169265)*4.); - vec3 col = getTexel(ccoord).rgb; + vec2 ccoord = vec2(.25/r+.1*timer,a/3.14169265)*4.; + vec2 ccoord2 = vec2(ccoord.x,a2/3.14169265)*4.; + vec3 col = textureGrad(tex,ccoord,dFdx(ccoord2),dFdy(ccoord2)).rgb; a += .125*3.14159265; - ccoord = fract(vec2(.25/r+.05*timer,a/3.14169265)*4.); - col += getTexel(ccoord).rgb; + a2 += .125*3.14159265; + ccoord = vec2(.25/r+.05*timer,a/3.14169265)*4.; + ccoord2 = vec2(ccoord.x,a2/3.14169265)*4.; + col += textureGrad(tex,ccoord,dFdx(ccoord2),dFdy(ccoord2)).rgb; col *= vec3(.3,.6,1.); col += pow(max(0.,1.2-r),1.5); col *= vec3(1.,1.2,1.5); col = clamp(col,vec3(0.),vec3(1.)); - return vec4(col,1.); -} + mat.Base = vec4(col,1.); + mat.Normal = ApplyNormalMap(vTexCoord.st); +} \ No newline at end of file diff --git a/zscript.txt b/zscript.txt index adeac22..ff48e68 100644 --- a/zscript.txt +++ b/zscript.txt @@ -4,7 +4,7 @@ version "4.11" Doom Tournament main codebase Save for the third party Gutamatics library, all code here is - (C)2018-2023 Marisa the Magician, UnSX Team, and is released under the + (C)2018-2025 Marisa the Magician, UnSX Team, and is released under the terms of the MIT license (see LICENSE.txt). No proprietary code by Epic Games has been copied, with or without diff --git a/zscript/utcommon.zsc b/zscript/utcommon.zsc index 9f34ec1..8c4d261 100644 --- a/zscript/utcommon.zsc +++ b/zscript/utcommon.zsc @@ -4500,10 +4500,6 @@ Class UTMainHandler : EventHandler { if ( players[consoleplayer].camera.player && players[consoleplayer].camera.player.ReadyWeapon && (players[consoleplayer].camera.player.ReadyWeapon is 'UTWeapon') ) UTWeapon(players[consoleplayer].camera.player.ReadyWeapon).RenderOverlay(e); - // ambient-glow shader tweaking - if ( !glowtcanvas ) glowtcanvas = TexMan.GetCanvas("AmbGlowT"); - int fc = flak_ambglow; - glowtcanvas.Clear(0,0,4,4,(fc==2)?0xFF00FF00:(fc==1)?0xFF000000:0xFFFF0000); bool deemershader = flak_deemershader; if ( e.Camera is 'GuidedWarShell' ) {