@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
22 lines (21 loc) • 781 B
JavaScript
;
import { CameraAttribute } from "./CoreCamera";
import { isNumber } from "../Type";
import { coreObjectClassFactory } from "../geometry/CoreObjectFactory";
export class CoreCameraControlsController {
// static isCameraControlsNode(node: BaseNodeType) {
// return CAMERA_CONTROLS_NODE_TYPES.includes(node.type());
// }
static controlsNode(options) {
const { scene, camera } = options;
let controlsNode;
const foundNodeId = coreObjectClassFactory(camera).attribValue(camera, CameraAttribute.CONTROLS_NODE_ID);
if (foundNodeId && isNumber(foundNodeId)) {
const foundNode = scene.graph.nodeFromId(foundNodeId);
if (foundNode && foundNode.applyControls) {
controlsNode = foundNode;
}
}
return controlsNode;
}
}