4.5.12 Script iortest

Utilisation : Les liens ne sont pas apparents. Pour obtenir des informations sur un mot clé, cliquez-le dans le script !

// Persistence Of Vision raytracer version 3.5 sample file.
// This file demonstrates the use of the file "ior.inc" and a few other
// interesting and useful tricks. It can take a bit of time to render,
// (he said, understatingly), because of the transparency and because of
// the 7 element light bank (flourescent tube?). Eliminating some of the
// lights (and adjusting the brightness color, "Watts", accordingly)
// will help quite a bit.

global_settings {max_trace_level 20 assumed_gamma 2.2}

#include "colors.inc"
#include "shapes.inc"
#include "textures.inc"
#include "glass.inc"
#include "consts.inc"	// Index of refraction constants

camera {
	location <0, 5,-20>
	direction z
	angle 57
	up <0.0, 1.0, 0.0>
	right <4/3, 0.0, 0.0>
	look_at <0, 1, 0>
}

// Assemble a bank of lights here, on the ground...
#declare Watts = color Gray25;
#declare Light_Distance = -50;

union {
	light_source {<-6, 0, Light_Distance> color Watts}
	light_source {<-4, 0, Light_Distance> color Watts}
	light_source {<-2, 0, Light_Distance> color Watts}
	light_source {<0, 0, Light_Distance> color Watts}
	light_source {<2, 0, Light_Distance> color Watts}
	light_source {<4, 0, Light_Distance> color Watts}
	light_source {<6, 0, Light_Distance> color Watts}
	rotate 60*x	// ... and hoist 'em up into the air
	pigment {White}	// Doesn't do anything but suppresses a parser warning
}

// Horozontally striped floor
plane {y,-1
	pigment {
		checker color HuntersGreen color SummerSky
		scale <32000, 1, 2>
	}
	finish {
		ambient 0.1
		diffuse 0.6
	}
}

#declare Hummer = union {
	union {
		object {UnitBox}
		object {Disk_Y translate 2*y}
		sphere {<0, 4, 0>, 1}
		rotate 45*y
		// interior {I_Glass}
	}
	// Let's attach an orange sphere to this thing... off in the distance,
	// so it'll be automatically repeated as we repeat the rest of the
	// object (see below)
	sphere {<0, 5, 20>, 1
		texture {
			finish {Shiny}
			pigment {Orange}
		}
	}
}

// Set up a default texture for all objects that follow that don't already
// have a texture of their own
default {texture {T_Glass1}}

// Now lay out five of those Hummers
object {Hummer
	translate -6*x
	interior {ior Diamond_Ior}
}

object {Hummer
	translate -3*x
	interior {ior Flint_Glass_Ior}
}

object {Hummer
	translate 0*x
	interior {ior Crown_Glass_Ior}
}

object {Hummer
	translate 3*x
	interior {ior Water_Ior}
}

object {Hummer
	translate 6*x
	interior {ior Air_Ior}
}

Et voici ce que nous obtenons (placez la souris sur une tête pour avoir l'ior) :

Air_Ior Water_Ior Crown_Glass_Ior Flint_Glass_Ior Diamond_Ior
Retour Retour