potree / PotreeDesktop

Desktop version of Potree
Other
168 stars 48 forks source link

RangeError: Source is too large #29

Open Bzucko opened 3 years ago

Bzucko commented 3 years ago

Hi,

I am getting error "RangeError: Source is too large" when orbiting and zooming out few tens seconds after loading pointcloud file and adding few measurements(distance, height,..). I can record video if necessary, it is reproducible. Info about pointcloud on screenshot. Potree desktop 1.8, Win10 Ent. LTSC 2019 64bit, Nvidia rtx 2060 super, driver 466.77 Thanks for help. potreeError pointcloud

midnight-dev commented 3 years ago

Haven't used Desktop, so I won't be much help. Sorry in advance.

Can you take a look at the console? You should be able to bring up the dev tools by using the window menu. There could be some (useful?) warnings/errors that precede the fatal error. From the message and context, it's a given that something is too large. Looks like a typed array getting stuffed into a buffer. It's possible that the JS is choking somewhere. Have you tried replicating this with the task manager open to see what is going on with your RAM and GPU VRAM? If you see it growing close to the maximum right before a crash then it would come down to a hardware limitation.

However, I could also see there being a memory constraint on the v8 engine that runs node/electron. I'm not sure how you'd go about testing that specifically or modifying internal settings.

Does this same error occur if you convert the point cloud with the standalone converter and then use just the core Potree project to render it? And I guess it's worth testing whether this happens with converter version 1.x or 2.x, assuming your point cloud can be converted with both.

If you happen to find a direct cause or a solution, please add a detailed follow-up comment. It could help others in the future who search for similar problems.

Bzucko commented 3 years ago

Electron console is showing the same error info. I figured out that issue is caused by constantly increasing memory consumption on electron.exe process. When one of that process reaches ~ 1460MB, potree crashes. I am often using min node size: 0 and then RAM usage is climbing faster. With value 200/400 it takes longer to reach some limit. GPU VRAM usage is constant. -this is using converter 2.x potreeErrorTaskManagre

If I convert pointcloud using 1.x version, then RAM usage is constant ~546MB even after several minutes of orbiting/flying through pointcloud. I will test Potree core later if it is causing same RAM raising consumption when using 2.x converter.