日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Cesium介绍

發布時間:2024/1/18 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Cesium介绍 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、背景

在許多虛擬地理空間應用的實現中,Cesium是一個很有用的WebGL圖形庫。學習如何解釋CSS文件保證它準確呈現3D場景是一個重要的知識,因此本文提供了Cesium源代碼的指導和說明。

  • Cesium文件和組件
  • 初始化WebGL
  • 渲染流水線
  • 資源優化
  • 最佳實踐
  • 2、Cesium文件和組件

    Cesium是一個開源的跨平臺的3D地圖庫,允許您以不同的方式顯示可視化內容。它有一些文件和組件,用來幫助構建和顯示數據和地理信息。

    ????????Cesium支持各種文件格式,常見格式有KML、COLLADA、TMS和GeoJSON,它也支持跨平臺服務如ArcGIS MapServer、OGC WMS、Geoserver等。

    ????????Cesium有一系列可擴展的組件,如 3D 地形和圖像圖,3D 城市模型,時間控制,導航功能,3D 覆蓋物,三維海洋環境等。它也支持用戶附加任何 Javascript 代碼作為組件,以組合多個組件形成一個完整的 Cesium 應用。

    3、初始化Cesium中的WebGL

    讓我們看看如何在Cesium中初始化 WebGL:

  • 為了使用Cesium,首先需要引入Cesium.js文件:

    <script src="Cesium.js"></script>
  • 然后,必須提供一個網頁上用于渲染3D內容的 HTML 標簽:

    <div id="cesiumContainer"></div>
  • 最后,可以在?cesiumContainer?中創建 Cesium 實例來創建 WebGL:

    var viewer = new Cesium.Viewer('cesiumContainer');
  • 這就完成了 WebGL 的初始化。?

    4、流水線渲染

    Cesium中的流水線渲染是一種在 3D 場景中構建具有逼真效果的低延遲圖形數據處理系統。它使用從輸入到輸出的各種處理環節 (stages),從而可以根據硬件條件提供最佳的可用性和呈現。

    Cesium 的流水線渲染使用了大量的頂點和片元處理 (vertex and fragment shaders)、幾何形狀和裁剪的語義,模板測試 (stencil test)、不同的材料屬性 (material attributes)、光學和動畫效果 (optical and animation effects) 等處理步驟。

    它使用一些常用的途徑來極大地提高性能,如著色緩沖 (color-buffer)、深度緩沖 (depth-buffer)、模板緩沖 (stencil-buffer)、紋理緩沖 (texture-buffer) 和顯卡緩沖 (GPU-buffer)。

    此外,Cesium 還包括一個實時著色器,可以快速地渲染出包含復雜可見物體的實時場景

    5、資源優化?

  • 清理3D模型:減少不必要的復雜度,比如降低貼圖采樣次數,刪除冗余面片等。

  • 調低Cesium插件幀率:將動畫、天氣場景改為快速模式或者關閉它們,避免多余的CPU消耗。

  • 多靈活使用dem:dem在計算tiles對低高度區域產生generateTerrainHighness這種影響之前,可以先將更加高的dem解析并且存入geojson中。

  • 縮小載入范圍:可以在載入cesium地圖時,采用LOD(Level of Detail)方法只載入當前顯示級別的tile。

  • 6、最佳實踐?

  • 優先使用向量地圖進行操作,而不是使用柵格數據:如果操作包括繪制、編輯和查詢,那么向量地圖就會比柵格地圖更好。向量地圖更便于編輯和繪制,并且可以送至表達式,以處理查詢操作。

  • 避免使用 geographic 和 Cartesian 這兩個坐標系:使用 WGS84 的坐標系進行繪制,然后將其轉換為模型的局部坐標系,這將幫助減少數據映射和操作時精度損失。

  • 優先使用靜態原生數據格式:GLTF 格式尤其有益于構建高性能地圖,因為它不需要額外的編碼/解碼步驟。

  • 使用 AO-優化的材質:將 ambiet Occlusion 高級功能啟用在 Obj 或 FBX 對象上將提升地圖對象的細節水平。

  • 使用 CVT-Triangulations :CVT分割技術可以在保留細節的情況下細分圖塊,從而提升地圖的性能。

  • 使用 Shader 著色器:HLSL Shader 著色器可以實現一系列的功能,并大大提升 Cesium 集成功能的性能。

  • 總結

    以上是生活随笔為你收集整理的Cesium介绍的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。