// Global table to hold the DoF effect
DOF_Ents = {}
DOF_SPACING = 0
DOF_OFFSET = 0
local NUM_DOF_NODES = 16
for k, v
in pairs(DOF_Ents
) do
end
end
end
for i=0, NUM_DOF_NODES do
end
end
end
local function OnChange( name, oldvalue, newvalue )
if ( !GAMEMODE:PostProcessPermitted( "dof" ) ) then return end
if ( newvalue != "0" ) then
else
end
end
/*
// Control Panel
*/
local function BuildControlPanel( CPanel )
CPanel:AddControl( "Header", { Text = "#Depth_Of_Field", Description = "#Depth_Of_Field_Information" } )
CPanel:AddControl
( "CheckBox",
{ Label = "#Depth_Of_Field_Toggle",
Command = "pp_dof" } )
CPanel:AddControl
( "Slider",
{ Label = "#Depth_Of_Field_spacing",
Command = "pp_dof_spacing", Type
= "Float", Min
= "8", Max
= "1024" } )
CPanel:AddControl
( "Slider",
{ Label = "#Depth_Of_Field_start_distance",
Command = "pp_dof_initlength", Type
= "Float", Min
= "9", Max
= "1024" } )
end
/*
// Tool Menu
*/
local function AddPostProcessMenu()
spawnmenu.AddToolMenuOption( "PostProcessing",
"PPShader",
"DoF",
"#Simple DoF",
"",
"", BuildControlPanel,
{ SwitchConVar
= "pp_dof" } )
end
hook.Add( "PopulateToolMenu",
"AddPostProcessMenu_DoF", AddPostProcessMenu
)