卡通画面氛围(2026-10-12)
2026-10-17 暂定后续 Godot 美术以“低多边形体块 + 克制的漫画动作表达 + 温暖的广州街坊光色”为默认设计方向。先在一段可玩街景上统一模型、光色与角色轮廓;密集网点和强烈速度线按动作需要使用,背景避免细碎描线。此项是设计选择,尚不代表新的默认设置或实机画质已修改;具体范围见 Steam Demo v0.1 · 美术默认方向。下文保留既有各版本实现和测量边界。
2026-10-14 增加卡通街景样板:在独立开发场景中对照广州小店、黄袍骑手、行道树与双向车流的材质,性能结果与完整城市分开记录。
实际广州自由骑行的接入、资源边界与跨片区 A/B 方法见广州街区卡通材质接入。
本轮在处理 macOS 转视角残余卡顿、减少预热等待的同时,按维护者明确选择的“更明显的卡通化,强化色块、轮廓与夸张动画”调整画面。方向是保留广州街区、河岸、路牌、骑手制服和既有材质细节,用统一光色、局部色块归并、颜色反差墨线和步行角色的弹性表现加强风格。
性能流程继续遵循游戏性能优化手册。本页记录美术参考与实现边界;主矩阵画面版本的第二轮 A/B已经测量,包含加载收益和新增版本的成本。随后共享 HDR 取消安全补丁已通过专项恢复回归、重新构建、生产功能检查与独立加载/联机补测;本轮指定本机与路径的验收完成,新增画面的计算与显存成本继续保留各自计量边界。
社区参考与来源
以下链接指向创作者仓库、原帖或作品发布者。Opus 型号、一次生成和人工参与程度按作者说明记录,未独立复现其生成过程。参考研究检查了公开材料与相关源码;这些作品的短视频、单机场景和性能声明不能直接证明 GZA 的城市运行性能。
| 参考 | 日期与来源边界 | 提取的设计方法 |
|---|---|---|
| riba2534:鹈鹕骑行源码/试玩 | 作者 README 标注 2026-09,并称使用 Opus 5.5;查询到的仓库最新提交日期为 2026-09-23,提交日期不等于作品首次发布日期 | PBR 材质与协调的昼夜光色;身体起伏、握把与踏板 IK、头部滞后和表情时序。相关位置见角色动画与天空配色 |
| riba2534:QQ 飞车源码/试玩 | 与上项同仓库、同一作者说明;不是独立的模型效果复现 | 将天空、雾、主光、填充光与地面配色作为一套环境设计;地图环境参数提供了可检查的实例 |
| riba2534:运输船源码/试玩 | 作者称同样由 Opus 5.5 生成;本轮只借鉴视觉组织 | 暖主光、冷环境色、曝光与雾的成组变化,增强港口与金属表面的空间层次;见环境实现 |
| 2600th:海洋 demo 原帖/源码 | 原帖 2026-08-07;作者说明 Opus 主要构建、Sol 独立审查,属于协作与迭代作品 | 同步设计太阳、水色、天空、大气透视与天气。它的复杂海洋、体积天空和镜头效果需要单独的资源与 GPU 预算 |
| Scenario:Island Builder | 发布页面未列首次发布日期;2026-10-12 查询。发布者说明原版为 Opus 5.5 配合 Blender 与 Scenario 生成的短片,页面另提供浏览器改编 | 统一色彩与柔和阴影、日夜暖窗光,以及展示 slot 上的压缩、伸展和恢复。浏览器动画源码可检查该表现;离线影片与浏览器运行应分别评价 |
GZA 本轮采用自己的实现,没有复制这些作品的游戏代码、模型、贴图、音乐、短视频或生成的媒体。新增效果使用既有场景与材质,不引入外部素材或新增媒体下载流程。后续如果引入资源,仍执行COS 资源与离线构建中的许可、发布与校验约定。
统一环境光色
白天加强蓝色天空、偏冷的环境填充与暖色太阳之间的关系;黄昏使用紫蓝阴影和橙金高光;夜景保留清楚的蓝色层次,并让暖色灯光形成焦点。建筑、地面、制服、反光和水面仍保留原材质职责,广州的奶油色、青绿与砖红继续作为街景基础。
环境配置集中在游戏的 config/render/environment.ts,避免为某个地标另做互不协调的曝光与色板。时段和天气仍走现有环境插值,不另改规则时钟。主光与填充光的平衡也承担色块塑形作用,不能只用全画面提高饱和度来代替光照设计。
本轮没有通过下调实际缓冲尺寸、MSAA 配置、阴影规格、水面、模型细节或物理频率抵偿新效果,也没有提高已有发布预算。风格改变属于本轮明确要求的画面变化,应保留固定位置、时间和视角的前后图作为后续比较参考。
单次 HDR 呈现中的卡通处理
街区已有的 HDR 呈现继续使用一个屏幕 resolve。中心与八个邻域颜色样本同时用于高光 halo、局部亮度色块归并和颜色反差墨线:
- 邻域位置按真实 framebuffer 像素计算,本轮共用 2 px 范围;此前 halo 使用 5 px 范围,因此高光光晕也变得更紧凑。
- 色块归并由局部颜色反差控制;平滑天空与雾保持连续渐变,材质仍保留颜色和反光细节。
- 颜色反差较大的边界增加墨线式明暗对比。它会响应物体边界,也会响应表面图案;没有深度/法线输入,不能把它描述为完整的几何剪影轮廓系统。
- 深暗部降低墨线影响,避免夜景暗部被压成大片黑色;饱和度、高光和既有暗角在同一 resolve 中处理。
render/presentation.ts 的 GLSL 与 render/webgpuPresentationMaterial.ts 的 TSL 使用相同的样本位置、色块量化、增益限制和墨线阈值。HDR target 保持线性颜色空间,最终 tone mapping 与屏幕颜色转换沿用各后端既有输出路径。prepare 和 render 共用实际 framebuffer 尺寸同步;加载编译使用正确大小的 HDR target,并在完成或失败后恢复调用方 target。
主题调节值集中在环境配置的 PRESENTATION_TOON:
| 时段 | 饱和度系数 | 局部色块归并强度 | 墨线强度 |
|---|---|---|---|
| 白天 | 1.18 | 0.42 | 0.45 |
| 黄昏 | 1.15 | 0.40 | 0.42 |
| 夜间 | 1.10 | 0.25 | 0.34 |
这些是美术调节参数,不是测得的性能收益。共用九个样本只限制取样数量,没有消除新增计算量。主矩阵画面版本已纳入正式测量:本机持续 WebGPU 的世界渲染提交 CPU 中位数 6.9→7.2 ms,约增加 4.3%,对应帧间隔 P99 18.7→18.7 ms。该 CPU 字段排除最终呈现,不是单独量出的墨线 GPU 成本,不能据此声称整帧没有额外工作。
缺少 HDR 浮点 target 支持的 WebGL 继续直接绘制,环境配色仍生效,新的后处理色块与墨线不可用。该兼容边界应在不同设备验收时保留,不能把本机支持的效果外推至所有设备。
剧情阶段的画面预设(2026-10-15)
游戏源码新增 default、everyday、crisis 三种呈现预设;这里记录实现契约,不表示已发布。default 保持上述既有画面基线;everyday 减弱局部色块归并和墨线、缩小取样范围,形成柔和色块与细墨线;crisis 混入固定三档亮度量化、提高对比和墨线强度。三档用于局部亮度归并,不把整幅画面压成三种颜色;天空/雾的连续渐变与深暗部保护继续保留。
三种预设共用原来的单次 HDR resolve 和中心加八邻域的九个颜色样本。GLSL 与 TSL 使用相同公式,通过 uniform 更新倍率、三档量化混合量、对比与取样半径;切换不重建材质或 target,不增加 pass、深度/法线输入或新缓冲。墨线仍来自颜色反差,不是几何剪影描边。没有新增取样或缓冲不等于计算成本为零,既有性能表也不能替代本次预设的实测。
剧情选择器只读取当前模式和已有剧情状态:剧情模式中,outbreakSeen=false 选择 everyday,outbreakSeen=true 选择 crisis,chapterCompleted=true 优先回到 default。仅取得或送达解药不会提前解除危机画面;自由骑行、游览和本地僵尸挑战使用 default,挑战借用街区呈现时也会清除剧情风格。选择与预览均不修改剧情进度、存档或玩法规则。
通常切换用 1.2 秒的 smoothstep 插值;中途换目标从当前值继续,同一目标不会每帧重启过渡。首帧和减少动态效果偏好立即到达目标。预设叠加当前时段的呈现倍率,不改时钟、天气或基础光照;现有日夜与天气变化照常工作。
createPresentation 返回 setStyle(id, duration)、stepStyle(seconds)、resetStyle() 和 inspectStyle()。前两项分别设置目标和按秒推进;重置立即恢复 default,检查返回目标、过渡状态与当前参数副本。开发环境可用 district.html?renderStyle=everyday 预览,也接受 crisis 和 default;window.__DISTRICT_DEBUG__.renderStyle('auto') 取消预览并恢复按模式/剧情自动选择。预览只影响本次页面,不保存为玩家设置。
不支持 HDR 浮点 target 时继续直接绘制,这些后处理预设不会呈现;诊断的 renderStyle.supported=false 明确标记该边界。诊断中的目标值不代表设备已经显示该效果。
本轮验证与未覆盖范围
本次 test:cloud 全量单测 351 文件/2,393 项通过,最终定向单测 6 文件/90 项通过;Web 类型检查、构建、原有包体预算与发布文件校验通过。另用真实 WGSLNodeBuilder 检查生成代码含九次 textureSample 并复用 uniform;这验证 shader 生成和参数更新契约,不等于真实 GPU 设备验收。
桌面构建与发布文件校验通过,但城市合作入口的既有包体门槛仍失败:同条件原 main 为 526,007 字节,本次为 526,796 字节,增加 789 字节(约 0.15%),均超过 524,288 字节门槛。没有提高预算,也不把既有超限隐去或将桌面检查描述为全部通过。
同一云端环境用共享渲染器和现有街区内容搭建轻量固定机位,已实际渲染并检查 WebGL 的日常→危机→默认恢复及夜景。该 Chromium 的 WebGPU 偏好实际回退到 WebGL,因此不能算作 WebGPU 设备验收;固定机位也不代表整城已通过。
云端 Chromium/SwiftShader 的整城自动分辨率尝试及一次 540p 诊断均以 code 9 退出,已停止该路径重试;540p 仅用于诊断,没有改动默认画质或验收门槛。这些结果不能替代实体设备、硬件 GPU、整城视觉或正式性能验收,本次不根据旧版性能表声称预设没有额外帧耗时。
步行角色的夸张动画与所有权
步行显示层增加躯干压缩与伸展、左右摆动、起伏和头部延迟跟随。标量控制器位于 render/presentationMotion.ts,使用解析阻尼响应,限制显示偏移,不按帧率累积修改模拟状态。当前安全上限约为躯干比例 ±11%、侧摆约 7°、起伏 6.5 cm,正常目标较小。头部反向补偿让动作在躯干与头之间错开,并抑制头盔随躯干缩放产生的变形。
district/explorationAvatar.ts 只控制克隆的显示对象。角色根位置、根朝向、腿与脚的原运动、车辆控制、碰撞体和踢击 IK 不由该控制器修改。手臂的展示肩部跟随躯干;货箱继续借用原铰链姿态和共享资源,没有另起规则或货箱动画时钟。
实际街区使用 createCockpit 加 batchCockpit,保留可独立移动的头、表情与头盔。步行时骑行对象可以隐藏,克隆仍显示原来的面部、visor 和可穿戴货箱。装备可见性与材质共享继续同步,卸载只释放步行对象拥有的四肢几何。
完全静态合批的世界骑手是另一种输入:头与表情可能已被合并进无独立名称的网格。控制器检测不到独立头部时,就关闭单独的头部旋转与比例补偿,让头盔跟随烘焙的脸和躯干。这个兼容保护不拆开原合批,不为头部额外增加绘制。
减少动态效果偏好会关闭新增的装饰性弹性,保留原来的步行腿部动作。暂停、模式切换、重新显示、时间倒退、长间隔和瞬移时清除惯性,避免恢复后继承旧动作。固定分段目标的单测验证 30/60/120 Hz 响应一致;连续变化目标仍依赖调用方采样,不能据此声称所有动画轨迹在任何帧率下完全等价。
联机呈现的借用与新增成本
嵌入街区的本地城市挑战借用街区已有的 presentation 与时段,不再嵌套一层 resolve;退出时只归还共享状态。独立联机页面拥有自己的 presentation、HDR target 与释放责任,加载准备也使用这个 target。
独立城市页面此前直接绘制,本轮接入统一风格会增加 HDR target 与最终呈现工作。它与“街区已有 pass 内共用取样”的成本不同,需要分别验收显存、GPU/CPU、加载与帧间隔。本机两个真实客户端的三组短时样本中,主客户端 P99 18.5→17.9 ms、世界渲染提交 CPU 7.3→7.1 ms,第二客户端仍为 running;这没有独立量出新增 pass 的 GPU/显存字节成本,也不代表公网或长期运行。HDR 不可用时仍走直接绘制兼容路径。
步行弹性目前接入自由探索的本地骑手显示层,不能把它说成所有联机玩家、僵尸或骑行乘客都已增加同样动画。远端权威快照、网络状态和物理规则沿用原职责。
已完成的测量与收尾验收
已完成本机真实 WebGL 白天/黄昏/夜景及 WebGPU 白天的固定视角检查,没有 shader 编译错误;人工查看了颜色反差墨线、天空连续性与夜间可读性。河岸日/夜景分别验证 WebGL 与 WebGPU 的既有水面捕获、远景和画面可读性。矩阵版本的完整单测、相关定向单测、类型检查、Web/桌面构建及现有发布预算检查通过。真实模型单测还覆盖面部/visor/货箱可见性、材质与几何共享、装备开关、货箱铰链、烘焙模型兼容和减少动态效果。
浏览器功能回归 10 项、macOS 正式构建功能回归 1 项通过,主矩阵画面版本的量化 A/B 已完成。本机原生 WebGL P99 中位数 25.8→19.8 ms,90 秒样本中超过 22 ms 的帧 552→0;WebGPU 出生点预热 2,460.7→404.0 ms、真实就绪 16.006→13.919 秒,首次转视角 P99 保持 18.7 ms、超过 50 ms 的帧前后均为零。较早仅性能补丁的原生 CPU 对照为 5.8→5.9 ms,主矩阵对照为 6.6→5.8 ms,不把其中较好的结果外推为稳定 CPU 收益。
矩阵后的共享 HDR 安全补丁收紧借用绘制范围、相机恢复所有权和取消后的画布可见性,正常嵌入挑战与准备期间立即取消的两项真实 GPU 回归已通过,相关单测、类型检查、Web/桌面重新构建、预算与资源策略通过,重新构建的 macOS 正式功能回归再次通过。最后安全版本三组独立首次转视角及一组新联机补测也通过:预热 2,803.9→467.0 ms、真实就绪 17.284→15.094 秒,首次转视角 P99 17.8→17.7 ms,超过 50 ms 的帧前后均为零;该补测与原主矩阵分别报告。固定美术截图属于画面证据,不混入正式性能采样;本机 A/B 通过,也不等于所有区域、实体手机、其他 GPU、Safari/Firefox 或真实 Steam/云端公网均已合格。完整每轮值、时长、顺序与计量边界见第二轮实测。
后续调整先查看本页实现边界,再按性能手册冻结完整基线、串行复测与交替 A/B。详细性能结果及未覆盖项统一在渲染性能记录维护,本页只保留解释美术成本所需的摘要。
分离色调与着色墨线(2026-10-17)
同一 resolve 内按亮度分离色调:暗部偏冷、受光面偏暖,墨线从中性灰黑改为向主题色的深色颜料压暗(白天紫褐、黄昏酒红、夜间藏青)。参数集中在 PRESENTATION_GRADE,乘数接近 1,不改变曝光和时段配色;GLSL 与 TSL 使用相同公式。Three 的卡通 ramp 只读取红通道,因此冷暖分离放在呈现阶段,而不是彩色 ramp。本轮没有单独测量新增 ALU 成本。