scene.org File Archive

File download

<root>­/­parties­/­2009­/­stream09­/­demo­/­high-end/fr003-protrackt.zip

File size:
9 836 846 bytes (9.38M)
Download count:
all-time: 789

Screenshot (by pouët.net)

Screenshot

file_id.diz

#####################################################
#                                                   #
#   HEADER                                          #
#                                                   #
#####################################################

header {
	title: fr-003: protrackt
	width: 1280
	height: 720	
	music: friction2.ogg
	bpm: 125.0
}

#####################################################
#                                                   #
#    OBJECTS                                        #
#                                                   #
#####################################################

objects {
	cam: camera {
	}
	env: enviroment {
		lighting: 0
		
		light0.enable: 1
		light0.pos.z: 20
		light0.pos.y: 20	
	}
	
	# scene 1 OBJECTS
	
	plane: 3ds plane.3ds {
		meshes.image1.lighting: 0
		pos.y: -0.1
		texture: image fraction.jpg
	}
	hakki: 3ds hack.3ds
	prts1: particles {
		textures: particle1.jpg
		box: ( -2.875, 0, -2.875 ), ( 2.875, 1000, 2.875 )
		gravity.y: -10
		maxParticles: 1000
		fadeAway: 0
		emitter {
			radius: 1
			pos: 0, 5, 0
			dir.x: -2, 1
			dir.z: -1, 1
			dir.y: -2, 1
			lifeTime: 1, 10
			color.r: 0.25, 1.0
			color.g: 0.0
			color.b: 0.0
			color.a: 1.0
			elasticity: 0.3, 0.9
			size: 0.01, 0.1
			#friction: 0.25, 0.5
		}
	}
	
	# scene 2 OBJECTS
	
	build: 3ds build_tekno.3ds {
		shader: build.shader
		meshes.cube1.lighting: 0
		#wireframe: 1
		generateTexCoords: 1
		materials.default.blend: blend::screen
	}
	
	# scene 3 OBJECTS
	
	helix: 3ds f2_vase.3ds {
		shader: build.shader
		meshes.torus2.lighting: 0
		meshes.torus2_co1.lighting: 0
		meshes.torus2_co2.lighting: 0
		#wireframe: 1
		generateTexCoords: 1
		materials.default.blend: 2
		materials.default.envMap: 3ds::sphereMap
		depthMask: 0
	}
	helix2: duplicate helix {
		rot.y: 90
	}
	helix3: duplicate helix {
		wireframe: 1
		rot.z: 90
	}
	prts2: particles {
		textures: particle1.jpg
		maxParticles: 1000
		emitter {
			radius: 5, 50
			color.g: 0
			color.b: 0
			color.a: 0.25, 1.0
			size: 0.1, 0.5
			lifeTime: -1
		}
	}

	# scene 4 OBJECTS
	
	helixb: 3ds helix2.3ds {
		shader: build.shader
		meshes.Loft01.lighting: 0
		#wireframe: 1
		generateTexCoords: 1
		materials.default2.blend: 2
		depthMask: 0
	}
	helixb2: duplicate helixb {
		rot.y: 90
	}
	helixb3: duplicate helixb {
		wireframe: 1
		rot.z: 90
	}
	
	# scene 5 OBJECTS
	
	prts3: particles {
		textures: particle1.jpg
		maxParticles: 1000
		fadeAway: 1
		emitter {
			radius: 5, 50
			color.g: 0
			color.b: 0
			color.a: 0.2, 0.5
			size: 0.1, 3.0
			lifeTime: 0, 10
		}
		attractor {
			pos: -25 -15 -10
			gravity: 10000
		}
		attractor {
			pos: 25 15 10
			gravity: 1000
		}
		attractor {
			pos: 0 0 0
			gravity: -5000
		}
		attractor {
			pos: 0 50 0
			gravity: 4000
		}
		attractor {
			pos: 0 -50 0
			gravity: 2000
		}
	}
	
	# scene 7 OBJECTS
	
	nice: 3ds nice2.3ds {
		shader: build2.shader
		meshes.octotoad1.lighting: 0
		#wireframe: 1
		generateTexCoords: 1
		materials.default.blend: 2
		depthMask: 0
		materials.default.envMap: 3ds::sphereMap
		texture: default *glow
	}
	
	# scene 8 OBJECTS
	
	flowers: 3ds palikkapallot.3ds {
		shader: build2.shader
		#meshes.cylinder1.lighting: 0
		#wireframe: 1
		generateTexCoords: 1
		materials.default.blend: 2
		depthMask: 0
	}
	
	
	# POST PROCESSING
	
	credits: image c1.png c2.png c3.png c4.png {
		blend: 1
	}
	glowImg: image *main {
		stretch: 1
	}
	blurXImg: image *glow {
		stretch: 1
		shader: blurx.shader
		shader0.blur: 25
		shader0.pixel: 0.0015625
	}
	blurYImg: image *blurX {
		stretch: 1
		shader: blury.shader
		shader0.blur: 25
		shader0.pixel: 0.0027778
	}
	mainImg: image *main *blurY glowmap.jpg colormap.jpg colormap2.jpg {
		stretch: 1
		shader: final.frag
		multiTexturing: 1
		shader0.glowTex: 1
		shader0.glowMapTex: 2
		shader0.colorMapTex: 3
	}
	overlayImg: image nuoli1.jpg friction.jpg title.jpg tausta.jpg nuoli2.jpg nuoli3.jpg nuoli4.jpg {
		blend: 2
		stretch: yes
	}
}

#####################################################
#                                                   #
#    RENDER PASSES                                  #
#                                                   #
#####################################################

textures {
	*glow {
		width: 640
		height: 360
	}
	*blurX {
		width: 640
		height: 360
	}
	*blurY {
		width: 640
		height: 360
	}
}

renderPasses {
	main {
		exclude: blurXImg, blurYImg, mainImg, overlayImg, glowImg
		output: *main
	}
	glowCopy {
		objects: glowImg
		output: *glow
	}
	blurX {
		objects: blurXImg
		output: *blurX
	}
	blurY {
		objects: blurYImg
		output: *blurY
	}
	final {
		objects: mainImg, overlayImg
	}
}

#####################################################
#                                                   #
#    SCRIPT                                         #
#                                                   #
#####################################################

script {
	@0.0 enable cam, env, blurXImg, blurYImg, mainImg, glowImg
	@0.0 main.clear.a = 1
	
	@0.0 call scene_intro
	
	@12.0 call scene_helix
	@24.0 call scene_hexplane
	@32.0 call scene_particles
	@40.0 call scene_weird
	
	@48.0 call scene_credits
	@56.0 call scene_hexplaneb
	@64.0 call scene_particlesb
	@72.0 call scene_flowers
	@80.0 call scene_flowers
	
	@88.0 call scene_ending
	@96.0 end
}

disableObjs {
	@0.0 disable prts1, plane, build, helix, helix2, helix3, prts2, helixb, helixb2, helixb3, overlayImg, prts3, nice, credits, flowers, hakki
	@0.0 mainImg.shader0.useColorMap = 0
}

scene_hexplane {
	@0.0 call disableObjs
	@0.0 enable prts1, plane, hakki

	@0.0 call scene_hexplane_cam( 25, 20, @2.0 )
	@2.0 call scene_hexplane_cam( 15, 10, @2.0 )
	@4.0 call scene_hexplane_cam( 5, 1, @2.0 )
	@6.0 call scene_hexplane_cam( 1, 20, @2.0 )
	@0.0 cam.up.x = -1 to 1 in @8.0

	@0.0 cam.lookAt.x = 0
	@0.0 cam.lookAt.y = 0
	@0.0 cam.lookAt.z = 0
	@0.0 cam.up.z = -1
	
	@0.0 loop @4.0 2 times {
		@0.0 mainImg.shader0.glowAmount = 5.0 to 2.0 in @4.0
	}	

	@0.0 enable overlayImg
	@0.0 overlayImg.frame = 4
	@0.0 overlayImg.zoom = 0 to 0.1 in @8.0
	@0.0 overlayImg.col.a = 0 to 1 in @0.2
	@0.2 overlayImg.col.a = 1 to 0 in @7.2
}

scene_hexplaneb {
	@0.0 call disableObjs
	@0.0 enable prts1, plane, hakki

	@0.0 cam.fovy = 90

	@0.0 loop @4.0 2 times {
		@0.0 call scene_hexplane_cam( 5, 4, @1.0 )
		@1.0 call scene_hexplane_cam( 3, 4, @1.0 )
		@2.0 call scene_hexplane_cam( 3, 2, @1.0 )
		@3.0 call scene_hexplane_cam( 1, 2, @1.0 )
	}
	@0.0 cam.up.x = -1 to 1 in @8.0

	@0.0 cam.lookAt.x = 0
	@0.0 cam.lookAt.y = 0
	@0.0 cam.lookAt.z = 0
	@0.0 cam.up.z = -1
	
	@0.0 prts1.emitter[0].size.max = 0.1 to 0.5 in @8.0
	@0.0 prts1.emitter[0].elasticity.max = 0.25 to 1.0 in @8.0
	
	@0.0 loop @1.0 8 times {
		@0.0 mainImg.shader0.glowAmount = 5.0 to 2.0 in @0.1
		@0.1 mainImg.shader0.glowAmount = 10.0 to 2.0 in @0.1
		@0.2 mainImg.shader0.glowAmount = 5.0 to 2.0 in @0.1
		@0.3 mainImg.shader0.glowAmount = 10.0 to 2.0 in @0.1
	}	

	@0.0 enable overlayImg
	@0.0 overlayImg.frame = 5
	@0.0 overlayImg.zoom = 0 to 0.1 in @8.0
	@0.0 overlayImg.col.a = 0 to 1 in @0.2
	@0.2 overlayImg.col.a = 1 to 0 in @7.2
}

scene_hexplane_cam: %Y1 %Y2 %TIME {
	@0.0 cam.pos.z = eval( "sin(time)*5" )
	@0.0 cam.pos.x = eval( "cos(time)*5" )
	@0.0 cam.pos.y = %Y1 to %Y2 in %TIME
}

scene_intro {
	@0.0 call disableObjs
	@0.0 enable build
	@0.0 mainImg.shader0.useColorMap = 1

	@0.0 build.shader0.start = 1.0 to 0.5 in @2.0
	@2.0 build.shader0.start = 0.5 to 0.0 in @6.0
	@8.0 build.shader0.start = 0.0 to 1.0 in @4.0
	@0.0 loop @2.0 6 times {
		@0.1.5 build.shader0.end = 1.0 to 0.5 in @1.0
	}
	
	@0.0 loop @4.0 3 times {
		@0.1.5 call scene_intro_cam( 5, -5, @3.1.5 )
	}
	@0.0 cam.lookAt.x = 0
	@0.0 cam.lookAt.y = 0
	@0.0 cam.lookAt.z = 0
	@0.0 cam.up.z = -1
	@0.0 cam.up.x = -1 to 1 in @4.0

	@0.0 mainImg.shader0.glowAmount = 10.0 to 1.0 in @4.0
	@4.0 loop @2.0 4 times {
		@0.1.5 mainImg.shader0.glowAmount = 10.0 to 1.0 in @1.2
	}

	@8.0 enable overlayImg
	@8.0 overlayImg.frame = 1
	@8.0 overlayImg.zoom = 0.0 to 0.1 in @4.0
	@11.0 overlayImg.col.a = 1.0 to 0.0 in @1.0
}

scene_intro_cam: %Y1 %Y2 %TIME {
	@0.0 cam.pos.z = rand( -30 to -20 )
	@0.0 cam.pos.x = rand( -10 to 10 )
	@0.0 cam.pos.y = %Y1 to %Y2 in %TIME
}

scene_helix {
	@0.0 call disableObjs
	@0.0 enable helix, helix2, helix3, prts2
	
	@0.0 mainImg.shader0.useColorMap = 1
		
	@0.0 loop @4.0 5 times {
		@0.0 helix.shader0.start = 0
		@0.0 helix.shader0.end = 0
		@0.0 helix2.shader0.start = 0
		@0.0 helix2.shader0.end = 0
		@0.0 helix3.shader0.start = 0
		@0.0 helix3.shader0.end = 0
		
		@0.0 helix.shader0.end = 0.0 to 1.0 in @4.0
		@1.0 helix.shader0.start = 0.0 to 1.0 in @3.0
		@1.0 helix2.shader0.end = 0.0 to 1.0 in @2.0
		@2.0 helix2.shader0.start = 0.0 to 1.0 in @2.0
		@0.0 helix3.shader0.end = 0.0 to 1.0 in @3.0
		@2.0 helix3.shader0.start = 0.0 to 1.0 in @2.0
	}
	
	@0.0 helix.rot.y = 0 to 90 in @12.0
	@0.0 helix2.rot.z = 0 to -70 in @12.0
	@0.0 helix3.rot.x = 0 to 50 in @12.0

	@0.0 loop @4.0 3 times {
		@0.0 call scene_intro_cam( 10, -10, @4.0 )
	}

	@0.0 cam.lookAt.x = 0
	@0.0 cam.lookAt.y = 0
	@0.0 cam.lookAt.z = 0
	@0.0 cam.up.z = -1
	@0.0 cam.up.x = -1 to 1 in @12.0

	@4.0 loop @1.0 6 times {
		@0.1 mainImg.shader0.glowAmount = 13.0 to 5.0 in @0.3
	}
}

scene_credits {
	@0.0 call disableObjs
	@0.0 enable helixb, helixb2, helixb3, prts2, credits
	
	@0.0 mainImg.shader0.useColorMap = 1
		
	@0.0 loop @4.0 2 times {
		@0.0 helixb.shader0.start = 0
		@0.0 helixb.shader0.end = 0
		@0.0 helixb2.shader0.start = 0
		@0.0 helixb2.shader0.end = 0
		@0.0 helixb3.shader0.start = 0
		@0.0 helixb3.shader0.end = 0
		
		@0.0 helixb.shader0.end = 0.0 to 1.0 in @4.0
		@1.0 helixb.shader0.start = 0.0 to 1.0 in @3.0
		@1.0 helixb2.shader0.end = 0.0 to 1.0 in @2.0
		@2.0 helixb2.shader0.start = 0.0 to 1.0 in @2.0
		@0.0 helixb3.shader0.end = 0.0 to 1.0 in @3.0
		@2.0 helixb3.shader0.start = 0.0 to 1.0 in @2.0
	}
	
	@0.0 helixb.rot.y = 0 to 90 in @8.0
	@0.0 helixb2.rot.z = 0 to -70 in @8.0
	@0.0 helixb3.rot.x = 0 to 50 in @8.0

	@0.0 call scene_intro_cam( 5, -5, @4.0 )
	@4.0 call scene_intro_cam( 5, 0, @2.0 )
	@6.0 call scene_intro_cam( -5, 0, @2.0 )

	@0.0 cam.lookAt.x = 0
	@0.0 cam.lookAt.y = 0
	@0.0 cam.lookAt.z = 0
	@0.0 cam.up.z = -1
	#@0.0 cam.up.x = -1 to 1 in @4.0

	@0.0 loop @4.0 2 times {
		@0.0 mainImg.shader0.glowAmount = 7.0 to 2.0 in @4.0
	}
	
	@0.0 loop @2.0 4 times {
		@0.0 credits.col.a = 0 to 1 in @0.2
		@1.2 credits.col.a = 1 to 0 in @0.2
		@0.0 credits.pos.x = -200 to -150 in @2.0
	}
	@0.0 credits.frame = 0 to 4 in @8.0
}

scene_particles {
	@0.0 call disableObjs
	@0.0 enable prts2, prts3, overlayImg
	@0.0 mainImg.shader0.useColorMap = 1
	@0.0 loop @0.2 16 times {
		@0.1 cam.pos.x = rand( -50 to 50 )
		@0.1 cam.pos.y = rand( -50 to 50 )
		@0.1 cam.pos.z = rand( -50 to 50 )
	}
	@0.0 cam.lookAt.x = -25 to 25 in @8.0
	@0.0 cam.lookAt.y = -15 to 15 in @8.0
	@0.0 cam.lookAt.z = -10 to 10 in @8.0
	@0.0 cam.fovy = 80
	@0.0 overlayImg.frame = 3

	@0.0 enable overlayImg
	@0.0 overlayImg.frame = 6
	@0.0 overlayImg.zoom = 0.0 to 0.1 in @8.0
	@0.0 overlayImg.col.a = 1.0 to 0.0 in @8.0
}

scene_particlesb {
	@0.0 call scene_particles
	@0.0 overlayImg.frame = 5
}

scene_ending {
	@0.0 call disableObjs
	@0.0 enable overlayImg
	@0.0 overlayImg.frame = 2
	@0.0 overlayImg.col.a = 0 to 1 in @2.0
	@0.0 overlayImg.zoom = 0.0 to 0.1 in @8.0
	@4.0 overlayImg.col.a = 1.0 to 0.0 in @4.0
	#@4.0 overlayImg.col.r = 1.0 to 0.0 in @4.0
}

scene_weird {
	@0.0 call disableObjs
	@0.0 enable nice, overlayImg
	@0.0 mainImg.shader0.useColorMap = 1
	@0.0 nice.shader0.foo = spline( 0, 0, 10, 20 ) in @8.0
	
	@0.0 cam.pos.x = eval( "15*sin(time*0.0005)" ) for @8.0
	@0.0 cam.pos.y = eval( "15*cos(time*0.00032)" ) for @8.0
	@0.0 cam.pos.z = eval( "30*sin(time*0.00043)" ) for @8.0
	@0.0 cam.lookAt.x = eval( "sin(time*0.005)" ) for @8.0
	@0.0 cam.lookAt.y = eval( "cos(time*0.0052)" ) for @8.0
	@0.0 cam.lookAt.z = eval( "sin(time*0.0053)" ) for @8.0
	
	@0.0 overlayImg.frame = 3
	@0.0 overlayImg.col.a = 1.0
	@0.0 overlayImg.zoom = 0.0 to 1.0 in @8.0	
	
	@0.0 loop @0.2 15 times {
		@0.1 mainImg.shader0.glowAmount = 5.0 to 2.0 in @0.2
	}

	@0.0 cam.fovy = 140
	@8.0 cam.fovy = 45
}

scene_flowers {
	@0.0 call disableObjs
	@0.0 enable flowers, prts2, overlayImg

	@0.0 mainImg.shader0.useColorMap = 1
	@0.0 mainImg.shader0.colorMapTex = 4
	
	@0.0 loop @0.2 16 times {
		@0.0 cam.pos.x = rand( -10 to 10 )
		@0.0 cam.pos.z = rand( -10 to 10 )
	}
	@0.0 cam.pos.y = -5 to 5 in @4.0
	@4.0 cam.pos.y = 5 to -5 in @4.0
	@0.0 cam.fovy = 90
	@0.0 cam.lookAt.x = 0
	@0.0 cam.lookAt.y = 0
	@0.0 cam.lookAt.z = 0
	
	@0.0 flowers.shader0.foo = 0.0 to 8.0 in @8.0
	@0.0 loop @1.0 8 times {
		@0.0 mainImg.shader0.glowAmount = 3.0 to 2.0 in @0.1
		@0.1 mainImg.shader0.glowAmount = 6.0 to 2.0 in @0.1
		@0.2 mainImg.shader0.glowAmount = 3.0 to 2.0 in @0.1
		@0.3 mainImg.shader0.glowAmount = 9.0 to 2.0 in @0.1
	}
	@0.0 overlayImg.frame = 3
	@0.0 overlayImg.zoom = 0
	@0.0 overlayImg.col.a = 0 to 1 in @0.2
	@7.2 overlayImg.col.a = 1 to 0 in @0.2
	
}