Low-opacity portions of billboard only show older geometry behind it, partial solution

88 views
Skip to first unread message

Ryan Littlefield

unread,
Aug 20, 2014, 9:37:58 PM8/20/14
to cesiu...@googlegroups.com
I've got a great looking billboard with a semi-transparent background from a PNG. I have it render above the earth enough to draw a few polylines and spheres, which look good underneath. The positioning of the billboard is fine. The problem happens as soon as I try to add new geometry (sphere or polyline collection) underneath the billboard. All new polyline collections and spheres are only displayed until they go under the billboard.

Because my billboards are only going to be shown for 10 seconds or less, I have temporarily solved this problem by keeping a pool of empty polyline collections that are added to the scene when first created. When I actually need to draw a polyline, I just use one of the existing collections instead of making a new one (which would end up being created after the billboard, and therefore problematic). Perhaps this is the best way to do it anyhow, but it seems like it may be a bug with the billboard opacity handling. For example, it would be harder to maintain a pool of unused polyline collections large enough to keep the billboard shown for half an hour. Any thoughts?

Matthew Amato

unread,
Aug 21, 2014, 2:23:54 PM8/21/14
to cesiu...@googlegroups.com
Can you share example code that reproduces the issue (preferably something that can just be copied/pasted into Sandcastle and ran)?  It may be a bug.


On Wed, Aug 20, 2014 at 5:37 PM, Ryan Littlefield <king...@gmail.com> wrote:
I've got a great looking billboard with a semi-transparent background from a PNG. I have it render above the earth enough to draw a few polylines and spheres, which look good underneath. The positioning of the billboard is fine. The problem happens as soon as I try to add new geometry (sphere or polyline collection) underneath the billboard. All new polyline collections and spheres are only displayed until they go under the billboard.

Because my billboards are only going to be shown for 10 seconds or less, I have temporarily solved this problem by keeping a pool of empty polyline collections that are added to the scene when first created. When I actually need to draw a polyline, I just use one of the existing collections instead of making a new one (which would end up being created after the billboard, and therefore problematic). Perhaps this is the best way to do it anyhow, but it seems like it may be a bug with the billboard opacity handling. For example, it would be harder to maintain a pool of unused polyline collections large enough to keep the billboard shown for half an hour. Any thoughts?

--
You received this message because you are subscribed to the Google Groups "cesium-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cesium-dev+...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Ryan Littlefield

unread,
Aug 21, 2014, 4:37:44 PM8/21/14
to cesiu...@googlegroups.com
Sure: https://gist.github.com/rlittlefield/e7ee65ccf3f103fcc78d

If you paste that into the Sandcastle, it should draw the Cesium logo, and provide two dropdown options, one for each polyline. One polyline is rendered into a polyline collection that was created and added to the primitives before the billboard, and the other is rendered into a polyline collection added after the billboard.

Matthew Amato

unread,
Sep 15, 2014, 7:46:01 PM9/15/14
to cesiu...@googlegroups.com
Sorry for never closing the loop on this.  I've submitted #2130 (https://github.com/AnalyticalGraphicsInc/cesium/issues/2130) so this can get addressed.

Matthew Amato

unread,
Sep 15, 2014, 7:46:24 PM9/15/14
to cesiu...@googlegroups.com
And thanks for the example code.

Patrick Cozzi

unread,
Jan 26, 2017, 8:05:56 PM1/26/17
to cesium-dev
Ryan,

Thanks again for report and code example.  Dan fixed this in #4886.  It will be in the Cesium 1.30 release next Tuesday, February 1.

Patrick
To unsubscribe from this group and stop receiving emails from it, send an email to cesium-dev+unsubscribe@googlegroups.com.

Ryan

unread,
Jan 26, 2017, 8:57:11 PM1/26/17
to cesiu...@googlegroups.com
Thank you!

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/_RSvkl1M9d8/unsubscribe.
To unsubscribe from this group and all its topics, send an email to cesium-dev+...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages