e4s-sdk/gamedata/shaders/r2/effects_water.s
2026-06-17 23:06:51 +03:00

48 lines
2.2 KiB
ArmAsm

local tex_base = "water\\water_water"
local tex_nmap = "water\\water_normal"
local tex_dist = "water\\water_dudv"
local tex_env0 = "$user$sky0" -- "sky\\sky_8_cube"
local tex_env1 = "$user$sky1" -- "sky\\sky_8_cube"
local tex_leaves = "water\\water_foam"
function normal (shader, t_base, t_second, t_detail)
shader:begin ("water_soft","water_soft")
: sorting (2, false)
: blend (true,blend.srcalpha,blend.invsrcalpha)
: zb (true,false)
: distort (true)
: fog (true)
shader:sampler ("s_base") :texture (tex_base)
shader:sampler ("s_nmap") :texture (tex_nmap)
shader:sampler ("s_env0") :texture (tex_env0) : clamp()
shader:sampler ("s_env1") :texture (tex_env1) : clamp()
shader:sampler ("s_position") :texture ("$user$position") : f_none ()
shader:sampler ("s_leaves") :texture (tex_leaves) : wrap() :f_anisotropic()
end
function l_special (shader, t_base, t_second, t_detail)
shader:begin ("waterd_soft","waterd_soft")
: sorting (2, true)
: blend (true,blend.srcalpha,blend.invsrcalpha)
: zb (true,false)
: fog (false)
: distort (true)
shader:sampler ("s_base") :texture (tex_base)
shader:sampler ("s_distort") :texture (tex_dist)
shader:sampler ("s_position") :texture ("$user$position") : f_none ()
end
--[[
function normal (shader, t_base, t_second, t_detail)
shader:begin ("waterd","waterd")
: sorting (2, true)
: blend (true,blend.srcalpha,blend.invsrcalpha)
: zb (true,false)
: fog (false)
: distort (true)
shader:sampler ("s_base") :texture (tex_base)
shader:sampler ("s_distort") :texture (tex_dist)
end
]]