expre-gen/blender/3.4/scripts/addons/cycles/shader/node_ambient_occlusion.oso
2025-10-17 09:47:23 +08:00

67 lines
3.9 KiB
Plaintext

OpenShadingLanguage 1.00
# Compiled by oslc 1.12.6.2
# options: -q -O2 -I/home/blender/git/blender-v340/blender.git/intern/cycles/kernel/osl/shaders -I/home/blender/git/blender-v340/lib/linux_centos7_x86_64/osl/share/OSL/shaders -o /home/blender/git/blender-v340/build_release/intern/cycles/kernel/osl/shaders/node_ambient_occlusion.oso
shader node_ambient_occlusion
param color ColorIn 1 1 1 %read{15,15} %write{2147483647,-1}
param int samples 16 %read{9,9} %write{2147483647,-1}
param float Distance 1 %read{1,14} %write{2147483647,-1}
param normal Normal 0 0 0 %read{10,12} %write{0,0} %initexpr
param int inside 0 %read{13,13} %write{2147483647,-1}
param int only_local 0 %read{14,14} %write{2147483647,-1}
oparam color ColorOut 1 1 1 %read{2147483647,-1} %write{15,15}
oparam float AO 1 %read{15,15} %write{14,14}
global normal N %read{0,0} %write{2147483647,-1}
local int global_radius %read{14,14} %write{8,8}
const float $const1 0 %read{1,1} %write{2147483647,-1}
temp int $tmp1 %read{2,2} %write{1,1}
temp int $tmp2 %read{3,8} %write{2,7}
const int $const2 0 %read{2,10} %write{2147483647,-1}
temp int $tmp3 %read{5,5} %write{4,4}
temp int $tmp4 %read{6,6} %write{5,5}
temp int $tmp5 %read{7,7} %write{6,6}
const string $const3 "@ao" %read{14,14} %write{2147483647,-1}
temp float $tmp6 %read{14,14} %write{9,9}
temp float $tmp7 %read{14,14} %write{10,10}
const int $const4 1 %read{11,11} %write{2147483647,-1}
temp float $tmp8 %read{14,14} %write{11,11}
const int $const5 2 %read{12,12} %write{2147483647,-1}
temp float $tmp9 %read{14,14} %write{12,12}
temp float $tmp10 %read{14,14} %write{13,13}
const string $const6 "sblur" %read{14,14} %write{2147483647,-1}
const string $const7 "tblur" %read{14,14} %write{2147483647,-1}
code Normal
# /home/blender/git/blender-v340/blender.git/intern/cycles/kernel/osl/shaders/node_ambient_occlusion.osl:9
# normal Normal = N,
assign Normal N %filename{"/home/blender/git/blender-v340/blender.git/intern/cycles/kernel/osl/shaders/node_ambient_occlusion.osl"} %line{9} %argrw{"wr"}
code ___main___
# /home/blender/git/blender-v340/blender.git/intern/cycles/kernel/osl/shaders/node_ambient_occlusion.osl:15
# int global_radius = (Distance == 0.0 && !isconnected(Distance));
eq $tmp1 Distance $const1 %filename{"/home/blender/git/blender-v340/blender.git/intern/cycles/kernel/osl/shaders/node_ambient_occlusion.osl"} %line{15} %argrw{"wrr"}
neq $tmp2 $tmp1 $const2 %argrw{"wrr"}
if $tmp2 8 8 %argrw{"r"}
isconnected $tmp3 Distance %argrw{"wr"}
eq $tmp4 $tmp3 $const2 %argrw{"wrr"}
neq $tmp5 $tmp4 $const2 %argrw{"wrr"}
assign $tmp2 $tmp5 %argrw{"wr"}
assign global_radius $tmp2 %argrw{"wr"}
# /home/blender/git/blender-v340/blender.git/intern/cycles/kernel/osl/shaders/node_ambient_occlusion.osl:18
# AO = texture("@ao",
assign $tmp6 samples %line{18} %argrw{"wr"}
# /home/blender/git/blender-v340/blender.git/intern/cycles/kernel/osl/shaders/node_ambient_occlusion.osl:21
# Normal[0],
compref $tmp7 Normal $const2 %line{21} %argrw{"wrr"}
# /home/blender/git/blender-v340/blender.git/intern/cycles/kernel/osl/shaders/node_ambient_occlusion.osl:22
# Normal[1],
compref $tmp8 Normal $const4 %line{22} %argrw{"wrr"}
# /home/blender/git/blender-v340/blender.git/intern/cycles/kernel/osl/shaders/node_ambient_occlusion.osl:23
# Normal[2],
compref $tmp9 Normal $const5 %line{23} %argrw{"wrr"}
# /home/blender/git/blender-v340/blender.git/intern/cycles/kernel/osl/shaders/node_ambient_occlusion.osl:18
# AO = texture("@ao",
assign $tmp10 inside %line{18} %argrw{"wr"}
texture AO $const3 $tmp6 Distance $tmp7 $tmp8 $tmp9 $tmp10 $const6 only_local $const7 global_radius %argrw{"wrrrrrrrrrrr"}
# /home/blender/git/blender-v340/blender.git/intern/cycles/kernel/osl/shaders/node_ambient_occlusion.osl:29
# ColorOut = ColorIn * AO;
mul ColorOut ColorIn AO %line{29} %argrw{"wrr"}
end