' '

Difficulty

5

Prerequisites

patterns/lambda

def scene_at(now)
{
    var t = Animations.ease(Animations.animate(1, 30, seconds(5)), Easing.cubic_out())[now]

	var camera = Cameras.perspective( [ "eye": pos(0,0,t),
	                                    "look_at": pos(0,0,0) ] )

	var white = Materials.uniform( [ "ambient": Colors.white() ] )
	var black = Materials.uniform( [ "ambient": Colors.black() ] )

	var pattern = Patterns.dalmatian2d(1, 1)
	var mat = Materials.from_pattern(pattern, black, white)

	var root = decorate(mat, xy_plane())

	var lights = [ Lights.omnidirectional( pos(5,5,5), Colors.white() ) ]

	create_scene(camera, root, lights)
}

var raytracer = Raytracers.latest()

var renderer = Renderers.standard( [ "width": 500,
                                     "height": 500,
                                     "sampler": Samplers.multijittered(2),
                                     "ray_tracer": raytracer ] )

pipeline( scene_animation(scene_at, seconds(5)),
          [ Pipeline.animation(30),
            Pipeline.renderer(renderer),
            Pipeline.wif(),
            Pipeline.base64(),
            Pipeline.stdout() ] )

1. Evaluation

TODO