Walkthrough of rendering a frame in Cesium

210 views
Skip to first unread message

Patrick Cozzi

unread,
May 14, 2015, 12:28:44 PM5/14/15
to cesiu...@googlegroups.com
Folks,

If you are interested in a deeper understanding of how the Cesium renderer works, we wrote a walkthrough of rendering a frame:


Ryan Walklin

unread,
May 14, 2015, 8:07:26 PM5/14/15
to cesiu...@googlegroups.com
That's great thanks Patrick, very informative.

Do you think there is any scope for threading the renderer stages? At the moment my iOS port is spending approximately equal amounts of time in updatePrimitives() and executeCommands(), and this would be a great optimisation.

Regards,

Ryan

Patrick Cozzi

unread,
May 15, 2015, 10:58:09 AM5/15/15
to cesiu...@googlegroups.com, ryanw...@gmail.com
Yes, scene rendering can be improved with threading.
  • Although not part of the core Scene.render, when we are able to create WebGL resources in web workers, that will offload more of the terrain/imagery/model loading pipeline.
  • When the web has an API like Vulkan, we'll be able to create draw commands on different threads and then use the main thread to dispatch them.  This will require a lighter threading model than what web workers provide today, but I am hopeful that we will see something like this perhaps driven by Vulkan.
In your work on iOS, you could experiment with these ideas today.  If you do, please let us know the results.

Patrick

Ryan Walklin

unread,
May 18, 2015, 6:39:10 AM5/18/15
to cesiu...@googlegroups.com, ryanw...@gmail.com
That's great, thanks Patrick. I'm looking at moving some of the texture and vertex array creation into the background. Longer term I'd like to implement a renderer based on the Metal API, but at the moment I'll stick with OpenGL and focus on library features.

Ryan

Patrick Cozzi

unread,
May 18, 2015, 8:00:49 AM5/18/15
to cesiu...@googlegroups.com
Cool.  The Cesium Renderer should map well to Metal.  The shading language will be most of the work.

Patrick

--
You received this message because you are subscribed to a topic in the Google Groups "cesium-dev" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/cesium-dev/k5AzgWiQrsg/unsubscribe.
To unsubscribe from this group and all its topics, send an email to cesium-dev+...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
Reply all
Reply to author
Forward
0 new messages