layout: restructure into src/ tests/ android/ scripts/ tools/

- extension/src/{port,platform,codepage} -> src/; native_render -> src/host
  (+ dxt, shaders/); libgr2 -> src/gr2; extension/third_party -> third_party
- extension/tests -> tests/port, libgr2/tests -> tests/gr2
- android-native -> android (build.sh, push-client.sh moved in)
- script -> scripts; tools/40250 -> tools/server; oracle -> tools/granny-oracle;
  perf tools -> tools/perf
- all build trees under build/ (native, release, android, port-gate)
- xrender:: CMake aliases -> mt::; port-map ledger impl paths rewritten

No code changes. ctest 15/15, port_gate macos+android PASS, port_map check 0 errors.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
shenlei
2026-09-29 19:08:19 +09:00
co-authored by Claude Opus 5.5
parent 70710477cf
commit a46093104c
2817 changed files with 13728 additions and 13744 deletions
@@ -7,224 +7,224 @@
"CSpeedTreeWrapper::CSpeedTreeWrapper": {
"status": "PORTED",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::CSpeedTreeWrapper"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::CSpeedTreeWrapper"
]
},
"CSpeedTreeWrapper::SetVertexShaders": {
"status": "PORTED",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::SetVertexShaders"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::SetVertexShaders"
],
"note": "verbatim; WRAPPER_USE_NO_WIND / no GPU placement in SpeedTreeConfig.h, so the shader path returns the FVF as in 40250"
},
"CSpeedTreeWrapper::OnRenderPCBlocker": {
"status": "NEEDS_LIVE",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::OnRenderPCBlocker"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::OnRenderPCBlocker"
],
"note": "verbatim; PC-blocker alpha visual NEEDS_LIVE"
},
"CSpeedTreeWrapper::OnRender": {
"status": "NEEDS_LIVE",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::OnRender"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::OnRender"
],
"note": "verbatim; visual NEEDS_LIVE"
},
"CSpeedTreeWrapper::~CSpeedTreeWrapper": {
"status": "PORTED",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::~CSpeedTreeWrapper"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::~CSpeedTreeWrapper"
]
},
"CSpeedTreeWrapper::LoadTree": {
"status": "PORTED",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::LoadTree"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::LoadTree"
]
},
"CSpeedTreeWrapper::SetupBuffers": {
"status": "PORTED",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::SetupBuffers"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::SetupBuffers"
]
},
"CSpeedTreeWrapper::SetupBranchBuffers": {
"status": "NEEDS_LIVE",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::SetupBranchBuffers"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::SetupBranchBuffers"
],
"note": "verbatim. DIVERGENT input: CSpeedTreeRT is the closed IDV lib; platform/SpeedTreeLib/SpeedTreeRT.cpp stands in for it and yields procedural branch strips (height 1000, species from file name), not the .spt-computed geometry; visual NEEDS_LIVE"
},
"CSpeedTreeWrapper::SetupFrondBuffers": {
"status": "NEEDS_LIVE",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::SetupFrondBuffers"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::SetupFrondBuffers"
],
"note": "verbatim; the CSpeedTreeRT stand-in reports no fronds (0 vertices), so palms/ferns lose their fronds -- DIVERGENT until the .spt engine is reproduced; NEEDS_LIVE"
},
"CSpeedTreeWrapper::SetupLeafBuffers": {
"status": "NEEDS_LIVE",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::SetupLeafBuffers"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::SetupLeafBuffers"
],
"note": "verbatim. DIVERGENT input: the stand-in's leaf clusters and composite-atlas rects are hand-picked (the .spt stores no per-leaf-map texcoords: leaf entries 0x0FA0-0x0FA7 carry colour/path/origin/size only, and the single 8-float 0x4E25 rect in the 0x4E20 composite block, one per file for 1-3 leaf maps, frames the billboard cell in most atlases; billboards never render in 40250 since SetLodLevel(1.0)); NEEDS_LIVE"
},
"CSpeedTreeWrapper::Advance": {
"status": "PORTED",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::Advance"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::Advance"
]
},
"CSpeedTreeWrapper::MakeInstance": {
"status": "PORTED",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::MakeInstance"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::MakeInstance"
]
},
"CSpeedTreeWrapper::GetInstances": {
"status": "PORTED",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::GetInstances"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::GetInstances"
]
},
"CSpeedTreeWrapper::DeleteInstance": {
"status": "PORTED",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::DeleteInstance"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::DeleteInstance"
]
},
"CSpeedTreeWrapper::SetupBranchForTreeType": {
"status": "PORTED",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::SetupBranchForTreeType"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::SetupBranchForTreeType"
]
},
"CSpeedTreeWrapper::RenderBranches": {
"status": "NEEDS_LIVE",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::RenderBranches"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::RenderBranches"
],
"note": "verbatim; static-lit colours (LIGHT_STATIC, LIGHTING FALSE), stage-1 self-shadow modulate, ALPHAREF 84; visual NEEDS_LIVE"
},
"CSpeedTreeWrapper::SetupFrondForTreeType": {
"status": "PORTED",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::SetupFrondForTreeType"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::SetupFrondForTreeType"
]
},
"CSpeedTreeWrapper::RenderFronds": {
"status": "PORTED",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::RenderFronds"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::RenderFronds"
]
},
"CSpeedTreeWrapper::SetupLeafForTreeType": {
"status": "PORTED",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::SetupLeafForTreeType"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::SetupLeafForTreeType"
]
},
"CSpeedTreeWrapper::UploadLeafTables": {
"status": "PORTED",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::UploadLeafTables"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::UploadLeafTables"
],
"note": "verbatim; WRAPPER_USE_NO_WIND / no GPU placement in SpeedTreeConfig.h, so the shader path returns the FVF as in 40250"
},
"CSpeedTreeWrapper::RenderLeaves": {
"status": "NEEDS_LIVE",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::RenderLeaves"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::RenderLeaves"
],
"note": "verbatim; camera-facing leaf cards come from the stand-in's m_pLeafMapCoords (rebuilt from SetCamera); visual NEEDS_LIVE"
},
"CSpeedTreeWrapper::EndLeafForTreeType": {
"status": "PORTED",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::EndLeafForTreeType"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::EndLeafForTreeType"
]
},
"CSpeedTreeWrapper::RenderBillboards": {
"status": "NEEDS_LIVE",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::RenderBillboards"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::RenderBillboards"
],
"note": "verbatim; the stand-in keeps billboards inactive (single LOD), so far trees never drop to billboards -- NEEDS_LIVE"
},
"CSpeedTreeWrapper::CleanUpMemory": {
"status": "PORTED",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::CleanUpMemory"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::CleanUpMemory"
]
},
"CSpeedTreeWrapper::PositionTree": {
"status": "PORTED",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::PositionTree"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::PositionTree"
]
},
"CSpeedTreeWrapper::LoadTexture": {
"status": "PORTED",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::LoadTexture"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::LoadTexture"
]
},
"CSpeedTreeWrapper::SetShaderConstants": {
"status": "PORTED",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::SetShaderConstants"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::SetShaderConstants"
],
"note": "verbatim; WRAPPER_USE_NO_WIND / no GPU placement in SpeedTreeConfig.h, so the shader path returns the FVF as in 40250"
},
"CSpeedTreeWrapper::SetPosition": {
"status": "PORTED",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::SetPosition"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::SetPosition"
]
},
"CSpeedTreeWrapper::GetBoundingSphere": {
"status": "PORTED",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::GetBoundingSphere"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::GetBoundingSphere"
]
},
"CSpeedTreeWrapper::CalculateBBox": {
"status": "PORTED",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::CalculateBBox"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::CalculateBBox"
]
},
"CSpeedTreeWrapper::GetCollisionObjectCount": {
"status": "DIVERGENT",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::GetCollisionObjectCount"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::GetCollisionObjectCount"
],
"note": "verbatim; the stand-in returns one trunk CO_CYLINDER (radius 35, height 750), not the .spt collision objects"
},
"CSpeedTreeWrapper::GetCollisionObject": {
"status": "DIVERGENT",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::GetCollisionObject"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::GetCollisionObject"
],
"note": "verbatim; the stand-in returns one trunk CO_CYLINDER (radius 35, height 750), not the .spt collision objects"
},
"CSpeedTreeWrapper::GetPosition": {
"status": "PORTED",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::GetPosition"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::GetPosition"
]
},
"CSpeedTreeWrapper::GetTreeSize": {
"status": "PORTED",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::GetTreeSize"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::GetTreeSize"
]
},
"CSpeedTreeWrapper::OnUpdateCollisionData": {
"status": "PORTED",
"impl": [
"extension/src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::OnUpdateCollisionData"
"src/port/SpeedTreeLib/SpeedTreeWrapper.cpp:CSpeedTreeWrapper::OnUpdateCollisionData"
]
}
}