2V2-e.1: 3D draw-command channel — recording D3D8 device, StateManager, GrpBase, camera
EterLib/StateManager.cpp and GrpBase.cpp ported verbatim. CGraphicDevice::Create builds a platform IDirect3DDevice8 that keeps the device state and records every Draw* call as a Render3DDraw (vertices decoded by FVF, strips/fans expanded, textures, world/view/proj, blend/depth/light state). The 40250 camera (__UpdateCamera, SetCenterPosition, ...) and the Process order (__UpdateCamera -> OnCameraUpdate -> OnUIUpdate -> Begin/SetInterfaceRenderState/OnUIRender/End) are in place; CScreen Begin/End, CPythonGraphic render states and CCullingManager::Process matrix updates are verbatim. port.login_flow asserts a textured, lit character draw under the RH perspective with every vertex on screen; offline and live pass. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
668f48d6ec
commit
5bfa13c5cc
@@ -0,0 +1,296 @@
|
||||
{
|
||||
"reference": "EterLib/GrpBase.cpp",
|
||||
"reference_sha256": "c0e9ca5417117c5ac4b03436a1e64c9318265c203872b8fd949452cea8d0afa2",
|
||||
"priority": "P4",
|
||||
"contracts": [],
|
||||
"functions": {
|
||||
"PixelPositionToD3DXVECTOR3": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:PixelPositionToD3DXVECTOR3"
|
||||
]
|
||||
},
|
||||
"D3DXVECTOR3ToPixelPosition": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:D3DXVECTOR3ToPixelPosition"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::IsLowTextureMemory": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::IsLowTextureMemory"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::IsHighTextureMemory": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::IsHighTextureMemory"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::IsFastTNL": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::IsFastTNL"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::IsTLVertexClipping": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::IsTLVertexClipping"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::GetBackBufferSize": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::GetBackBufferSize"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::SetDefaultIndexBuffer": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::SetDefaultIndexBuffer"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::SetPDTStream": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::SetPDTStream"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::GetAvailableTextureMemory": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::GetAvailableTextureMemory"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::GetViewMatrix": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::GetViewMatrix"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::GetIdentityMatrix": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::GetIdentityMatrix"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::SetEyeCamera": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::SetEyeCamera"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::SetSimpleCamera": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::SetSimpleCamera"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::SetAroundCamera": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::SetAroundCamera"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::SetPositionCamera": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::SetPositionCamera"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::SetOrtho2D": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::SetOrtho2D"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::SetOrtho3D": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::SetOrtho3D"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::SetPerspective": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::SetPerspective"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::UpdateProjMatrix": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::UpdateProjMatrix"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::UpdateViewMatrix": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::UpdateViewMatrix"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::UpdatePipeLineMatrix": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::UpdatePipeLineMatrix"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::SetViewport": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::SetViewport"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::GetTargetPosition": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::GetTargetPosition"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::GetCameraPosition": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::GetCameraPosition"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::GetMatrix": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::GetMatrix"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::GetMatrixPointer": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::GetMatrixPointer"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::GetSphereMatrix": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::GetSphereMatrix"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::GetFOV": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::GetFOV"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::PushMatrix": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::PushMatrix"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::Scale": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::Scale"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::Rotate": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::Rotate"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::RotateLocal": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::RotateLocal"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::MultMatrix": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::MultMatrix"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::MultMatrixLocal": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::MultMatrixLocal"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::RotateYawPitchRollLocal": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::RotateYawPitchRollLocal"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::Translate": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::Translate"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::LoadMatrix": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::LoadMatrix"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::PopMatrix": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::PopMatrix"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::GetColor": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::GetColor"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::InitScreenEffect": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::InitScreenEffect"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::SetScreenEffectWaving": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::SetScreenEffectWaving"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::SetScreenEffectFlashing": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::SetScreenEffectFlashing"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::GetFaceCount": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::GetFaceCount"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::ResetFaceCount": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::ResetFaceCount"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::GetLastResult": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::GetLastResult"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::CGraphicBase": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::CGraphicBase"
|
||||
]
|
||||
},
|
||||
"CGraphicBase::~CGraphicBase": {
|
||||
"status": "PORTED",
|
||||
"impl": [
|
||||
"extension/src/port/EterLib/GrpBase.cpp:CGraphicBase::~CGraphicBase"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user