xzw 1 år sedan
förälder
incheckning
0978c0e175

+ 6 - 3
public/lib/potree/potree.js

@@ -77053,10 +77053,11 @@ void main()
 	                loadDone(object);
 	            };
 	        
-	            viewer.loadModel({ 
+	            viewer.loadModel({  
 	                fileType: '3dTiles', 
 	                id: prop.id,
 	                name : prop.title,
+	                maximumScreenSpaceError: prop.maximumScreenSpaceError, 
 	                /* tilesUrl: 'https://4dkk.4dage.com/scene_view_data/SS-Ds19qsmuFA/images/3dtiles/tileset.json',
 	                transform : { 
 	                    rotation : [Math.PI/2,  0,   0],
@@ -153276,6 +153277,8 @@ ENDSEC
 	                        tileContent.visible = false; 
 	                        renderMap[tile.id] = tileContent;
 	                        tileContent.name = tile.id; //add
+	                        tileContent.tile = tile; //add
+	                        
 	                        root.add(renderMap[tile.id]);
 	                        if (options.debug) {
 	                            const box = loadersBoundingBoxToMesh(tile);
@@ -164466,13 +164469,13 @@ ENDSEC
 	                url: fileInfo.url, 
 	                gltfLoader : loaders.glbLoader, 
 	                //renderer: SceneRenderer.renderer   
-	                options: {    
+	                options: {     
 	                    //dracoDecoderPath: '../utils/loaders/DRACOLoader/draco',
 	                    //basisTranscoderPath: '../utils/loaders/KTX2Loader/basis',
 	                    maximumScreenSpaceError: fileInfo.maximumScreenSpaceError || 80,  //越小越清晰。           如果本身tiles很密很小这个值就不能很大。
 	                    //maxDepth: 100, 
 	                    maximumMemoryUsage: 200, //缓存大小。单位M(但实际结果是 2.5*maximumMemoryUsage + 750  。超过2G会崩, 所以应该小于540) 若太小,密集的tile反复加载很卡. (任务管理器刷新网页后若内存不掉就要结束进程否则虚高)
-	                    debug:false, //show box  
+	                    debug: browser.urlHasValue('tilesBox'),  //show box  
 	                    parent: this.scene.scene, 
 	                    is4dkk: fileInfo.is4dkk,//是否是4dkk中的模型. 通常maximumScreenSpaceError需要10
 	                    updateTime: fileInfo.updateTime, //加后缀防止缓存

Filskillnaden har hållts tillbaka eftersom den är för stor
+ 1 - 1
public/lib/potree/potree.js.map


+ 46 - 0
public/lib/three.js/loaders/basis/README.md

@@ -0,0 +1,46 @@
+# Basis Universal GPU Texture Compression
+
+Basis Universal is a "[supercompressed](http://gamma.cs.unc.edu/GST/gst.pdf)"
+GPU texture and texture video compression system that outputs a highly
+compressed intermediate file format (.basis) that can be quickly transcoded to
+a wide variety of GPU texture compression formats.
+
+[GitHub](https://github.com/BinomialLLC/basis_universal)
+
+## Transcoders
+
+Basis Universal texture data may be used in two different file formats:
+`.basis` and `.ktx2`, where `ktx2` is a standardized wrapper around basis texture data.
+
+For further documentation about the Basis compressor and transcoder, refer to
+the [Basis GitHub repository](https://github.com/BinomialLLC/basis_universal).
+
+The folder contains two files required for transcoding `.basis` or `.ktx2` textures:
+
+* `basis_transcoder.js` — JavaScript wrapper for the WebAssembly transcoder.
+* `basis_transcoder.wasm` — WebAssembly transcoder.
+
+Both are dependencies of `THREE.KTX2Loader` and `THREE.BasisTextureLoader`:
+
+```js
+var ktx2Loader = new THREE.KTX2Loader();
+ktx2Loader.setTranscoderPath( 'examples/js/libs/basis/' );
+ktx2Loader.detectSupport( renderer );
+ktx2Loader.load( 'diffuse.ktx2', function ( texture ) {
+
+	var material = new THREE.MeshStandardMaterial( { map: texture } );
+
+}, function () {
+
+	console.log( 'onProgress' );
+
+}, function ( e ) {
+
+	console.error( e );
+
+} );
+```
+
+## License
+
+[Apache License 2.0](https://github.com/BinomialLLC/basis_universal/blob/master/LICENSE)

Filskillnaden har hållts tillbaka eftersom den är för stor
+ 21 - 0
public/lib/three.js/loaders/basis/basis_transcoder.js


BIN
public/lib/three.js/loaders/basis/basis_transcoder.wasm


+ 1 - 0
public/lib/three.js/loaders/basis/ver146.txt

@@ -0,0 +1 @@
+ktx2Loader 使用

+ 2 - 2
src/sdk/cover/index.js

@@ -557,9 +557,9 @@ export const enter = (dom, mapDom, isLocal, lonlat) => {
             
             let startLoad = (prop)=>{
                 //if(autoLoads.filter(e=>e.loaded).length>1)return console.log('取消加载', prop), prop.onError()
-                
+                 
                 //return prop.onError()
-            
+                prop.maximumScreenSpaceError = 100
                 Potree.addModel(prop,  prop.done , prop.progressFun, prop.onError)
                 prop.loading = true
                 console.log('-------开始加载 id:', prop.id, 'title:', prop.title, ', filename:', Potree.Common.getNameFromURL(prop.url),  prop )