# Post processing in Cesium

**URL:** <https://community.cesium.com/t/post-processing-in-cesium/6200>\
**Category:** CesiumJS\
**Created:** [October 30, 2017, 3:43pm UTC](https://community.cesium.com/t/post-processing-in-cesium/6200 "2017-10-30T15:43:26Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![sean\_lilley](https://sea2.discourse-cdn.com/cesium/user_avatar/community.cesium.com/sean_lilley/32/2083_2.png) [@sean\_lilley](https://community.cesium.com/u/sean_lilley)\
**Post date:** [October 30, 2017, 3:43pm UTC](https://community.cesium.com/t/post-processing-in-cesium/6200/1 "2017-10-30T15:43:26Z")

</div>

Hi everyone,

We are starting to build out a post processing framework for Cesium. You may have seen some sneak peeks through our blog or twitter already as we worked on this over the summer.

Below are screenshots of full-screen effects that are supported already (lens flare, depth of field, edge detection, screen-space ambient occlusion).

Our next step is to support post processing on any entity in the scene. Ideally one should be able to select any entity and apply any number of post processing effects to it. Some practical use cases are changing an entity’s color, drawing an outline around it, or having it glow. If you want to emphasize entities from the globe you might apply a saturation filter just to the globe. There are a lot of ideas here and we expect post processing to lead to a big jump in visual quality for Cesium.

If you have ideas for things you would like to see, feel free to discuss here. If you want to follow our progress, check out the roadmap: [https://github.com/AnalyticalGraphicsInc/cesium/pull/5615](https://github.com/AnalyticalGraphicsInc/cesium/pull/5615).

[![](https://lh3.googleusercontent.com/-cw3GH0Ozg8Q/WfdFZi8z9cI/AAAAAAAACQo/yZAJuXD63TMYDJWW1W6xWz-W6d8Rsr3ewCLcBGAs/s320/lens-flare.PNG)](https://lh3.googleusercontent.com/-cw3GH0Ozg8Q/WfdFZi8z9cI/AAAAAAAACQo/yZAJuXD63TMYDJWW1W6xWz-W6d8Rsr3ewCLcBGAs/s1600/lens-flare.PNG)[![](https://lh3.googleusercontent.com/-GLvxrzKCDgM/WfdFWAdl5hI/AAAAAAAACQk/pF20nhEf7x0rduHrCge41Jg3hKHkCfKQQCLcBGAs/s400/dof.png)](https://lh3.googleusercontent.com/-GLvxrzKCDgM/WfdFWAdl5hI/AAAAAAAACQk/pF20nhEf7x0rduHrCge41Jg3hKHkCfKQQCLcBGAs/s1600/dof.png)

[![](https://lh3.googleusercontent.com/-xDjNZVyLH-M/WfdFbsLhlxI/AAAAAAAACQs/ZFnyqMrYQ0sQvTTD60G0m3QvSzU0pV7VACLcBGAs/s320/silhouette.PNG)](https://lh3.googleusercontent.com/-xDjNZVyLH-M/WfdFbsLhlxI/AAAAAAAACQs/ZFnyqMrYQ0sQvTTD60G0m3QvSzU0pV7VACLcBGAs/s1600/silhouette.PNG)[![](https://lh3.googleusercontent.com/-Grd07o3gKTU/WfdFTy5TLlI/AAAAAAAACQg/hqpxg_Z3hGQGv--rkVcS7ZdNR6VA_aEpgCLcBGAs/s400/ao_scaled.png)](https://lh3.googleusercontent.com/-Grd07o3gKTU/WfdFTy5TLlI/AAAAAAAACQg/hqpxg_Z3hGQGv--rkVcS7ZdNR6VA_aEpgCLcBGAs/s1600/ao_scaled.png)

---

<div class="post-metadata">

**Author:** ![sean\_lilley](https://sea2.discourse-cdn.com/cesium/user_avatar/community.cesium.com/sean_lilley/32/2083_2.png) [@sean\_lilley](https://community.cesium.com/u/sean_lilley)\
**Post date:** [October 30, 2017, 3:52pm UTC](https://community.cesium.com/t/post-processing-in-cesium/6200/2 "2017-10-30T15:52:54Z")

</div>

For the roadmap use this link instead: [https://github.com/AnalyticalGraphicsInc/cesium/issues/5808](https://github.com/AnalyticalGraphicsInc/cesium/issues/5808)

The link above points to the current pull request.

---

<div class="post-metadata">

**Author:** ![Isaac\_Besora](https://avatars.discourse-cdn.com/v4/letter/i/8baadc/32.png) [@Isaac\_Besora](https://community.cesium.com/u/Isaac_Besora)\
**Post date:** [November 6, 2017, 1:32pm UTC](https://community.cesium.com/t/post-processing-in-cesium/6200/3 "2017-11-06T13:32:15Z")

</div>

Hi,  
I was trying to implement it to improve the visual quality of our viewer and I did find our meshes, topologically speaking, are not really suitable for it.

I then used the 3d tile found in the 3D Tiles Photogrammetry Sandcastle example and I saw that the same happens. There is a lot of triangle edges that shouldn’t be shaded that are, giving a bad result. I’m attaching some images so you can see it for yourselves.

[![](https://lh3.googleusercontent.com/-JfGcHLsx2hM/WgBj7dRRa5I/AAAAAAAADxI/O-tMFuqZjl4TVrdS_rhQzSAZg-V2pd6qQCLcBGAs/s320/diffuse.PNG)](https://lh3.googleusercontent.com/-JfGcHLsx2hM/WgBj7dRRa5I/AAAAAAAADxI/O-tMFuqZjl4TVrdS_rhQzSAZg-V2pd6qQCLcBGAs/s1600/diffuse.PNG)[![](https://lh3.googleusercontent.com/-wW54PzPwSiQ/WgBjs48P_KI/AAAAAAAADxA/qVoYIr4MzXEFatRD1-VrGHKGOpPkV_5aACLcBGAs/s320/ao.PNG)](https://lh3.googleusercontent.com/-wW54PzPwSiQ/WgBjs48P_KI/AAAAAAAADxA/qVoYIr4MzXEFatRD1-VrGHKGOpPkV_5aACLcBGAs/s1600/ao.PNG)

[![](https://lh3.googleusercontent.com/-Qocn4_r3ukQ/WgBj_-GG-rI/AAAAAAAADxM/jhSgBDRVQsMUxmgoyuDJL5lGT7bEW7rWACLcBGAs/s320/diffuse%252BAO.PNG)](https://lh3.googleusercontent.com/-Qocn4_r3ukQ/WgBj_-GG-rI/AAAAAAAADxM/jhSgBDRVQsMUxmgoyuDJL5lGT7bEW7rWACLcBGAs/s1600/diffuse%252BAO.PNG)

I understand that’s not really a problem with Cesium itself but with the tools used to generate the mesh. Have you had any success using the post processing framework AO on 3dTiles generated from a point cloud?

El dilluns, 30 octubre de 2017 16:43:26 UTC+1, Sean Lilley va escriure:

---

<div class="post-metadata">

**Author:** ![sean\_lilley](https://sea2.discourse-cdn.com/cesium/user_avatar/community.cesium.com/sean_lilley/32/2083_2.png) [@sean\_lilley](https://community.cesium.com/u/sean_lilley)\
**Post date:** [November 7, 2017, 12:34am UTC](https://community.cesium.com/t/post-processing-in-cesium/6200/4 "2017-11-07T00:34:24Z")

</div>

I haven’t tried it on enough tilesets to say, however I figure most of them will look like that. You could try tweaking some of the uniform values in the AO post process and see if it helps.
