|
@@ -75,6 +75,13 @@ export class Images360 extends THREE.EventDispatcher{
|
|
this.cube.layers.set(Potree.config.renderLayers.skybox)
|
|
this.cube.layers.set(Potree.config.renderLayers.skybox)
|
|
this.cube.name = 'skyboxCube'
|
|
this.cube.name = 'skyboxCube'
|
|
viewer.scene.scene.add(this.cube)
|
|
viewer.scene.scene.add(this.cube)
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ if(Potree.settings.mergeType2){
|
|
|
|
+ this.materialInside = new ModelTextureMaterial( )
|
|
|
|
+ this.materialInside.dontChangeDepth = true //chunk本身深度是对的,不用深度图,否则过渡会有很多裂痕
|
|
|
|
+ this.cube.material.defines.depth_background = '' //skybox的深度改得向后一些, 避免盖住chunk,造成坑坑洼洼
|
|
|
|
+ }
|
|
}
|
|
}
|
|
if(Potree.settings.testCube){
|
|
if(Potree.settings.testCube){
|
|
this.cubeTest = this.cube.clone()
|
|
this.cubeTest = this.cube.clone()
|
|
@@ -421,6 +428,20 @@ export class Images360 extends THREE.EventDispatcher{
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
+ if(Potree.settings.mergeType2 && this.currentPano.pointcloud.is4dkkModel){
|
|
|
|
+ if(this.currentPano.pointcloud.fileType == '3dTiles'){
|
|
|
|
+ viewer.model4dkk.runtime.limit2lowestDepth(mode == 'showPanos')
|
|
|
|
+ viewer.model4dkk.runtime.getTileset().tiles.forEach(e=>{
|
|
|
|
+ let mesh = e.tileContent.children[0]
|
|
|
|
+ mesh.material = mode == 'showPanos' ? this.materialInside : mesh.materialOutside
|
|
|
|
+ Potree.Utils.setObjectLayers(mesh, mode == 'showPanos' ? 'skybox' : 'model' )
|
|
|
|
+ })
|
|
|
|
+
|
|
|
|
+ }else{
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
|
|
/* viewer.dispatchEvent({
|
|
/* viewer.dispatchEvent({
|
|
type: "enableChangePos",
|
|
type: "enableChangePos",
|
|
@@ -871,7 +892,7 @@ export class Images360 extends THREE.EventDispatcher{
|
|
let onUpdate = (progress)=>{
|
|
let onUpdate = (progress)=>{
|
|
|
|
|
|
this.cube.material.uniforms.progress.value = progress
|
|
this.cube.material.uniforms.progress.value = progress
|
|
-
|
|
|
|
|
|
+ this.materialInside && (this.materialInside.uniforms.progress.value = progress)
|
|
viewer.scene.pointclouds.forEach(e=>{
|
|
viewer.scene.pointclouds.forEach(e=>{
|
|
e.material.uniforms.progress.value = progress
|
|
e.material.uniforms.progress.value = progress
|
|
})
|
|
})
|