mylingo3d
Version:
Lingo3D is a React/Vue 3d game development framework that ships with a complete visual editor
39 lines (29 loc) • 834 B
text/typescript
import ICameraBase, {
cameraBaseDefaults,
cameraBaseSchema
} from "./ICameraBase"
import Defaults from "./utils/Defaults"
import { ExtractProps } from "./utils/extractProps"
import Nullable from "./utils/Nullable"
export default interface IOrbitCamera extends ICameraBase {
targetId: Nullable<string>
enableZoom: boolean
enableFly: boolean
autoRotate: boolean | number
}
export const orbitCameraSchema: Required<ExtractProps<IOrbitCamera>> = {
...cameraBaseSchema,
targetId: String,
enableZoom: Boolean,
enableFly: Boolean,
autoRotate: [Boolean, Number]
}
export const orbitCameraDefaults: Defaults<IOrbitCamera> = {
...cameraBaseDefaults,
innerZ: 500,
mouseControl: "drag",
targetId: undefined,
enableZoom: false,
enableFly: false,
autoRotate: false
}