
上一篇我們把一整座會昌縣城的傾斜攝影搬進了地球,最后留了這么一句:順手立個 flag:這條 3DTiles 線才剛開頭。#32 是模型壓平(用自定義著色器把傾斜攝影的某一塊壓下去),再往后還有本地 3DTiles 查看器、大雁塔的內置模型。壓平那篇要動的是Cesium3DTileFeature與自定義 shader,跟今天的"調度"完全不是一個層面。兌現(xiàn)的時候到了。不過得先認個錯:我在上一段里猜錯了半個——Cesium3DTileFeature一個字都沒碰。真正干活的,是一個 165 行的Flatten,和它拼出來的一段 GLSL。整件事的思路比"操作要素"粗暴得多,也優(yōu)雅得多:不去模型里找哪些要素要壓,而是在每一幀、每一個頂點上問一句"你在這個多邊形里嗎",在就摁下去。?? 本文涉及的全部代碼均已開源,完整的倉庫地址見文末,可自行取用、隨意魔改。本文目標理解壓平的本質:不刪幾何,改頂點——以及 Cesium 給這條改頂點留的官方入口在哪讀懂那段"世界 → 局部 → 判定 → 改 z → 回世界"的三段坐標往返,每一段用的是哪個矩陣搞清height: -50里的-50到底是以什么為零點(這是本篇最大的坑,實測給出答案)/