OWMap FWL1 幻想地图渲染架构解析:分层双引擎策略
OWMap FWL1 幻想地图渲染架构解析:分层双引擎策略
OWMap 今日正式公布 FWL1 幻想世界模块的渲染技术架构方案。经过对多种 Web 3D 渲染方案的全面评估,FWL1 确定采用「分层双引擎」策略,平衡渲染质量与性能表现。
幻想地图渲染的特殊性
与 BSL1 真实地球渲染不同,幻想地图渲染面临独特的挑战:坐标系不固定(WGS84 转换为任意 2D 平面坐标)、底图来源于艺术创作、视觉风格需支持多主题切换(羊皮纸、魔法水晶、赛博大陆等)。这些差异决定了无法直接复用 BSL1 的 Three.js 球体渲染方案。
分层双引擎架构
第一层:MapLibre GL JS — 地理数据渲染主引擎
MapLibre GL JS 是 Mapbox GL JS 的开源分支,专为高性能矢量地图渲染设计。FWL1 选择它作为主引擎,理由包括:原生支持矢量瓦片(MVT)和 GeoJSON 数据源,内置 LOD 管理和瓦片流式加载,GPU 加速的矢量渲染性能极佳,且正在积极推进 WebGPU 支持。
在幻想坐标系适配方面,FWL1 将归一化坐标系([-1,1]×[-1,1])映射到 MapLibre 的经纬度范围,所有幻想世界矢量数据以映射后的「伪经纬度」值存储,实现无需球面投影的平面展示。
第二层:Three.js / WebGPU — 视觉特效增强引擎
Three.js 承担叙事触发时的视觉特效(光晕、粒子、过渡动画)、Premium 品质的地图渲染增强(高端光影、地形纹理)、以及全球视图模式(类 BSL1 的 3D 球体外观)。与 BSL1 已用的 Three.js 技术栈统一,最大化代码和知识复用。
主题系统与视觉风格
FWL1 的地图视觉风格通过「主题(Theme)」系统管理。首期提供五个平台级主题:「羊皮纸手绘」(Parchment & Ink)作为默认主题,模拟中世纪手绘地图风格;「魔法水晶」(Crystal & Arcane)以深色为底发光线条勾勒地理结构;「古典墨迹」模拟 18-19 世纪铜版印刷风格;「赛博大陆」呈现霓虹赛博朋克美学;「自然水彩」模拟高品质水彩手绘效果。
性能优化体系
FWL1 定义三个渲染品质等级:Standard 面向中低端移动设备,使用 WebGL 1.0/2.0 和简化着色器;Enhanced 面向高端移动设备和中端 PC,开启完整特效和动态光影;Premium 面向高端 PC 和 WebGPU 支持浏览器,实现全特效和后处理。系统自动检测设备能力选择对应等级,用户也可手动调整。
加载时间目标方面,FWL1 子层首次打开的可交互时间目标为 ≤3 秒(4G 网络),时代切换响应时间 ≤500ms,FCN 叙事卡片弹出时间 ≤200ms。
精品舱计划(中长期)
作为可选的高端体验,FWL1 规划在中期引入 Unity WebGL 精品舱,以 iframe 嵌入形式提供 URP 渲染管线的高端视觉体验,包括古地图光照系统、3D 地形起伏、Gerstner Wave 水波模拟和 VFX Graph 粒子叙事系统。这也为未来原生 App 版本奠定技术基础。