Does Cesium support custom shader?

Like this one, can we set custom shader to primitive?

How far does Cesium support of WebGL?

In fact, is there any chance to combine Cesium with other platform like three.js or babylon.js?

Thank you

Cesium does support custom shaders and materials. Although there are less examples/documentation on it because it’s less commonly used. There’s some good examples in this unofficial repository:

https://github.com/cesiumlab/cesium-custom-primitive

This thread also some good resources:

https://groups.google.com/d/msg/cesium-dev/gjjd9TNeY2A/_25xEjQ6AQAJ

There’s been some experiments rendering Threejs and Cesium in the same scene but they’re incomplete:

https://cesium.com/blog/2017/10/23/integrating-cesium-with-threejs/

I’ve been wanting to see 3D Tiles in Threejs just to see what kind of applications would make use of that ecosystem. Is there something specific you’re trying to do with Cesium/custom shaders here?

Hello Omar

Here in China, our customers are most often keen on very ‘cool’ appearance of delivered goods.

Like these:

微信图片_20190329143307.png

微信图片_20190329143315.png

And with all due respect, Cesium is a very good WebGIS platform, but three.js or babylon.js is better making those scenes.Let’s say we all have our own field of expertise.

So I need to build a scene of large scale of GIS data, buildings,roads, etc.maybe even BIM data, in a good looking way.

glTF is a possible solution, do hard work off line, just show models online, and keep all lights, shadows, animates. Still cost too much to load and render online, especially in massive numbers.So I definitely hope that 3d tiles could be more powerful

In conclude, I hope that Cesium could perhaps have a light and physical system, support more materials maybe PBR, and make big effort on Style and Symbol.

Thank you.

在 2019年3月29日星期五 UTC+8上午2:41:35,Omar Shehata写道:

1 Like

Thanks for sharing your thoughts Karl. I definitely agree with you. Those screenshots definitely look very cool!

The goal of 3D Tiles as a format is to make it easy and fast to stream and render massive GIS data. Cesium does actually support PBR on 3D models:

https://cesiumjs.org/Cesium/Build/Apps/Sandcastle/?src=Physically-Based%20Materials.html&label=All

So I think a b3dm could use it right out of the box, but it would be harder to do the effects you’ve shown without modifying the source a bit.

I do know iTowns is a 3D Tiles viewer that’s based on Threejs:

http://www.itowns-project.org

I haven’t used it personally so I don’t know how feature-complete it is, but if you do, I’d be curious to hear what your experience is with it.

Have you solved your problem in cesium?

在 2019年3月28日星期四 UTC+8下午6:41:01,Karl Tian写道: