threepipe
Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. import {_testFinish, _testStart, LoadingScreenPlugin, PickingPlugin, ThreeViewer} from 'threepipe'
  2. import {EnvironmentControls2, EnvironmentControlsPlugin, TilesRendererPlugin} from '@threepipe/plugin-3d-tiles-renderer'
  3. import {TweakpaneUiPlugin} from '@threepipe/plugin-tweakpane'
  4. async function init() {
  5. const viewer = new ThreeViewer({
  6. canvas: document.getElementById('mcanvas') as HTMLCanvasElement,
  7. msaa: false,
  8. debug: true,
  9. renderScale: 'auto',
  10. dropzone: {
  11. allowedExtensions: ['gltf', 'glb', 'hdr', 'bin', 'png', 'jpeg', 'webp', 'jpg', 'exr', 'json'],
  12. addOptions: {
  13. disposeSceneObjects: true,
  14. autoSetEnvironment: true, // when hdr is dropped
  15. autoSetBackground: true,
  16. },
  17. },
  18. plugins: [LoadingScreenPlugin, EnvironmentControlsPlugin, PickingPlugin],
  19. })
  20. viewer.scene.mainCamera.controlsMode = 'environment'
  21. viewer.scene.mainCamera.position.set(150, 150, 150)
  22. viewer.scene.mainCamera.lookAt(0, 0, 0)
  23. // viewer.scene.mainCamera.autoNearFar = false
  24. // viewer.scene.mainCamera.minNearPlane = 1
  25. // viewer.scene.mainCamera.maxFarPlane = 1000
  26. const tiles = viewer.addPluginSync(TilesRendererPlugin)
  27. await viewer.setEnvironmentMap('https://threejs.org/examples/textures/equirectangular/venice_sunset_1k.hdr')
  28. const result = await tiles.load('https://raw.githubusercontent.com/NASA-AMMOS/3DTilesRendererJS/c7a9a7f7607e8759d16c26fb83815ad1cd1fd865/example/data/tileset.json', {
  29. autoCenter: true,
  30. autoScale: true,
  31. autoScaleRadius: 100,
  32. tiles: {
  33. // TilesFadePlugin: false,
  34. },
  35. })
  36. console.log(result)
  37. // optional
  38. const controls = viewer.scene.mainCamera.controls as EnvironmentControls2
  39. result && controls.setTilesRenderer(result.tilesRenderer)
  40. const ui = viewer.addPluginSync(TweakpaneUiPlugin)
  41. ui.appendChild(controls.uiConfig)
  42. ui.setupPluginUi(PickingPlugin)
  43. }
  44. _testStart()
  45. init().finally(_testFinish)