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
}