62 lines
1.8 KiB
Lua
62 lines
1.8 KiB
Lua
local tex_base = "water\\water_studen"
|
|
local tex_nmap = "water\\water_normal"
|
|
local tex_dist = "water\\water_dudv"
|
|
local tex_caustic = "water\\water_caustic"
|
|
|
|
local tex_env0 = "$user$sky0"
|
|
local tex_env1 = "$user$sky1"
|
|
|
|
local tex_leaves = "water\\water_foam"
|
|
|
|
function normal(shader, t_base, t_second, t_detail)
|
|
shader:begin("water", "water")
|
|
:sorting(2, false)
|
|
:blend(true, blend.srcalpha, blend.invsrcalpha)
|
|
:zb(true, false)
|
|
:distort(true)
|
|
:fog(true)
|
|
|
|
shader:dx10texture("s_base", tex_base)
|
|
|
|
shader:dx10texture("s_nmap", tex_nmap)
|
|
|
|
shader:dx10texture("s_env0", tex_env0)
|
|
shader:dx10texture("s_env1", tex_env1)
|
|
|
|
shader:dx10texture("s_env", "$user$sky")
|
|
|
|
shader:dx10texture("env_s0", "$user$env_s0")
|
|
shader:dx10texture("env_s1", "$user$env_s1")
|
|
|
|
shader:dx10texture("s_accumulator", "$user$accum")
|
|
shader:dx10texture("s_position", "$user$position")
|
|
shader:dx10texture("s_velocity", "$user$velocity")
|
|
shader:dx10texture("s_image", "$user$generic")
|
|
|
|
shader:dx10texture("s_material", "$user$material")
|
|
|
|
shader:dx10texture("s_leaves", tex_leaves)
|
|
shader:dx10texture("s_caustic", tex_caustic)
|
|
|
|
shader:dx10sampler("smp_base")
|
|
shader:dx10sampler("smp_nofilter")
|
|
shader:dx10sampler("smp_rtlinear")
|
|
end
|
|
|
|
function l_special(shader, t_base, t_second, t_detail)
|
|
shader:begin("water", "waterd")
|
|
:sorting(2, true)
|
|
:blend(true, blend.srcalpha, blend.invsrcalpha)
|
|
:zb(true, false)
|
|
:fog(false)
|
|
:distort(true)
|
|
|
|
shader:dx10color_write_enable(true, true, true, false)
|
|
|
|
shader:dx10texture("s_base", tex_base)
|
|
shader:dx10texture("s_distort", tex_dist)
|
|
shader:dx10texture("s_position", "$user$position")
|
|
|
|
shader:dx10sampler("smp_base")
|
|
shader:dx10sampler("smp_nofilter")
|
|
end
|