# First WebGLRenderer.render() with BufferGeometry (multiple buffers) blocks UI

**URL:** <https://discourse.threejs.org/t/first-webglrenderer-render-with-buffergeometry-multiple-buffers-blocks-ui/45382>\
**Category:** Questions\
**Tags:** multithreading\
**Created:** [December 1, 2022, 11:36pm UTC](https://discourse.threejs.org/t/first-webglrenderer-render-with-buffergeometry-multiple-buffers-blocks-ui/45382 "2022-12-01T23:36:34Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![adamias](https://avatars.discourse-cdn.com/v4/letter/a/8dc957/32.png) [@adamias](https://discourse.threejs.org/u/adamias)\
**Post date:** [December 1, 2022, 11:36pm UTC](https://discourse.threejs.org/t/first-webglrenderer-render-with-buffergeometry-multiple-buffers-blocks-ui/45382/1 "2022-12-01T23:36:34Z")

</div>

Hello,

I have a problem with the first render() call after adding Points to the scene. BufferGeometry added to Points might be pretty big (10 additional color and position buffers). In general I do not care much about waiting, but I am unable to use my little app on iPhone since they probably reload the page once it blocks the UI for some time.

What I did: I offloaded geometry creation to Worker (works fine) and I was experimenting with offscreenCanvas, which is also fine, but it is not supported on iOS / Safari so I am kinda hopeless. :x

There is a link to Live demo: [Cloud-points based visualizer](https://adamblack.github.io/point-cloud-demo/dist/client/index.html)  
And to repository: [GitHub - adamblack/point-cloud-visualizer: Point cloud visualizer for images with depth maps and other interesting algorithms](https://github.com/adamblack/point-cloud-visualizer)

It seems to me there might not be a solution unless I completely change my rendering steps, i.e. add Points to scene one by one (fine for i.e. ai\_images scenario) but there are scenarios where I want to use morphBuffers for image morphing (waifus scenario) so I need to do that in one step.

Thank you for any suggestions :]

---

<div class="post-metadata">

**Author:** ![makc3d](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.threejs.org/makc3d/32/10452_2.png) [@makc3d](https://discourse.threejs.org/u/makc3d)\
**Post date:** [December 2, 2022, 7:24am UTC](https://discourse.threejs.org/t/first-webglrenderer-render-with-buffergeometry-multiple-buffers-blocks-ui/45382/2 "2022-12-02T07:24:47Z")

</div>

upload over multiple frames, using [attributes updateRange](https://threejs.org/docs/?q=buff#api/en/core/BufferAttribute.updateRange)?
