It seems the cesium world terrain’s data is not good for my use case. Is there any other alternative heightmap sources I could use (e.g NASA or eesa). If there are, how could I replace cesium world terrain with that new data?
If you have your own data - either global or for just the area you care about - you can upload it to Cesium ion and it will create an asset that you can easily use in Cesium for Unity. If your terrain is local, Cesium ion can layer it on top of Cesium World Terrain so that you get the normal base terrain model outside of your local area.
I mean is there a way for me to make cesium use something like a REST api for terrain data (OpenTopography), not cesium ion.
Using Cesium ion supports Cesium for Unity development, so we appreciate if you don’t dismiss it too quickly. But you can use any terrain source available in the 3D Tiles or quantized-mesh formats.