surface planet_surface param float Ka 1 param float Kd 1 param color land_color 0 0 0 param color sea_color 0 0 0 local string $_str_0 "shader" local float surface_type 0 local float freq 0 local float i 0 local point Pnt 0 0 0 local point Nf 0 0 0 local color Ccurr 0 0 0 initcode 2 pushiv 0.5 0.5 0.2 popc land_color initcode 3 pushiv 0.1 0.1 0.5 popc sea_color return code return_area pushif 0 popf surface_type pushif 1 popf freq pushif 0 popf i pushv P pushs $_str_0 transforms pushif 2 mulfv popv Pnt label 0 pushif 10 pushf i lt ifz 2 pushf freq pushif 1 pushf freq pushv Pnt mulvf noisev pushif 2 mulff subff divff addF surface_type popf surface_type pushif 2 mulF freq popf freq pushif 1 addF i popf i label 1 jump 0 label 2 pushif 0 pushf surface_type ge ifz 3 cpCC land_color Ccurr jump 4 label 3 cpCC sea_color Ccurr label 4 pushv I pushv N faceforward normalize popv Nf pushv Nf diffuse mulFv Kd ambient mulFv Ka addcc mulC Ccurr mulC Os popc Ci return