Small optimizations to gm_krustykrab_night flower rendering code

This commit is contained in:
Chev 2024-10-27 18:25:10 -07:00
parent 9f79677da4
commit aa62ed9f9b
Signed by: chev2
GPG key ID: 0B212D6AED495EC9

View file

@ -1,25 +1,73 @@
if !string.StartWith(game.GetMap(), "gm_krustykrab_night") then return end
if not string.StartWith(game.GetMap(), "gm_krustykrab_night") then return end
local skyflower = Material("spongebob/meltyflower.png", "mips smooth")
skyflower:SetString("$alpha", "0.5")
local skyFlowerMat = Material("spongebob/meltyflower.png", "mips smooth")
skyFlowerMat:SetString("$alpha", "0.5")
local skyflowercol = Color(28, 101, 47)
local skyFlowerColor = Color(28, 101, 47)
local skyFlowerPosData = {
{
Pos = Vector(16, -12, 5),
Dir = Vector(-1, 1, 0),
Width = 4,
Height = 4,
Rot = 170
},
{
Pos = Vector(0, -12, 5),
Dir = Vector(0, 1, 0),
Width = 5,
Height = 5,
Rot = 180
},
{
Pos = Vector(-14, -13.5, 4.3),
Dir = Vector(0.7, 0.67, -0.22),
Width = 6,
Height = 6,
Rot = 185
},
{
Pos = Vector(-12.2, 15.4, 3.5),
Dir = Vector(0.61, -0.77, -0.18),
Width = 4,
Height = 3.5,
Rot = 180
},
{
Pos = Vector(7.7, 17.8, 4.8),
Dir = Vector(-0.39, -0.89, -0.24),
Width = 8,
Height = 8,
Rot = 185
},
{
Pos = Vector(17.89, 6.52, 6.09),
Dir = Vector(-0.89, -0.33, -0.3),
Width = 3,
Height = 3,
Rot = 200
},
{
Pos = Vector(17.93, 3.88, 7.96),
Dir = Vector(-0.89, -0.19, -0.39),
Width = 3,
Height = 3,
Rot = 180
},
}
hook.Add("PostDrawSkyBox", "KrustyKrabNight_RenderSkyFlowers", function()
if !IsValid(LocalPlayer()) then return end
render.OverrideDepthEnable(true, false)
cam.Start3D(Vector(0, 0, 0))
render.SetMaterial(skyflower)
render.DrawQuadEasy(Vector(16, -12, 5), Vector(-1, 1, 0), 4, 4, skyflowercol, 170)
render.DrawQuadEasy(Vector(0, -12, 5), Vector(0, 1, 0), 5, 5, skyflowercol, 180)
render.DrawQuadEasy(Vector(-14, -13.5, 4.3), Vector(0.7, 0.67, -0.22), 6, 6, skyflowercol, 185)
render.DrawQuadEasy(Vector(-12.2, 15.4, 3.5), Vector(0.61, -0.77, -0.18), 4, 3.5, skyflowercol, 180)
render.DrawQuadEasy(Vector(7.7, 17.8, 4.8), Vector(-0.39, -0.89, -0.24), 8, 8, skyflowercol, 185)
render.DrawQuadEasy(Vector(17.89, 6.52, 6.09), Vector(-0.89, -0.33, -0.3), 3, 3, skyflowercol, 200)
render.DrawQuadEasy(Vector(17.93, 3.88, 7.96), Vector(-0.89, -0.19, -0.39), 3, 3, skyflowercol, 170)
//render.DrawQuadEasy(LocalPlayer():GetAimVector()*20, -LocalPlayer():GetAimVector(), 3, 3, skyflowercol, 170)
cam.Start3D(vector_origin)
render.SetMaterial(skyFlowerMat)
for _, tabData in ipairs(skyFlowerPosData) do
render.DrawQuadEasy(tabData.Pos, tabData.Dir, tabData.Width, tabData.Height, skyFlowerColor, tabData.Rot)
end
--render.DrawQuadEasy(LocalPlayer():GetAimVector()*20, -LocalPlayer():GetAimVector(), 3, 3, skyFlowerColor, 170)
cam.End3D()
render.OverrideDepthEnable(false, false)