UNPKG

prophetk-3d-viewer

Version:

A Three.js r128 based GLB/GLTF model viewer for WeChat Mini Program and Web.

163 lines (162 loc) • 3.82 kB
module.exports = { renderer: { clearColor: '#000000', clearAlpha: 1, shadowMapEnabled: false, outputEncoding: 'sRGB', toneMapping: 'ACESFilmic', toneMappingExposure: 1.0, }, environment: { showDragGrid: false, // 拖动时显示水平参考网格。 showBounds: true, // 选中时显示模型包围框。 url: '', showSkybox: false, }, camera: { controlMode: 'orbit', // 'orbit': rotate around lookAt; 'pan': translate on XZ. position: [0, 1.5, 3], lookAt: [0, 0, 0], fov: 60, near: 0.01, far: 1000, }, models: [ { id: 'plane', clickEvent: 'openDetails', type: 'gltf', url: 'demoRes/plane.glb', position: [0, 0, 0], rotation: [0, 0, 0], scale: [100, 1, 100], }, { id: 'box1', clickEvent: 'openDetails', type: 'gltf', url: 'demoRes/bucket.glb', isMovable: true, position: [0, 0, 0], rotation: [0, 0, 0], scale: [1, 1, 1], }, { id: 'box2', clickEvent: 'openDetails', type: 'gltf', url: 'demoRes/bucket.glb', isMovable: true, invisible:true, position: [1, 0, 0], rotation: [0, 0, 0], scale: [1, 1, 1], }, { id: 'box3', clickEvent: 'openDetails', parent: 'box1', // 子模型随 box1 移动,TRS 相对于 box1。 type: 'gltf', url: 'demoRes/bucket.glb', isMovable: false, position: [0, 1, 0], rotation: [0, 0, 0], scale: [0.4, 0.4, 0.4], } ], lights: [ { type: 'ambient', color: '#ffffff', intensity: 0.5, }, { type: 'directional', color: '#ffffff', intensity: 0.8, position: [5, 10, 7], }, { type: 'point', color: '#ffffff', intensity: 0.5, position: [-1, 1, -1], }, ], decal_projector: { target: 'main', // Set a packaged image path here to enable the demo decal without a server. url: '', scaleX: 1, scaleY: 1, opacity: 1, projectorPosition: [0, 1, 0], projectorTarget: [0, 0, 0], projectorRollDeg: 45, projectorWidth: 1, projectorHeight: 0.5, projectorNormalThreshold: 0, debug: true, }, ui: [ { type: 'label', id: 'decal_status_label', position: [0.04, 0.9], scale: [0.72, 0.06], text: 'decal scaleX=1 scaleY=1 opacity=1 projector=1x0.5 roll=45', alpha: 1, color: '#ffffff', fontSize: 14, backgroundColor: 'rgba(0, 0, 0, 0.45)', borderColor: 'rgba(255, 255, 255, 0.25)', align: 'left', }, { type: 'button', position: [0.06, 0.04], scale: [0.24, 0.08], text: 'Reload', // img: 'http://10.11.136.138:8080/decal.png', alpha: 1, event: 'event_btn_reload_model', }, { type: 'slider', position: [0.04, 0.16], scale: [0.3, 0.08], text: 'decal x', min: 0.2, max: 3, value: 1, step: 0.01, alpha: 1, event: 'event_slider_decal_scale_x', target: 'decal.scaleX', }, { type: 'slider', position: [0.04, 0.27], scale: [0.3, 0.08], text: 'decal y', min: 0.2, max: 3, value: 1, step: 0.01, alpha: 1, event: 'event_slider_decal_scale_y', target: 'decal.scaleY', }, ], // decal: { // target: 'main', // url: 'http://10.11.136.138:8080/decal.png', // decalAngleDeg: 0, // decalHeight: 0, // decalScaleX: 1, // decalScaleY: 1, // arcWidth: 1.0471975512, // heightRange: 1.0, // opacity: 1.0, // }, };