Material
Example
Creates a PNG material with noclamp and smooth parameters set and then draws on screen.
In this example the .png file is located in materials/vgui/wave.png
.
local wave = Material( "vgui/wave.png", "noclamp smooth" )
hook.Add( "HUDPaint", "HUDPaint_DrawATexturedBox", function()
surface.SetMaterial( wave )
surface.SetDrawColor( 255, 255, 255, 255 )
surface.DrawTexturedRect( 50, 50, 128, 128 )
end )
Example
Acquires and uses one of the Post-Processing Materials to make the screen darker and more saturated.
local mat_color = Material( "pp/colour" ) -- used outside of the hook for performance
hook.Add("RenderScreenspaceEffects", "ColorExample", function()
render.UpdateScreenEffectTexture()
mat_color:SetTexture( "$fbtexture", render.GetScreenEffectTexture() )
mat_color:SetFloat( "$pp_colour_addr", 0 )
mat_color:SetFloat( "$pp_colour_addg", 0 )
mat_color:SetFloat( "$pp_colour_addb", 0 )
mat_color:SetFloat( "$pp_colour_mulr", 0 )
mat_color:SetFloat( "$pp_colour_mulg", 0 )
mat_color:SetFloat( "$pp_colour_mulb", 0 )
mat_color:SetFloat( "$pp_colour_brightness", 0 )
mat_color:SetFloat( "$pp_colour_contrast", 0.5 )
mat_color:SetFloat( "$pp_colour_colour", 5 )
render.SetMaterial( mat_color )
render.DrawScreenQuad()
end )