Samantha Steele / Task 05
Skybox for my final project with animated sky
task05.wrl (2kb)
|
|
Code:
DEF ENGINE Script {
eventIn SFFloat set_value
eventOut SFFloat value_changed
url ["javascript:
function set_value(val) {
/*
want to use sine, because sine is smooth..
Math.sin(val) wants val ranges [0,2PI]
but timeSensor gives [0,1]
so [0,1] * 2PI gives [0,2PI]
light.intensity wants [0,1]
but Math.sin([0,2PI]) gives [-1,1]
so ([-1,1] + 1) * .5 gives [0,1]
*/
value_changed = (Math.sin(val * 2*Math.PI) + 1) * .5;
}
"]
}
#create a script to convert SFColor to MFColor
DEF MF Script {
eventIn SFColor set_value
eventOut MFColor value_changed
url ["javascript:
function set_value(val) {
value_changed = new MFColor(val);
}
"]
}
ROUTE TIMER.fraction_changed TO ENGINE.set_value
ROUTE ENGINE.value_changed TO CI.set_fraction
ROUTE CI.value_changed TO MF.set_value
ROUTE MF.value_changed TO Backcolor.skyColor