Files
mtgodot-poc/audit/port-map/EterGrnLib/ThingInstance.cpp.json
T
shenleiandClaude Opus 5.5 668f48d6ec port 2V2-d.2: Granny runtime on libgr2, main character model animates
Implement the Granny SDK 2.11 API the client uses on top of libgr2
(platform/EterGrnLib/GrannyRuntime.cpp, shim granny.h declared from the
SDK header): file sections, type-definition vertex conversion, material
textures by Usage, mesh/bone bindings, deformer, control clock/loop/ease
and weighted SRT sampling. Port EterGrnLib (LODController, Material, Mesh,
Model, ModelInstance*, Motion, Thing, ThingInstance, Util) plus EterLib
GrpObjectInstance/GrpCollisionObject/CollisionData verbatim and drop their
platform skeletons and pending stand-ins; register the gr2 resource
factory; vertex/index buffers are CPU-side until the 2V2-e render adapter.

app.UpdateGame/RenderGame now run 40250's bodies, reaching the
CPythonApplication members through their singletons (the platform has no
app object); CPythonGraphic joins GameSingletons in member order, and
GetMousePosition reads the host cursor.

port.login_flow asserts the main instance's PART_MAIN model has meshes,
its diffuse image loaded and the WAIT motion moves the bones between
frames; offline and live pass, port_gate macos PASS.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-23 19:43:27 +09:00

465 lines
15 KiB
JSON

{
"reference": "EterGrnLib/ThingInstance.cpp",
"reference_sha256": "8f90fd8718ae58c1652e0b169fa77d0d268d7e36aae6aed542ca93d83657fbbe",
"priority": "P4",
"contracts": [],
"functions": {
"CGraphicThingInstance::GetBaseThingPtr": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::GetBaseThingPtr"
]
},
"CGraphicThingInstance::LessRenderOrder": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::LessRenderOrder"
]
},
"CGraphicThingInstance::CreateSystem": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::CreateSystem"
]
},
"CGraphicThingInstance::DestroySystem": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::DestroySystem"
]
},
"CGraphicThingInstance::New": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::New"
]
},
"CGraphicThingInstance::Delete": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::Delete"
]
},
"CGraphicThingInstance::SetMotionAtEnd": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::SetMotionAtEnd"
]
},
"CGraphicThingInstance::Picking": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::Picking"
]
},
"CGraphicThingInstance::OnUpdateCollisionData": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::OnUpdateCollisionData"
]
},
"CGraphicThingInstance::OnUpdateHeighInstance": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::OnUpdateHeighInstance"
]
},
"CGraphicThingInstance::OnGetObjectHeight": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::OnGetObjectHeight"
]
},
"CGraphicThingInstance::BuildBoundingSphere": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::BuildBoundingSphere"
]
},
"CGraphicThingInstance::GetBoundingSphere": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::GetBoundingSphere"
]
},
"CGraphicThingInstance::BuildBoundingAABB": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::BuildBoundingAABB"
]
},
"CGraphicThingInstance::GetBoundingAABB": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::GetBoundingAABB"
]
},
"CGraphicThingInstance::CalculateBBox": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::CalculateBBox"
]
},
"CGraphicThingInstance::CreateDeviceObjects": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::CreateDeviceObjects"
]
},
"CGraphicThingInstance::DestroyDeviceObjects": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::DestroyDeviceObjects"
]
},
"CGraphicThingInstance::CheckModelInstanceIndex": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::CheckModelInstanceIndex"
]
},
"CGraphicThingInstance::CheckModelThingIndex": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::CheckModelThingIndex"
]
},
"CGraphicThingInstance::CheckMotionThingIndex": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::CheckMotionThingIndex"
]
},
"CGraphicThingInstance::GetMotionThingPointer": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::GetMotionThingPointer"
]
},
"CGraphicThingInstance::IsMotionThing": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::IsMotionThing"
]
},
"CGraphicThingInstance::ReserveModelInstance": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::ReserveModelInstance"
]
},
"CGraphicThingInstance::ReserveModelThing": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::ReserveModelThing"
]
},
"CGraphicThingInstance::FindBoneIndex": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::FindBoneIndex"
]
},
"CGraphicThingInstance::AttachModelInstance": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::AttachModelInstance"
]
},
"CGraphicThingInstance::DetachModelInstance": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::DetachModelInstance"
]
},
"CGraphicThingInstance::GetBonePosition": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::GetBonePosition"
]
},
"CGraphicThingInstance::SetModelInstance": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::SetModelInstance"
]
},
"CGraphicThingInstance::SetMaterialImagePointer": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::SetMaterialImagePointer"
]
},
"CGraphicThingInstance::SetMaterialData": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::SetMaterialData"
]
},
"CGraphicThingInstance::SetSpecularInfo": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::SetSpecularInfo"
]
},
"CGraphicThingInstance::SetMotion": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::SetMotion"
]
},
"CGraphicThingInstance::ChangeMotion": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::ChangeMotion"
]
},
"CGraphicThingInstance::SetEndStopMotion": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::SetEndStopMotion"
]
},
"CGraphicThingInstance::RegisterModelThing": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::RegisterModelThing"
]
},
"CGraphicThingInstance::RegisterLODThing": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::RegisterLODThing"
]
},
"CGraphicThingInstance::RegisterMotionThing": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::RegisterMotionThing"
]
},
"CGraphicThingInstance::ResetLocalTime": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::ResetLocalTime"
]
},
"CGraphicThingInstance::InsertDelay": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::InsertDelay"
]
},
"CGraphicThingInstance::GetLastLocalTime": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::GetLastLocalTime"
]
},
"CGraphicThingInstance::GetLocalTime": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::GetLocalTime"
]
},
"CGraphicThingInstance::GetSecondElapsed": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::GetSecondElapsed"
]
},
"CGraphicThingInstance::GetAverageSecondElapsed": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::GetAverageSecondElapsed"
]
},
"CGraphicThingInstance::Intersect": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::Intersect"
]
},
"CGraphicThingInstance::GetBoundBox": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::GetBoundBox"
]
},
"CGraphicThingInstance::GetBoneMatrix": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::GetBoneMatrix"
]
},
"CGraphicThingInstance::GetCompositeBoneMatrix": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::GetCompositeBoneMatrix"
]
},
"CGraphicThingInstance::UpdateTransform": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::UpdateTransform"
]
},
"CGraphicThingInstance::DeformAll": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::DeformAll"
]
},
"CGraphicThingInstance::DeformNoSkin": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::DeformNoSkin"
]
},
"CGraphicThingInstance::OnDeform": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::OnDeform"
]
},
"CGraphicThingInstance::__SetLocalTime": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::__SetLocalTime"
]
},
"CGraphicThingInstance::UpdateLODLevel": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::UpdateLODLevel"
]
},
"CGraphicThingInstance::UpdateTime": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::UpdateTime"
]
},
"CGraphicThingInstance::OnUpdate": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::OnUpdate"
]
},
"CGraphicThingInstance::OnRender": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::OnRender"
]
},
"CGraphicThingInstance::OnBlendRender": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::OnBlendRender"
]
},
"CGraphicThingInstance::RenderWithOneTexture": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::RenderWithOneTexture"
]
},
"CGraphicThingInstance::BlendRenderWithOneTexture": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::BlendRenderWithOneTexture"
]
},
"CGraphicThingInstance::RenderWithTwoTexture": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::RenderWithTwoTexture"
]
},
"CGraphicThingInstance::BlendRenderWithTwoTexture": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::BlendRenderWithTwoTexture"
]
},
"CGraphicThingInstance::OnRenderToShadowMap": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::OnRenderToShadowMap"
]
},
"CGraphicThingInstance::OnRenderShadow": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::OnRenderShadow"
]
},
"CGraphicThingInstance::OnRenderPCBlocker": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::OnRenderPCBlocker"
]
},
"CGraphicThingInstance::GetLODControllerCount": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::GetLODControllerCount"
]
},
"CGraphicThingInstance::GetLODControllerPointer": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::GetLODControllerPointer"
]
},
"CGraphicThingInstance::GetLODLevel": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::GetLODLevel"
]
},
"CGraphicThingInstance::GetHeight": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::GetHeight"
]
},
"CGraphicThingInstance::ReloadTexture": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::ReloadTexture"
]
},
"CGraphicThingInstance::HaveBlendThing": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::HaveBlendThing"
]
},
"CGraphicThingInstance::OnClear": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::OnClear"
]
},
"CGraphicThingInstance::OnInitialize": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::OnInitialize"
]
},
"CGraphicThingInstance::CGraphicThingInstance": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::CGraphicThingInstance"
]
},
"CGraphicThingInstance::~CGraphicThingInstance": {
"status": "PORTED",
"impl": [
"extension/src/port/EterGrnLib/ThingInstance.cpp:CGraphicThingInstance::~CGraphicThingInstance"
]
}
}
}