首页 / Cesium / 使用示例
进入建筑内部
从外面看是一栋楼,走进去才是空间。室内视角的关键不在相机,而在模型内表面是否可见。
源码与运行效果
这个示例在做什么
相机直接落在建筑内部,看到的是内壁、地板与天花板。模型材质被设为双面渲染, 所以从里面看墙面不会「消失」。
进入室内浏览有几个必要条件:模型的内表面可见(双面材质或法向朝内)、 相机高度在楼层之间、近裁面不会把墙面切掉。若模型是单面的, 从内部看会穿模,看到外部场景。
关键接口
| 接口 | 作用 |
|---|---|
material.doubleSided | glTF 材质双面渲染,内壁可见的关键 |
camera.flyTo 的 destination | 把相机放到室内坐标 |
camera.frustum.near | 近裁面过大时贴墙会看到空洞 |
scene.screenSpaceCameraController | 室内建议限制最小缩放距离 |
可以直接改的地方
| 位置 | 改什么 | 效果 |
|---|---|---|
fromDegrees(..., 4) | 改成 10 | 相机升到更高的楼层 |
heading: 35° | 改成 180° | 转向对面的墙 |
boxGlb(26, 14, 20, …) | 改尺寸 | 房间更大,视野更开 |
doubleSided: true | 改成 false | 内壁穿透,验证双面的作用 |
替代说明:官方示例加载带室内结构的 ion 建筑模型,用第一人称视角漫游。 这里用代码生成的封闭盒体替代,房间比例与相机高度可按需求调整。