统一 2D 渲染链路以消除格式分叉和热路径中转
将图片主路径收口为 RGBA5551 输入、RGB565 backbuffer 输出,并删除 USE_RGB565_BACKBUFFER 双路径。sprite/tilemap 主绘制改为直接 RGBA5551 -> RGB565,透明语义固定为 1-bit alpha test。同步收口 SDL/FB present 路径、sprite 资源加载/导出规范,以及相关测试与文档。 Constraint: 运行时图片主路径需统一到 RGBA5551,不能继续保留主要 RGBA8888 分支 Constraint: 透明仅支持 1-bit 语义,不引入 alpha blending Rejected: 保留 USE_RGB565_BACKBUFFER 宏双路径 | 持续增加维护成本并掩盖真实主链路 Rejected: 主绘制继续走 RGBA5551 -> RGBA8888 -> RGB565 | 热路径存在不必要中转 Confidence: high Scope-risk: moderate Directive: 后续图片资源默认按 RGBA5551 接入;不要重新引入通用 RGBA8888 主运行时路径 Directive: 字体 atlas 目前仍属兼容输入;若继续收口,优先改成 1-bit mask 而不是新的图片分支 Tested: render_pipeline_tests;SDL Demo Release 构建;搜索确认无 USE_RGB565_BACKBUFFER 残留 Not-tested: Linux framebuffer 目标实机构建与显示验证
This commit is contained in:
+25
-25
@@ -1,25 +1,25 @@
|
||||
// Auto-generated by tools/png_to_header.py
|
||||
#pragma once
|
||||
#include <cstdint>
|
||||
|
||||
static const int32_t test_sprite_width = 16;
|
||||
static const int32_t test_sprite_height = 16;
|
||||
|
||||
static const uint32_t test_sprite_pixels[] = {
|
||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||
0x00000000, 0x00000000, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0x00000000, 0x00000000,
|
||||
0x00000000, 0x00000000, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0x00000000, 0x00000000,
|
||||
0x00000000, 0x00000000, 0xDC2828FF, 0xDC2828FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xDC2828FF, 0xDC2828FF, 0x00000000, 0x00000000,
|
||||
0x00000000, 0x00000000, 0xDC2828FF, 0xDC2828FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xDC2828FF, 0xDC2828FF, 0x00000000, 0x00000000,
|
||||
0x00000000, 0x00000000, 0xDC2828FF, 0xDC2828FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xDC2828FF, 0xDC2828FF, 0x00000000, 0x00000000,
|
||||
0x00000000, 0x00000000, 0xDC2828FF, 0xDC2828FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xDC2828FF, 0xDC2828FF, 0x00000000, 0x00000000,
|
||||
0x00000000, 0x00000000, 0xDC2828FF, 0xDC2828FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xDC2828FF, 0xDC2828FF, 0x00000000, 0x00000000,
|
||||
0x00000000, 0x00000000, 0xDC2828FF, 0xDC2828FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xDC2828FF, 0xDC2828FF, 0x00000000, 0x00000000,
|
||||
0x00000000, 0x00000000, 0xDC2828FF, 0xDC2828FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xDC2828FF, 0xDC2828FF, 0x00000000, 0x00000000,
|
||||
0x00000000, 0x00000000, 0xDC2828FF, 0xDC2828FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xFF6464FF, 0xDC2828FF, 0xDC2828FF, 0x00000000, 0x00000000,
|
||||
0x00000000, 0x00000000, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0x00000000, 0x00000000,
|
||||
0x00000000, 0x00000000, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0xDC2828FF, 0x00000000, 0x00000000,
|
||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||
};
|
||||
// Auto-generated by tools/png_to_header.py
|
||||
#pragma once
|
||||
#include <cstdint>
|
||||
|
||||
static const int32_t test_sprite_width = 16;
|
||||
static const int32_t test_sprite_height = 16;
|
||||
|
||||
static const uint16_t test_sprite_pixels[] = {
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0xD94B, 0xD94B, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xD94B, 0xD94B, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0xD94B, 0xD94B, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xD94B, 0xD94B, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0xD94B, 0xD94B, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xD94B, 0xD94B, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0xD94B, 0xD94B, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xD94B, 0xD94B, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0xD94B, 0xD94B, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xD94B, 0xD94B, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0xD94B, 0xD94B, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xD94B, 0xD94B, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0xD94B, 0xD94B, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xD94B, 0xD94B, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0xD94B, 0xD94B, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xFB19, 0xD94B, 0xD94B, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0xD94B, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user