threepipe
Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

script.ts 1.1KB

123456789101112131415161718192021222324252627282930
  1. import {_testFinish, DepthBufferPlugin, HalfFloatType, RenderTargetPreviewPlugin, ThreeViewer} from 'threepipe'
  2. const viewer = new ThreeViewer({
  3. canvas: document.getElementById('mcanvas') as HTMLCanvasElement,
  4. msaa: true,
  5. rgbm: true,
  6. zPrepass: false,
  7. })
  8. async function init() {
  9. const depth = viewer.addPluginSync(new DepthBufferPlugin(HalfFloatType, true))
  10. const targetPreview = viewer.addPluginSync(RenderTargetPreviewPlugin)
  11. await viewer.setEnvironmentMap('https://threejs.org/examples/textures/equirectangular/venice_sunset_1k.hdr')
  12. await viewer.load('https://threejs.org/examples/models/gltf/kira.glb', {
  13. autoCenter: true,
  14. autoScale: true,
  15. })
  16. viewer.renderManager.autoBuildPipeline = false
  17. viewer.renderManager.pipeline = ['depth', 'render', 'screen']
  18. targetPreview.addTarget(()=>depth.getTarget(), 'depth', false, true)
  19. targetPreview.addTarget(()=>viewer.renderManager.composerTarget, 'composer-1', false, false)
  20. targetPreview.addTarget(()=>viewer.renderManager.composerTarget2, 'composer-2', false, false)
  21. }
  22. init().then(_testFinish)