forked from LeenkxTeam/LNXSDK
40 lines
846 B
Haxe
40 lines
846 B
Haxe
package leenkx.logicnode;
|
|
|
|
import iron.object.CameraObject;
|
|
|
|
class SetCameraStartEndNode extends LogicNode {
|
|
|
|
public var property0: String;
|
|
|
|
public function new(tree: LogicTree) {
|
|
super(tree);
|
|
}
|
|
|
|
override function run(from: Int) {
|
|
var camera: CameraObject = inputs[1].get();
|
|
|
|
assert(Error, Std.isOfType(camera, CameraObject), "Camera must be a camera object!");
|
|
|
|
if (camera == null) return;
|
|
|
|
if (property0 == 'Start'){
|
|
var start: Float = inputs[2].get();
|
|
camera.data.raw.near_plane = start;
|
|
}
|
|
else if (property0 == 'End' ){
|
|
var end: Float = inputs[2].get();
|
|
camera.data.raw.far_plane = end;
|
|
}
|
|
else {
|
|
var start: Float = inputs[2].get();
|
|
camera.data.raw.near_plane = start;
|
|
var end: Float = inputs[3].get();
|
|
camera.data.raw.far_plane = end;
|
|
}
|
|
|
|
camera.buildProjection();
|
|
|
|
runOutput(0);
|
|
}
|
|
}
|