Files
mtgodot-poc/audit/port-map/EterLib/GrpObjectInstance.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

291 lines
9.5 KiB
JSON

{
"reference": "EterLib/GrpObjectInstance.cpp",
"reference_sha256": "cae9c29b006be59602b9915796fcdd10f2dd320f6969dd5b9f21d08868f015d8",
"priority": "P4",
"contracts": [],
"functions": {
"CGraphicObjectInstance::OnInitialize": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::OnInitialize"
]
},
"CGraphicObjectInstance::Clear": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::Clear"
]
},
"CGraphicObjectInstance::Render": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::Render"
]
},
"CGraphicObjectInstance::BlendRender": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::BlendRender"
]
},
"CGraphicObjectInstance::RenderToShadowMap": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::RenderToShadowMap"
]
},
"CGraphicObjectInstance::RenderShadow": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::RenderShadow"
]
},
"CGraphicObjectInstance::RenderPCBlocker": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::RenderPCBlocker"
]
},
"CGraphicObjectInstance::Update": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::Update"
]
},
"CGraphicObjectInstance::Deform": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::Deform"
]
},
"CGraphicObjectInstance::Transform": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::Transform"
]
},
"CGraphicObjectInstance::GetPosition": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::GetPosition"
]
},
"CGraphicObjectInstance::GetScale": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::GetScale"
]
},
"CGraphicObjectInstance::GetRotation": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::GetRotation"
]
},
"CGraphicObjectInstance::GetYaw": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::GetYaw"
]
},
"CGraphicObjectInstance::GetPitch": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::GetPitch"
]
},
"CGraphicObjectInstance::GetRoll": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::GetRoll"
]
},
"CGraphicObjectInstance::GetTransform": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::GetTransform"
]
},
"CGraphicObjectInstance::SetRotationQuaternion": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::SetRotationQuaternion"
]
},
"CGraphicObjectInstance::SetRotationMatrix": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::SetRotationMatrix"
]
},
"CGraphicObjectInstance::SetRotation": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::SetRotation"
]
},
"CGraphicObjectInstance::SetPosition": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::SetPosition"
]
},
"CGraphicObjectInstance::SetScale": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::SetScale"
]
},
"CGraphicObjectInstance::Show": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::Show"
]
},
"CGraphicObjectInstance::Hide": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::Hide"
]
},
"CGraphicObjectInstance::isShow": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::isShow"
]
},
"CGraphicObjectInstance::GetWTBBoxVertex": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::GetWTBBoxVertex"
]
},
"CGraphicObjectInstance::isIntersect": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::isIntersect"
]
},
"CGraphicObjectInstance::CGraphicObjectInstance": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::CGraphicObjectInstance"
]
},
"CGraphicObjectInstance::Initialize": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::Initialize"
]
},
"CGraphicObjectInstance::~CGraphicObjectInstance": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::~CGraphicObjectInstance"
]
},
"CGraphicObjectInstance::UpdateBoundingSphere": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::UpdateBoundingSphere"
]
},
"CGraphicObjectInstance::RegisterBoundingSphere": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::RegisterBoundingSphere"
]
},
"CGraphicObjectInstance::AddCollision": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::AddCollision"
]
},
"CGraphicObjectInstance::ClearCollision": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::ClearCollision"
]
},
"CGraphicObjectInstance::CollisionDynamicSphere": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::CollisionDynamicSphere"
]
},
"CGraphicObjectInstance::MovementCollisionDynamicSphere": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::MovementCollisionDynamicSphere"
]
},
"CGraphicObjectInstance::GetCollisionMovementAdjust": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::GetCollisionMovementAdjust"
]
},
"CGraphicObjectInstance::UpdateCollisionData": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::UpdateCollisionData"
]
},
"CGraphicObjectInstance::GetCollisionInstanceCount": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::GetCollisionInstanceCount"
]
},
"CGraphicObjectInstance::GetCollisionInstanceData": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::GetCollisionInstanceData"
]
},
"CGraphicObjectInstance::SetHeightInstance": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::SetHeightInstance"
]
},
"CGraphicObjectInstance::ClearHeightInstance": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::ClearHeightInstance"
]
},
"CGraphicObjectInstance::UpdateHeightInstance": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::UpdateHeightInstance"
]
},
"CGraphicObjectInstance::IsObjectHeight": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::IsObjectHeight"
]
},
"CGraphicObjectInstance::GetObjectHeight": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::GetObjectHeight"
]
},
"CGraphicObjectInstance::SetPortal": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::SetPortal"
]
},
"CGraphicObjectInstance::GetPortal": {
"status": "PORTED",
"impl": [
"extension/src/port/EterLib/GrpObjectInstance.cpp:CGraphicObjectInstance::GetPortal"
]
}
}
}