改bug的历史.txt 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586
  1. 疑难杂症 -。-
  2. 2023.12.29
  3. DepthImageSampler
  4. let data = this.context.getImageData(0, 0, img.width , img.height ).data;
  5. 怎么还报错呢?!!
  6. (勘测华为平板)
  7. 错误1:Failed to execute 'getImageData' on 'CanvasRenderingContext2D': Out of memory at ImageData creation
  8. 错误2:cannot read properties of undefined (reading 'data')
  9. 2023.12.15
  10. 反馈说地图加载慢
  11. https://laser.4dkankan.com/index.html?m=SS-3yiIoMBSnw&lang=zh#/data
  12. 不稳定,有时候会卡住不加载,有时候加载很快
  13. 修改了updateSubTiles中childLoaded的那一句。之前是遇到一个贴图没加载好的就停止继续执行(导致每次update至多只有一个贴图加载)。现在是放开了全部执行下去,反正也只是加到加载队列里。 效果明显提升,且不卡顿。
  14. 2023.12.12
  15. 本地版在合并站架式数据集后立即切换全景模式,首次,会无法切换。
  16. 原因是曾切换showPanos后又自动切回showPointcloud, 在5秒内又切回showPanos,使checkAndWaitForPanoLoad开头的withinTime生效从而return.
  17. 所以加了个监听,当切模式后,去掉isLoadedPanos记录
  18. 2023.12.08
  19. 本地版多个iframe崩溃
  20. 内存占用2G 图片7G 时,进入数据集校准崩溃 (8个点云页面) 似乎是连续setSize的原因
  21. 已经写了 let unfocusEvent = new CustomEvent('unfocusPage',{detail:{aaa:'hhh'}})等事件使unfocus后停止loop
  22. 2023.11.13
  23. 分享测量时地图的tile经常没加载完。场景SS-t-uMizHDioNE很明显,地图加载完了但entity俯视图几乎没加载。
  24. 1先把waitLoadDone里检测到加载完后延迟50ms再执行回调,没用。
  25. 2后来发现一个bug,flytoPano中duration为0时重新计算了duration,导致地图恢复位置的过程被拉长,此bug修复后恢复1中所改。 但是改完后更严重了0.0。
  26. 3即使加长1中的时间到500ms也一样。
  27. 4发现即使waitLoadDone监听到loadingInProgress == 0后,如果继续等待,还会继续loadDone。所以其实没加载完。
  28. 是因为没有连续加载吗?
  29. 5发现是经常存在loadingInProgress == 0后,有继续加载新的tile。原因未知(一定要上一个加载完才能计算之后的可见性?)。间隔时间能达到300ms。
  30. 6 waitLoadDone 改完后加载了好久 - - 半分钟以上
  31. 7 不截图,直接双屏展示,focus测量线,也是加载好久。 tile太小了。且开头一直加载深度图导致地图暂停下载
  32. 8 map 的 update的var c = this.tileSizePx / i.length() / scale中的scale之前是针对地图加的,或许对俯视图不适用,去掉。且修改bias为0.5。情况好很多。
  33. --------------
  34. 2023.6.16
  35. iphone支持 EXT_DEPTH 的 orthoCamera下, paraboloid_point_shape形状的 点云绘制不出。导致无法pick出点云位置
  36. 因为不支持的曾经加过这个:
  37. if(!Features.EXT_DEPTH.isSupported() && this.shape === PointShape.PARABOLOID){
  38. this.shape = PointShape.SQUARE ;//强行替换
  39. }
  40. 结果:在#if defined paraboloid_point_shape处添加一行:
  41. gl_FragDepthEXT = clamp(gl_FragDepthEXT, 0.0, 1.0);
  42. 这句在解决ios16全景里经常有黑块是一样的处理方式。
  43. --------------------------------------------------------------
  44. 另外将depthBasicMaterial和线的resolution改为了resolution2否则手机的遮挡错误。但是为何之前没事?且专门记录了应该使用resolution
  45. 2023.4.21
  46. SS-t-0lHRLIEqFY 场景的images360.cube抖动,导致整个画面在相机变化时扭曲
  47. 只有在非普通cube创建出后才会,恢复为普通cube后就正常。但数据集的test boundingbox、buildingBox、测量线一直抖动。
  48. 三个数据集,前两个无深度图,最后一个有,且位置很远。
  49. 也只有第三个数据集会产生抖动。应该是因为数字过大而精度不够。
  50. 但为何点云、panoLabel不会抖动,可能因为geo规则。
  51. 尝试将整体平移,使当前位置在原点,但特别麻烦,而且测量线正常了但cube总是不正常。放弃。
  52. ( 大场景距离很远的话 也抖动,只是抖得不太一样,不会扭曲和撕裂)
  53. 2023.2.17
  54. 现象:转动过程中,面对相同的一块点云,有时候很流畅,有时候反向再转回去超级卡,但numVisiblePoints并无增加。
  55. 如数据:
  56. NAME | MIN | MEDIAN | MAX | AVE | SAMPLES
  57. ----------------------------------------------------------------------
  58. loop | 0.700 | 7.300 | 11.500 | 7.322 | 50
  59. loopWaitNext | 6.200 | 10.300 | 41.500 | 13.804 | 49
  60. mapRender | 0.200 | 0.300 | 0.600 | 0.321 | 47
  61. numVisiblePoints | 59.614 | 59.939 | 59.996 | 59.934 | 47
  62. render | 0.000 | 6.300 | 9.500 | 6.134 | 50
  63. renderDefault | 4.500 | 6.300 | 9.400 | 6.519 | 47
  64. renderNodes | 1.300 | 2.200 | 3.500 | 2.233 | 94
  65. renderOctree | 0.000 | 0.000 | 0.100 | 0.027 | 94
  66. renderOverlay | 0.100 | 0.300 | 0.500 | 0.306 | 47
  67. update | 0.500 | 0.900 | 1.700 | 0.958 | 50
  68. updateClouds | 1.100 | 1.200 | 1.800 | 1.340 | 47
  69. visiStructure | 0.000 | 0.100 | 0.300 | 0.140 | 47
  70. visibleNodes | 536.000 | 544.000 | 554.000 | 544.426 | 47
  71. NAME | MIN | MEDIAN | MAX | AVE | SAMPLES
  72. ----------------------------------------------------------------------
  73. loop | 5.700 | 6.500 | 9.300 | 6.952 | 21
  74. loopWaitNext | 40.700 | 43.500 | 44.200 | 43.100 | 20
  75. mapRender | 0.200 | 0.300 | 0.400 | 0.295 | 21
  76. numVisiblePoints | 59.880 | 59.959 | 59.999 | 59.955 | 21
  77. render | 4.700 | 5.300 | 8.100 | 5.781 | 21
  78. renderDefault | 4.700 | 5.300 | 8.100 | 5.776 | 21
  79. renderNodes | 1.300 | 1.700 | 2.900 | 1.867 | 42
  80. renderOctree | 0.000 | 0.000 | 0.100 | 0.033 | 42
  81. renderOverlay | 0.200 | 0.300 | 0.300 | 0.257 | 21
  82. update | 0.600 | 0.900 | 1.200 | 0.948 | 21
  83. updateClouds | 1.100 | 1.400 | 1.800 | 1.405 | 21
  84. visiStructure | 0.100 | 0.200 | 0.200 | 0.152 | 21
  85. visibleNodes | 528.000 | 533.000 | 540.000 | 533.286 | 21
  86. 这两个数据numVisiblePoints、visibleNodes相差很小,但是渲染时间却迥异,为何?
  87. 再怎么卡,loopWaitNext也只需要等待一轮回,也就是小于16.6*2即可,这里却达到40!
  88. 2023.2.7
  89. 发现viewer.update函数cpu高(降4倍),因为sidebar中某个函数所致。在正式laser工程中不会用到。
  90. 改写renderOctree, 所有pointcloud只执行一次可以节省很多时间,但 adaptive型的点云遇到问题,无法支持。 所以点云编辑不能使用adaptive
  91. 2023.1.4
  92. cpu过高:(静止时)
  93. 全景模式: 30-40 希望降到20以下 只绘制一次skybox:20-30 不渲染overlay: 15-35
  94. 点云模式: 60
  95. 原本potree在无点云时也有30的cpu (15-36波动)
  96. 若不渲染,cpu范围:5-20, 有时会到60咋回事。
  97. 不 loop, cpu: 0
  98. 仅update: cpu: 10
  99. 仅render: cpu: 25 (全景)
  100. matterport无抗锯齿, 但potree关闭抗锯齿并无变化
  101. 结论:
  102. cpu高的原因:1渲染到rtEDL,很多depthMaterial的都需要。 2 renderOverlay的,如marker。
  103. 3 点云加载、遍历一定会耗cpu (点云的优势究竟是什么,比4dkk好在哪?)
  104. navvis居然全景和点云都能做到0,因为静止、画面无改变时 不渲染 invalidateScene
  105. 但是这样的好处似乎很小:1 降低电池损耗 2或许能在不渲染时加快资源加载。而画面一旦动起来,cpu还是很高。
  106. 结局: 参照它们也做了静止时不渲染 viewer.dispatchEvent('content_changed')
  107. 2022.12.30
  108. 全景漫游卡顿(持续了几个月的问题)
  109. 特征:所有漫游点均是首次飞向它时流畅,但回头再走就容易卡。
  110. 调试:不checkAndWaitForPanoLoad 然后updateCube 不卡。 和skybox的geo变化无关,不改geo也卡。
  111. 进一步发现: 卡的时候uploadTile LoadComplete 经常到了2048。令只加载到1024不卡。所以似乎是加载越多tiles越卡。
  112. 解决方案:maxNonBaseUploadsPerFrame由2降为1。也就是在飞行时每帧uploadTiles的个数降低。另外飞行时refreshUploadInterval的间隔增加。
  113. 效果:确实降低了卡顿感。
  114. 还有疑问:为何4dkk不卡呢?只是在cubeRenderTarget上draw而已呀。 大场景因模型复杂所以本身就卡。
  115. 目前浏览器卡顿情况:
  116. 良好:chrome、 edge
  117. 微卡: qq 全景模式
  118. 卡:opera
  119. 很卡: firefox(点云模式也)
  120. 2022.12.13
  121. 漫游时经常要加载一两秒。 一开始以为是uploadTile加载问题,后来发现确实图没加载好,downloaded=false
  122. 原来是populateScoredPanos时的distanceSquared函数有问题
  123. 2022.11.24
  124. 全景模式为什么有时候变卡:
  125. 1 导航会一直加载点云,因一直getPointByScreen (2d发来的请求)
  126. 2 将漫游模式的visibleNodes清空了,仅在不支持depthTex时length才不为0
  127. 2022.8.30
  128. 融合页面的分屏,为何在多次缩放后易卡顿?
  129. 为什么加载点云时,在right设置为active=false时无法渲染?删除点云也不行。但是此时将top.width设置为1,也就是禁止了scissorTest,就没问题
  130. 且reticule所在之处能刷新画面。
  131. 2022.8.22
  132. 1
  133. glb 显示出的颜色比图片原本的颜色暗,但换成颜色没问题, obj图没问题。
  134. 自己创建个mesh贴上glb的贴图也是暗。 可是官方编辑器glb没问题。
  135. 换DepthBasicMaterial可以 why?
  136. 最后解决方案:自己写了个简单的BasicMaterial, 只贴贴图
  137. 2 glb 大文件经常加载不成功
  138. 在本地demo未出现。 Content-Type: application/octet-stream 这和本地加载不同:Content-Type: model/gltf-binary
  139. DOMException: The source image could not be decoded.
  140. 将 CanvasTextrue ImageBitmapLoader 换成普通的texture后, 又容易崩溃。
  141. 为什么要用CanvasTextrue 呢?我直接换成普通Texture了
  142. 2022.7.22
  143. 闪烁的原因? 之前出现过警告且黑屏的情况,但鼠标滑动后恢复
  144. [.WebGL-0000074204D3AA00] GL_INVALID_OPERATION: Must have element array buffer bound.
  145. 延迟过渡或不修改geo时也会闪烁
  146. 在外侧 感觉有碎片,碎片是因为修改了深度的原因,但是去掉一样闪烁。
  147. hasDepthTex明明会改变材质的样子,但是漫游时没感觉?好像因为cameraHeight1不同 vWorldPosition0
  148. 在非当前geo的点位下 bump就能有碎片感 why 似乎是从外侧就会
  149. 放大后还是闪烁,但改善一些。加延迟再好一些。
  150. 似乎在出门时容易闪烁
  151. 改为球体 不换geo 也闪烁
  152. 改为cube 不换不闪 换也闪
  153. 去掉camera_changed发送就可以了!!
  154. 今天不闪烁了 但是有时候很卡 (莫名其妙)
  155. 似乎会出 贴图碎片加载。 黑块
  156. 又警告[.WebGL-000020FC00B72900] GL_INVALID_OPERATION: Must have element array buffer bound.
  157. 不使用getIntersect 中改变相机的操作 就不会。 现在在hasDepthTex时还蛮流畅的
  158. 但即使不改变该相机也会,所以应该是pick时render出问题。可能没还原状态。 可之前经常要用到pick
  159. 即使不更改geometry,只pick,也会出现,但频率降低。 完全不使用getIntersect但过渡前摆动鼠标也会, 旧代码偶现
  160. 找不到原因,暂时只能保证有深度图时不执行点云pick
  161. 但没有深度图的依然存在这个问题,且过渡后会黑屏闪烁一下
  162. 2022.7.8
  163. 为何每次截图都不一样?? 和等待时长有关系?
  164. 点云位置一样,但稀疏程度不同。
  165. 平面图显示的数据集还是不同 发现atDatasets和pdf显示的不同,但两次截图楼层一致,第一次多了个buildchagne到其他楼层
  166. 可能因为在分屏后移动了相机,但是更新building只500ms一次
  167. 为何相同位置pointInWhichEntity得到的entity不同? 其中一个多了次非force currentDataset也不一样!
  168. 是因为Common.intervalTool.isWaiting延时了并没有立即执行!
  169. 2022-05-12
  170. 为什么lineMaterial 在四屏中 setSize后,遮挡失效,要移动一下镜头才恢复? 但是在双屏中没事。 updateDepthParams()也没用。
  171. 只要有第三个viewport高度不为0,就会这样。 那估计是edl在别的屏幕渲染了
  172. 因为不同viewport需要用不同的rtEDL
  173. 2022-04-24
  174. ios 15.4.1 渲染问题,好像clear有时失效
  175. 相机离远后就留下了没clear的画面
  176. 全景图显示不出
  177. viewer.dispatchEvent({type: "render.begin", viewer: viewer, viewport:view, params })这句 删除后改善很多, 或者sprite 的applyMatrix不执行(如果执行,在不改变位移时也正常)
  178. 但同时也要删除 if(width == 0 || height == 0)return 但只要在this.renderer.render(this.scene.scene, camera); 之后return也可
  179. 在loop中 延迟渲染也一样有问题
  180. 只渲染overlay且不clear时,电脑是不clear的状态但是这个手机竟然自动clear了,全景图也能显示出,而且没有执行renderer.clear,也无gl.clear。执行renderer.clear反而有残影
  181. 但clearcolor确实没有生效
  182. 地图正常(使gl.clear非正常执行 )
  183. 用地图的renderer在地图渲染三维的场景clear也正常
  184. 是不是有类似setSize的函数可以起到clear的作用? 没找到
  185. 发现测量线最能引起这个bug,然后就发现navvis测量也这样了。
  186. 但具体哪一句造成一开始加载就
  187. 专注一下后续系统或者navvis是否解决。暂时屏蔽了EXT_frag_depth
  188. 2022-04-18
  189. 4dkk上传下载页面 上传全景图后首次刷新会有黑块 (只在上传下载页面才会)
  190. (!i || i && i === r.tile.panoId) && r.level 这个报错,原因未知,修改了一下,不报错但还是会黑块
  191. 同时出现automation没有init,原因是图没加载好,所以startInside没有成功回调
  192. 需要关闭浏览器的禁止缓存,否则bug出现不了
  193. 虽然不知道为什么图加载顺序和通常的不一样了,但终结原因是图加载的问题,故而修改了下uploadTile,增加LodDescripor.uploaded,可控性更强;但希望ignore不会造成有一部分模糊这种情况
  194. 2022-04-15
  195. 该双数据集场景全景模式拖拽画面时扭曲抖动特别厉害,猜测是因为boundingbox非常大导致skybox非常大?
  196. viewer.images360.cube.scale : 22692.381042028544, y: 1525345.1015381122, z: 7.563655000000001,
  197. xyz改为一样 ,后不抖动了, 但是旋转时会有黑影闪现。
  198. far增大, 黑影消失, 但是能看到贴图水平或垂直有一条白线
  199. 把位置放到相机的位置后 就正常了!
  200. 综上猜测是精度问题?所以最好是居中于相机的正方体?可过渡怎么办
  201. http://localhost:8080/index.html?m=t-OdiKZBDVL0#/data
  202. 但是这样bump时几乎没有移动,左右bump不可能用fov
  203. 结论:修改了updateCube函数
  204. 2022-03-23
  205. 四个屏的mainview中的reticule位置改变特别慢(intersect是错的)
  206. ·四个屏都这个也一样 把beforeRender去掉也是 但是双屏不会
  207. ·左上角 右下角屏也会了?!
  208. ·在多个屏交替hover久一点就会明显 像卡顿
  209. ·如果mianView以外的都active = false 就正常。只要放出一个,就不正常
  210. ·如果地图的noPointcloud没有一开始设置为false,双屏也会! 所以和点云渲染有关
  211. ·如果没有hover到别的viewport就正常
  212. ·会不会是nodes的切换问题
  213. ·加了这句就行了Potree.updatePointClouds
  214. ·3.31发现bug又出现了了, 是因为修改了四个屏幕的点云质量,要在pick前执行一下beforeRender
  215. 子问题:为什么pick截图保存到的是一整张图?而我自己改成pickState.renderTarget.scissor 这种绘制的就不会,但是清除也只清除当前区域了。
  216. ·发现是因为之前绘制的没被清除,只有改变了画面才会清除。可是已经clear了呀。(猜测是因为这个关系所以会互相影响)
  217. ·把clear提前到scissor之前就和原代码效果一致了
  218. ·但是改好了这个还是会,而且即便只刷新要读取的区域,也不影响才对。
  219. 2022-03-22
  220. 为什么到另一个数据集cursor不准确。因为数据集不在000吗
  221. ·单个数据集校准后也会,可能因为没更新node的matrixWorld(所以要在Alignment中就实时更新)
  222. 见:node.sceneNode.matrixWorld.multiplyMatrices(pointcloud.matrixWorld, node.sceneNode.matrix);
  223. ·方向就也不对
  224. ·是reticule的normal乘错了矩阵
  225. 2022-03-18
  226. 出现过marker无法松开的情况(加载的数据),但是再选中房间又可以了
  227. ·是dropMarker时 因为有相同点 return continueDrag了
  228. ·数据里竟然有五个点,后两个相同。应该是添加时没删除
  229. ·是绘制完前删最后一个点后没有发送update
  230. 2022-03-03
  231. 有时候加载全景图一直loading。
  232. ·六张512的有一张未打印出加载成功(但实际在网络里查看是加载了的,tileDownloader也有值),然后就去加载更高分辨率去了,没发送成功。
  233. ·没通知成功的原因是uploadTile那张512时已经加载好了子集1024,就跳过了。
  234. ·原来是预加载的dir写错了。但是只是预加载的话大概率不会发生此bug而已。
  235. ·但万一先关闭了全景,在一个没有预加载的点位上打开全景,就可能发生bug
  236. ·问题的关键在于4dkk一定先uploadTile低分辨率的,而这里乱序了
  237. ·发现失败的原因是forceQueue 512的加载太慢了,为什么不是一开始就有6个呢,不到6个就没了然后就下载1024去了。难道4dkk不会吗
  238. ·是先开始下载的512,但是1024的先下载完毕。
  239. ·4dkk 也可能因为uploadTile失败,而不发送完成消息,通常都是1024的。
  240. forceQueue在tiledownloader和panorenderer都有。
  241. forceQueue 的应该就是优先下载的吧,按理说一定要先下载完才能下载后面的在
  242. 在panoRenderer中 uploadQueues 是候补队列 ,在tileDownloader里priorityQueue是候补队列
  243. tiledownloader下载完成会触发tiledownloader开始uploadTile.
  244. ·试不出来为什么4dkk会先下载完512了。改个代码,确保512的都下载完后才能下载其他的。修改了tileDownloader的processQueueForDownloading
  245. --更早前:
  246. 关于测量线截图1024时常get不到的情况:(奇怪为什么之前不会这样?)
  247. 原因: uploadTile中,如果某个tile的子集(如1024的子集是四个2048)已经加载好了,那么该tile就不会触发加载,也就不会发送加载成功的消息。
  248. 所以最好还是只请求加载512.除非首次加载就请求高分辨率。(是不是我写漏了啥?因为4dkk 飞进去不会)
  249. 4dkk中也可能不一定发送1024的完成信息
  250. 2022-03-02
  251. 初始画面还是会转一下 t-1aw99jhDgB#/setup 在未设置过初始画面的场景才会
  252. ·又好像是某些角度会算错。
  253. ·原来是set rotation(rotation)函数有问题,没有考虑到y也有值。
  254. 触屏放大镜里的点云为何那么大???
  255. ·只要一转为触屏就这样 pointsize和什么有关,会重新计算吗
  256. ·自适应时的触屏devicePixelRatio是2!!
  257. ·shader中计算pointsize时最关键的参数是uScreenHeight。由于我在渲染屏幕点云时乘了devicePixelRatio,所以无论devicePixelRatio多少看起来都一样大;但是放大镜也被乘了devicePixelRatio,所以放大了。它的devicePixelRatio应该永远为1
  258. ·考虑修改uScreenHeight为resolution2.y , 并取消乘以devicePixelRatio
  259. 低质量点云测量怎么点不上?
  260. ·e.intersectPoint 居然没有
  261. ·好像是因为改了shader后resolution没赋值,都是0,而电脑会给一个最小pointsize,手机可能更小吧? 所以pick不出。赋值就ok了
  262. 2022-03-01
  263. (测量-移动端)移动端无法进行测量,无法确定测量起点
  264. ·该手机iphone7plus 竟然加载了两个点云! 但是本地版却不会。 等中午重新发布后看看。
  265. ·发现spacing有误 中心点 boundsize有误 但数据集id没错。刷新缓存或许可以。 或许是cloud.js是旧的?
  266. ·清除缓存后正正常了。因为重算了场景,所有点云数据会修改。 加个后缀
  267. 2022-02-25
  268. 关于 丽篮电脑和我的手机t-FhDWmV5xur场景在海拔模式下 某个漫游点刚进入场景全景图有一面(立方体中的一面)亮度超高的bug:
  269. ·只有带了token才会 或许是因为token占用了什么时间?
  270. https://uat-laser.4dkankan.com/uat/index.html?m=t-FhDWmV5xur&lang=zh&token=eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxODgxOTI3MjIwOCIsInVzZXJOYW1lIjoiMTg4MTkyNzIyMDgiLCJpYXQiOjE2NDU3NTI0MzYsImp0aSI6IjYwYTJiYjlhLTIyN2MtNGVhMi1iNWFkLWZhODIwMDk3ZDU3MSJ9.mlUUeIyPVYLGqeLGuu_gZzkDwotpgb_704BNe2kPlPY#/
  271. 开头多了DevTools 无法加载来源映射:无法加载 webpack:///spug/spug_api/repos/29_1660_20220224180315/node_modules/mitt/dist/mitt.mjs.map 的内容:HTTP 错误:状态代码 404,net::ERR_UNKNOWN_URL_SCHEME 等打印
  272. ·发现此场景的部分漫游点的id和originID不一致。 且原4dkk场景漫游点id从0-24(但少一个18), 而此激光场景缺少了originId为0 的点。
  273. 对应:
  274. id originID
  275. 0 -- 19 (多了一个19,正确应该是0。故而贴图错误)
  276. 18 -- 19 (对的)
  277. 19 -- 20
  278. 20 -- 21
  279. 21 -- 22
  280. 22 -- 23
  281. 23 -- 24
  282. 刷新id又正常了???
  283. 手机上看不发白了(电量原因吗) 手动改data[0].file_id = '00019' 也不发白
  284. 手机加了test就可以,不加就会有问题。
  285. 我发现和海拔没有关系,只和透明度有关系。只要透明度不是1,刷新就会这样(所以之前的海拔是错误信息,为什么我没自己验证一下呜呜)
  286. 奇怪后面怎么没记录了?是不是被覆盖了?解决方案好像是在potreeRenderer里加了 gl.disable(gl.BLEND) 等 恢复为不透明
  287. 2022-02-24
  288. 关于iphone测试机旋转屏幕or点击小地图后mainViewer setSize导致webgl context lost 的bug:
  289. ·修改canvas.width height就会
  290. ·不渲染的话不会。
  291. ·仅显示地图、隐藏场景才会
  292. pRenderer.clearTargets(params); pRenderer.render(params); 这两句去掉就不会
  293. 第二句主要是执行到点云渲染 renderOctree
  294. setSize后重新渲染的时候才会崩溃,也就是延迟多久渲染就延迟多久崩溃
  295. ·直接把this.rtEDL.setSize去除居然不崩。但如果默认设置DepthTexture宽高不为undefined or 0 或和rtEDL大小不一样,也会崩。 延迟resize也不行,所以应该是大小不匹配的问题。
  296. 结论:无解了,直接去掉rtEDL吧。反正崩溃的手机刚好EXT_frag_depth不可用,所以用不到rtEDL
  297. 关于iphone离开网页一段时间后再回来,重启(or显示内存不足)的bug:
  298. ·隧道。。第一次测会,第二次就不会了奇怪。。。(但有时候打开是报网络错误)
  299. ·我的手机是可能白屏(清除缓存后不会了)
  300. ·微信会(可能是应用问题,因为应用也容易关闭)
  301. ·无解
  302. 2022-02-23
  303. 关于iphone测试机创建不了potree中的program:
  304. ·t-6UoYGXbWhi 这个场景(最不容易崩溃 只有一个pano)的无此问题
  305. ·即使把mapViewer禁止渲染,使potree的program是第一个创建的program也不行
  306. ·有一个场景有时候可以打开 https://uat-laser.4dkankan.com/uat/index.html?m=t-6UoYGXbWhi
  307. ·和点位无关,删除全部点也不行
  308. ·不渲染点云,只创建three.js中的program也失败
  309. ·binaryLoader中load(node){ 不加载点云也失败
  310. ·延迟start也不行
  311. ·在开始创建gl的时候获取是可以的! 但在循环渲染时,到刚开始渲染点云之前为false(怎么知道要渲染了?)
  312. 好像不是edl渲染才报错的。 是在此之前有其他的东西报错了
  313. 是这个。。。this.shadowMap = new PointCloudSM(this.viewer.pRenderer);