#!version 2.2.4 surface #!parameters: uniform float Ka = 1 uniform float Kd = .75 uniform float Ks = .4 uniform float roughness = .2 uniform float ringscale = 17 uniform float txtscale = 2 uniform color lightwood = [ 0.69 0.25 0.35 ] uniform color darkwood = [ 0.35 0.1 0.08 ] uniform float grainy = 1 #!variables: varying vector PP varying float my_t varying vector PQ varying float r varying float r2 varying vector Ct varying vector Nf varying vector temporary_0 uniform vector temporary_1 varying vector temporary_2 varying float temporary_3 varying float temporary_4 varying float temporary_5 varying float temporary_6 varying float temporary_7 varying float temporary_8 varying float temporary_9 varying float temporary_10 uniform float temporary_11 varying vector temporary_12 varying vector temporary_13 varying vector temporary_14 varying vector temporary_15 #!Init: return #!Code: vfromf temporary_1 txtscale vuvector temporary_0 temporary_1 transform ("p=Sp") temporary_2 "shader" P mulvv PP temporary_0 temporary_2 zcomp ("f=p") temporary_3 PP vufloat temporary_4 ringscale divff my_t temporary_3 temporary_4 xcomp ("f=p") temporary_4 PP vufloat temporary_5 8 mulff temporary_3 temporary_4 temporary_5 ycomp ("f=p") temporary_5 PP vufloat temporary_6 8 mulff temporary_4 temporary_5 temporary_6 zcomp ("f=p") temporary_5 PP vfromf PQ temporary_3 temporary_4 temporary_5 noise ("f=p") temporary_4 PQ vufloat temporary_5 16 divff temporary_3 temporary_4 temporary_5 addff my_t my_t temporary_3 xcomp ("f=p") temporary_3 PP ycomp ("f=p") temporary_5 PP vufloat temporary_6 12.93 addff temporary_4 temporary_5 temporary_6 vfromf PQ temporary_3 my_t temporary_4 vufloat temporary_3 ringscale noise ("f=p") temporary_4 PQ mulff r temporary_3 temporary_4 floor ("f=f") temporary_3 r subff r r temporary_3 vufloat temporary_3 0.2 vufloat temporary_6 0.8 vufloat temporary_8 0.2 vufloat temporary_9 0.55 smoothstep ("f=fff") temporary_7 temporary_8 temporary_9 r mulff temporary_5 temporary_6 temporary_7 vufloat temporary_7 1 vufloat temporary_9 0.75 vufloat temporary_10 0.8 smoothstep ("f=fff") temporary_8 temporary_9 temporary_10 r subff temporary_6 temporary_7 temporary_8 mulff temporary_4 temporary_5 temporary_6 addff r temporary_3 temporary_4 xcomp ("f=p") temporary_5 PP vufloat temporary_6 128 mulff temporary_4 temporary_5 temporary_6 vufloat temporary_5 5 addff temporary_3 temporary_4 temporary_5 zcomp ("f=p") temporary_6 PP vufloat temporary_7 8 mulff temporary_5 temporary_6 temporary_7 vufloat temporary_6 3 subff temporary_4 temporary_5 temporary_6 ycomp ("f=p") temporary_7 PP vufloat temporary_8 128 mulff temporary_6 temporary_7 temporary_8 vufloat temporary_7 1 addff temporary_5 temporary_6 temporary_7 vfromf PQ temporary_3 temporary_4 temporary_5 vufloat temporary_4 grainy vufloat temporary_6 1.3 noise ("f=p") temporary_7 PQ subff temporary_5 temporary_6 temporary_7 mulff temporary_3 temporary_4 temporary_5 subff temporary_11 1 grainy vufloat temporary_4 temporary_11 addff r2 temporary_3 temporary_4 vuvector temporary_0 lightwood vuvector temporary_2 darkwood mulff temporary_4 r r2 mulff temporary_3 temporary_4 r2 mix ("v=vvf") Ct temporary_0 temporary_2 temporary_3 normalize ("v=v") temporary_0 N faceforward ("v=vv") Nf temporary_0 I vufloat temporary_3 Ka vufloat temporary_4 Kd vufloat temporary_5 Ks vufloat temporary_6 roughness vfromf temporary_13 temporary_3 ambient ("c=") temporary_14 mulvv temporary_12 temporary_13 temporary_14 vfromf temporary_14 temporary_4 diffuse ("c=n") temporary_15 Nf mulvv temporary_13 temporary_14 temporary_15 addvv temporary_2 temporary_12 temporary_13 mulvv temporary_0 Ct temporary_2 vfromf temporary_12 temporary_5 normalize ("v=v") temporary_15 I negv temporary_14 temporary_15 specular ("c=nvf") temporary_13 Nf temporary_14 temporary_6 mulvv temporary_2 temporary_12 temporary_13 addvv Ci temporary_0 temporary_2 movevv Oi Os mulvv Ci Ci Oi return