改bug的历史.txt 8.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199
  1. 2022-03-23
  2. 四个屏的mainview中的reticule位置改变特别慢(intersect是错的)
  3. ·四个屏都这个也一样 把beforeRender去掉也是 但是双屏不会
  4. ·左上角 右下角屏也会了?!
  5. ·在多个屏交替hover久一点就会明显 像卡顿
  6. ·如果mianView以外的都active = false 就正常。只要放出一个,就不正常
  7. ·如果地图的noPointcloud没有一开始设置为false,双屏也会! 所以和点云渲染有关
  8. ·如果没有hover到别的viewport就正常
  9. ·会不会是nodes的切换问题
  10. ·加了这句就行了Potree.updatePointClouds
  11. 子问题:为什么pick截图保存到的是一整张图?而我自己改成pickState.renderTarget.scissor 这种绘制的就不会,但是清除也只清除当前区域了。
  12. ·发现是因为之前绘制的没被清除,只有改变了画面才会清除。可是已经clear了呀。(猜测是因为这个关系所以会互相影响)
  13. ·把clear提前到scissor之前就和原代码效果一致了
  14. ·但是改好了这个还是会,而且即便只刷新要读取的区域,也不影响才对。
  15. 2022-03-22
  16. 为什么到另一个数据集cursor不准确。因为数据集不在000吗
  17. ·单个数据集校准后也会,可能因为没更新node的matrixWorld(所以要在Alignment中就实时更新)
  18. 见:node.sceneNode.matrixWorld.multiplyMatrices(pointcloud.matrixWorld, node.sceneNode.matrix);
  19. ·方向就也不对
  20. ·是reticule的normal乘错了矩阵
  21. 2022-03-18
  22. 出现过marker无法松开的情况(加载的数据),但是再选中房间又可以了
  23. ·是dropMarker时 因为有相同点 return continueDrag了
  24. ·数据里竟然有五个点,后两个相同。应该是添加时没删除
  25. ·是绘制完前删最后一个点后没有发送update
  26. 2022-03-03
  27. 有时候加载全景图一直loading。
  28. ·六张512的有一张未打印出加载成功(但实际在网络里查看是加载了的,tileDownloader也有值),然后就去加载更高分辨率去了,没发送成功。
  29. ·没通知成功的原因是uploadTile那张512时已经加载好了子集1024,就跳过了。
  30. ·原来是预加载的dir写错了。但是只是预加载的话大概率不会发生此bug而已。
  31. ·但万一先关闭了全景,在一个没有预加载的点位上打开全景,就可能发生bug
  32. ·问题的关键在于4dkk一定先uploadTile低分辨率的,而这里乱序了
  33. ·发现失败的原因是forceQueue 512的加载太慢了,为什么不是一开始就有6个呢,不到6个就没了然后就下载1024去了。难道4dkk不会吗
  34. ·是先开始下载的512,但是1024的先下载完毕。
  35. ·4dkk 也可能因为uploadTile失败,而不发送完成消息,通常都是1024的。
  36. forceQueue在tiledownloader和panorenderer都有。
  37. forceQueue 的应该就是优先下载的吧,按理说一定要先下载完才能下载后面的在
  38. 在panoRenderer中 uploadQueues 是候补队列 ,在tileDownloader里priorityQueue是候补队列
  39. tiledownloader下载完成会触发tiledownloader开始uploadTile.
  40. ·试不出来为什么4dkk会先下载完512了。改个代码,确保512的都下载完后才能下载其他的。修改了tileDownloader的processQueueForDownloading
  41. --更早前:
  42. 关于测量线截图1024时常get不到的情况:(奇怪为什么之前不会这样?)
  43. 原因: uploadTile中,如果某个tile的子集(如1024的子集是四个2048)已经加载好了,那么该tile就不会触发加载,也就不会发送加载成功的消息。
  44. 所以最好还是只请求加载512.除非首次加载就请求高分辨率。(是不是我写漏了啥?因为4dkk 飞进去不会)
  45. 4dkk中也可能不一定发送1024的完成信息
  46. 2022-03-02
  47. 初始画面还是会转一下 t-1aw99jhDgB#/setup 在未设置过初始画面的场景才会
  48. ·又好像是某些角度会算错。
  49. ·原来是set rotation(rotation)函数有问题,没有考虑到y也有值。
  50. 触屏放大镜里的点云为何那么大???
  51. ·只要一转为触屏就这样 pointsize和什么有关,会重新计算吗
  52. ·自适应时的触屏devicePixelRatio是2!!
  53. ·shader中计算pointsize时最关键的参数是uScreenHeight。由于我在渲染屏幕点云时乘了devicePixelRatio,所以无论devicePixelRatio多少看起来都一样大;但是放大镜也被乘了devicePixelRatio,所以放大了。它的devicePixelRatio应该永远为1
  54. ·考虑修改uScreenHeight为resolution2.y , 并取消乘以devicePixelRatio
  55. 低质量点云测量怎么点不上?
  56. ·e.intersectPoint 居然没有
  57. ·好像是因为改了shader后resolution没赋值,都是0,而电脑会给一个最小pointsize,手机可能更小吧? 所以pick不出。赋值就ok了
  58. 2022-03-01
  59. (测量-移动端)移动端无法进行测量,无法确定测量起点
  60. ·该手机iphone7plus 竟然加载了两个点云! 但是本地版却不会。 等中午重新发布后看看。
  61. ·发现spacing有误 中心点 boundsize有误 但数据集id没错。刷新缓存或许可以。 或许是cloud.js是旧的?
  62. ·清除缓存后正正常了。因为重算了场景,所有点云数据会修改。 加个后缀
  63. 2022-02-25
  64. 关于 丽篮电脑和我的手机t-FhDWmV5xur场景在海拔模式下 某个漫游点刚进入场景全景图有一面(立方体中的一面)亮度超高的bug:
  65. ·只有带了token才会 或许是因为token占用了什么时间?
  66. https://uat-laser.4dkankan.com/uat/index.html?m=t-FhDWmV5xur&lang=zh&token=eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxODgxOTI3MjIwOCIsInVzZXJOYW1lIjoiMTg4MTkyNzIyMDgiLCJpYXQiOjE2NDU3NTI0MzYsImp0aSI6IjYwYTJiYjlhLTIyN2MtNGVhMi1iNWFkLWZhODIwMDk3ZDU3MSJ9.mlUUeIyPVYLGqeLGuu_gZzkDwotpgb_704BNe2kPlPY#/
  67. 开头多了DevTools 无法加载来源映射:无法加载 webpack:///spug/spug_api/repos/29_1660_20220224180315/node_modules/mitt/dist/mitt.mjs.map 的内容:HTTP 错误:状态代码 404,net::ERR_UNKNOWN_URL_SCHEME 等打印
  68. ·发现此场景的部分漫游点的id和originID不一致。 且原4dkk场景漫游点id从0-24(但少一个18), 而此激光场景缺少了originId为0 的点。
  69. 对应:
  70. id originID
  71. 0 -- 19 (多了一个19,正确应该是0。故而贴图错误)
  72. 18 -- 19 (对的)
  73. 19 -- 20
  74. 20 -- 21
  75. 21 -- 22
  76. 22 -- 23
  77. 23 -- 24
  78. 刷新id又正常了???
  79. 手机上看不发白了(电量原因吗) 手动改data[0].file_id = '00019' 也不发白
  80. 手机加了test就可以,不加就会有问题。
  81. 我发现和海拔没有关系,只和透明度有关系。只要透明度不是1,刷新就会这样(所以之前的海拔是错误信息,为什么我没自己验证一下呜呜)
  82. 2022-02-24
  83. 关于iphone测试机旋转屏幕or点击小地图后mainViewer setSize导致webgl context lost 的bug:
  84. ·修改canvas.width height就会
  85. ·不渲染的话不会。
  86. ·仅显示地图、隐藏场景才会
  87. pRenderer.clearTargets(params); pRenderer.render(params); 这两句去掉就不会
  88. 第二句主要是执行到点云渲染 renderOctree
  89. setSize后重新渲染的时候才会崩溃,也就是延迟多久渲染就延迟多久崩溃
  90. ·直接把this.rtEDL.setSize去除居然不崩。但如果默认设置DepthTexture宽高不为undefined or 0 或和rtEDL大小不一样,也会崩。 延迟resize也不行,所以应该是大小不匹配的问题。
  91. 结论:无解了,直接去掉rtEDL吧。反正崩溃的手机刚好EXT_frag_depth不可用,所以用不到rtEDL
  92. 关于iphone离开网页一段时间后再回来,重启(or显示内存不足)的bug:
  93. ·隧道。。第一次测会,第二次就不会了奇怪。。。(但有时候打开是报网络错误)
  94. ·我的手机是可能白屏(清除缓存后不会了)
  95. ·微信会(可能是应用问题,因为应用也容易关闭)
  96. ·无解
  97. 2022-02-23
  98. 关于iphone测试机创建不了potree中的program:
  99. ·t-6UoYGXbWhi 这个场景(最不容易崩溃 只有一个pano)的无此问题
  100. ·即使把mapViewer禁止渲染,使potree的program是第一个创建的program也不行
  101. ·有一个场景有时候可以打开 https://uat-laser.4dkankan.com/uat/index.html?m=t-6UoYGXbWhi
  102. ·和点位无关,删除全部点也不行
  103. ·不渲染点云,只创建three.js中的program也失败
  104. ·binaryLoader中load(node){ 不加载点云也失败
  105. ·延迟start也不行
  106. ·在开始创建gl的时候获取是可以的! 但在循环渲染时,到刚开始渲染点云之前为false(怎么知道要渲染了?)
  107. 好像不是edl渲染才报错的。 是在此之前有其他的东西报错了
  108. 是这个。。。this.shadowMap = new PointCloudSM(this.viewer.pRenderer);