al/LiveActor: Implement all ActorPoseKeepers

This commit is contained in:
MonsterDruide1 2022-02-15 22:30:01 +01:00
parent 04fac6e0c2
commit 2d5038a68c
9 changed files with 738 additions and 392 deletions

View File

@ -56650,62 +56650,63 @@ Address,Quality,Size,Name
0x00000071008ec448,U,000024,_ZN2al19findActorParamSightEPKNS_9LiveActorEPKc
0x00000071008ec460,U,000024,_ZN2al21findActorParamReboundEPKNS_9LiveActorEPKc
0x00000071008ec478,U,000020,_ZN2al17setActorParamMoveEPNS_14ActorParamMoveEffff
0x00000071008ec48c,U,000028,_ZN2al19ActorPoseKeeperBaseC2Ev
0x00000071008ec4a8,U,000116,_ZN2al19ActorPoseKeeperBase8copyPoseEPKS0_
0x00000071008ec51c,U,000040,_ZN2al19ActorPoseKeeperTRSVC2Ev
0x00000071008ec48c,O,000028,_ZN2al19ActorPoseKeeperBaseC2Ev
0x00000071008ec4a8,O,000116,_ZN2al19ActorPoseKeeperBase8copyPoseEPKS0_
0x00000071008ec51c,O,000040,_ZN2al19ActorPoseKeeperTRSVC2Ev
0x00000071008ec544,O,000028,_ZN2al19ActorPoseKeeperTRSV15updatePoseTransERKN4sead7Vector3IfEE
0x00000071008ec560,O,000028,_ZN2al19ActorPoseKeeperTRSV16updatePoseRotateERKN4sead7Vector3IfEE
0x00000071008ec57c,U,000080,_ZN2al19ActorPoseKeeperTRSV14updatePoseQuatERKN4sead4QuatIfEE
0x00000071008ec5cc,U,000272,_ZN2al19ActorPoseKeeperTRSV13updatePoseMtxEPKN4sead8Matrix34IfEE
0x00000071008ec6dc,U,000056,_ZNK2al19ActorPoseKeeperTRSV11calcBaseMtxEPN4sead8Matrix34IfEE
0x00000071008ec714,U,000072,_ZN2al20ActorPoseKeeperTRMSVC2Ev
0x00000071008ec75c,U,000312,_ZN2al20ActorPoseKeeperTRMSV15updatePoseTransERKN4sead7Vector3IfEE
0x00000071008ec894,U,000312,_ZN2al20ActorPoseKeeperTRMSV16updatePoseRotateERKN4sead7Vector3IfEE
0x00000071008ec9cc,U,000348,_ZN2al20ActorPoseKeeperTRMSV14updatePoseQuatERKN4sead4QuatIfEE
0x00000071008ecb28,U,000048,_ZN2al20ActorPoseKeeperTRMSV13updatePoseMtxEPKN4sead8Matrix34IfEE
0x00000071008ecb58,U,000028,_ZNK2al20ActorPoseKeeperTRMSV11calcBaseMtxEPN4sead8Matrix34IfEE
0x00000071008ecb74,U,000120,_ZN2al21ActorPoseKeeperTRGMSVC2Ev
0x00000071008ecbec,U,000312,_ZN2al21ActorPoseKeeperTRGMSV15updatePoseTransERKN4sead7Vector3IfEE
0x00000071008ecd24,U,000312,_ZN2al21ActorPoseKeeperTRGMSV16updatePoseRotateERKN4sead7Vector3IfEE
0x00000071008ece5c,U,000348,_ZN2al21ActorPoseKeeperTRGMSV14updatePoseQuatERKN4sead4QuatIfEE
0x00000071008ecfb8,U,000048,_ZN2al21ActorPoseKeeperTRGMSV13updatePoseMtxEPKN4sead8Matrix34IfEE
0x00000071008ecfe8,U,000028,_ZNK2al21ActorPoseKeeperTRGMSV11calcBaseMtxEPN4sead8Matrix34IfEE
0x00000071008ed004,U,000064,_ZN2al19ActorPoseKeeperTFSVC2Ev
0x00000071008ed044,U,000028,_ZN2al19ActorPoseKeeperTFSV15updatePoseTransERKN4sead7Vector3IfEE
0x00000071008ed060,U,000256,_ZN2al19ActorPoseKeeperTFSV16updatePoseRotateERKN4sead7Vector3IfEE
0x00000071008ed160,U,000008,_ZN2al19ActorPoseKeeperTFSV14updatePoseQuatERKN4sead4QuatIfEE
0x00000071008ed168,U,000052,_ZN2al19ActorPoseKeeperTFSV13updatePoseMtxEPKN4sead8Matrix34IfEE
0x00000071008ed19c,U,000112,_ZNK2al19ActorPoseKeeperTFSV11calcBaseMtxEPN4sead8Matrix34IfEE
0x00000071008ed20c,U,000112,_ZN2al20ActorPoseKeeperTFUSVC2Ev
0x00000071008ed27c,U,000028,_ZN2al20ActorPoseKeeperTFUSV15updatePoseTransERKN4sead7Vector3IfEE
0x00000071008ed298,U,000268,_ZN2al20ActorPoseKeeperTFUSV16updatePoseRotateERKN4sead7Vector3IfEE
0x00000071008ed3a4,U,000048,_ZN2al20ActorPoseKeeperTFUSV14updatePoseQuatERKN4sead4QuatIfEE
0x00000071008ed3d4,U,000076,_ZN2al20ActorPoseKeeperTFUSV13updatePoseMtxEPKN4sead8Matrix34IfEE
0x00000071008ed420,U,000176,_ZNK2al20ActorPoseKeeperTFUSV11calcBaseMtxEPN4sead8Matrix34IfEE
0x00000071008ed4d0,U,000096,_ZN2al20ActorPoseKeeperTFGSVC2Ev
0x00000071008ed530,U,000028,_ZN2al20ActorPoseKeeperTFGSV15updatePoseTransERKN4sead7Vector3IfEE
0x00000071008ed54c,U,000296,_ZN2al20ActorPoseKeeperTFGSV16updatePoseRotateERKN4sead7Vector3IfEE
0x00000071008ed674,U,000080,_ZN2al20ActorPoseKeeperTFGSV14updatePoseQuatERKN4sead4QuatIfEE
0x00000071008ed6c4,U,000092,_ZN2al20ActorPoseKeeperTFGSV13updatePoseMtxEPKN4sead8Matrix34IfEE
0x00000071008ed720,U,000128,_ZNK2al20ActorPoseKeeperTFGSV11calcBaseMtxEPN4sead8Matrix34IfEE
0x00000071008ed7a0,U,000064,_ZN2al19ActorPoseKeeperTQSVC2Ev
0x00000071008ed7e0,U,000028,_ZN2al19ActorPoseKeeperTQSV15updatePoseTransERKN4sead7Vector3IfEE
0x00000071008ed7fc,U,000236,_ZN2al19ActorPoseKeeperTQSV16updatePoseRotateERKN4sead7Vector3IfEE
0x00000071008ed8e8,U,000036,_ZN2al19ActorPoseKeeperTQSV14updatePoseQuatERKN4sead4QuatIfEE
0x00000071008ed90c,U,000064,_ZN2al19ActorPoseKeeperTQSV13updatePoseMtxEPKN4sead8Matrix34IfEE
0x00000071008ed94c,U,000160,_ZNK2al19ActorPoseKeeperTQSV11calcBaseMtxEPN4sead8Matrix34IfEE
0x00000071008ed9ec,U,000076,_ZN2al20ActorPoseKeeperTQGSVC2Ev
0x00000071008eda38,U,000028,_ZN2al20ActorPoseKeeperTQGSV15updatePoseTransERKN4sead7Vector3IfEE
0x00000071008eda54,U,000236,_ZN2al20ActorPoseKeeperTQGSV16updatePoseRotateERKN4sead7Vector3IfEE
0x00000071008edb40,U,000036,_ZN2al20ActorPoseKeeperTQGSV14updatePoseQuatERKN4sead4QuatIfEE
0x00000071008edb64,U,000064,_ZN2al20ActorPoseKeeperTQGSV13updatePoseMtxEPKN4sead8Matrix34IfEE
0x00000071008edba4,U,000160,_ZNK2al20ActorPoseKeeperTQGSV11calcBaseMtxEPN4sead8Matrix34IfEE
0x00000071008edc44,U,000096,_ZN2al21ActorPoseKeeperTQGMSVC2Ev
0x00000071008edca4,U,000184,_ZN2al21ActorPoseKeeperTQGMSV15updatePoseTransERKN4sead7Vector3IfEE
0x00000071008edd5c,U,000380,_ZN2al21ActorPoseKeeperTQGMSV16updatePoseRotateERKN4sead7Vector3IfEE
0x00000071008eded8,U,000208,_ZN2al21ActorPoseKeeperTQGMSV14updatePoseQuatERKN4sead4QuatIfEE
0x00000071008edfa8,U,000208,_ZN2al21ActorPoseKeeperTQGMSV13updatePoseMtxEPKN4sead8Matrix34IfEE
0x00000071008ee078,U,000028,_ZNK2al21ActorPoseKeeperTQGMSV11calcBaseMtxEPN4sead8Matrix34IfEE
0x00000071008ec57c,O,000080,_ZN2al19ActorPoseKeeperTRSV14updatePoseQuatERKN4sead4QuatIfEE
0x00000071008ec5cc,O,000024,_ZN2al19ActorPoseKeeperTRSV13updatePoseMtxEPKN4sead8Matrix34IfEE
0x00000071008ec5e4,O,000248,_ZN2alL32rotationAndTranslationFromMatrixERN4sead7Vector3IfEES3_PKNS0_8Matrix34IfEE
0x00000071008ec6dc,O,000056,_ZNK2al19ActorPoseKeeperTRSV11calcBaseMtxEPN4sead8Matrix34IfEE
0x00000071008ec714,O,000072,_ZN2al20ActorPoseKeeperTRMSVC1Ev
0x00000071008ec75c,O,000312,_ZN2al20ActorPoseKeeperTRMSV15updatePoseTransERKN4sead7Vector3IfEE
0x00000071008ec894,O,000312,_ZN2al20ActorPoseKeeperTRMSV16updatePoseRotateERKN4sead7Vector3IfEE
0x00000071008ec9cc,O,000348,_ZN2al20ActorPoseKeeperTRMSV14updatePoseQuatERKN4sead4QuatIfEE
0x00000071008ecb28,O,000048,_ZN2al20ActorPoseKeeperTRMSV13updatePoseMtxEPKN4sead8Matrix34IfEE
0x00000071008ecb58,O,000028,_ZNK2al20ActorPoseKeeperTRMSV11calcBaseMtxEPN4sead8Matrix34IfEE
0x00000071008ecb74,M,000120,_ZN2al21ActorPoseKeeperTRGMSVC1Ev
0x00000071008ecbec,O,000312,_ZN2al21ActorPoseKeeperTRGMSV15updatePoseTransERKN4sead7Vector3IfEE
0x00000071008ecd24,O,000312,_ZN2al21ActorPoseKeeperTRGMSV16updatePoseRotateERKN4sead7Vector3IfEE
0x00000071008ece5c,O,000348,_ZN2al21ActorPoseKeeperTRGMSV14updatePoseQuatERKN4sead4QuatIfEE
0x00000071008ecfb8,O,000048,_ZN2al21ActorPoseKeeperTRGMSV13updatePoseMtxEPKN4sead8Matrix34IfEE
0x00000071008ecfe8,O,000028,_ZNK2al21ActorPoseKeeperTRGMSV11calcBaseMtxEPN4sead8Matrix34IfEE
0x00000071008ed004,O,000064,_ZN2al19ActorPoseKeeperTFSVC2Ev
0x00000071008ed044,O,000028,_ZN2al19ActorPoseKeeperTFSV15updatePoseTransERKN4sead7Vector3IfEE
0x00000071008ed060,O,000256,_ZN2al19ActorPoseKeeperTFSV16updatePoseRotateERKN4sead7Vector3IfEE
0x00000071008ed160,O,000008,_ZN2al19ActorPoseKeeperTFSV14updatePoseQuatERKN4sead4QuatIfEE
0x00000071008ed168,O,000052,_ZN2al19ActorPoseKeeperTFSV13updatePoseMtxEPKN4sead8Matrix34IfEE
0x00000071008ed19c,O,000112,_ZNK2al19ActorPoseKeeperTFSV11calcBaseMtxEPN4sead8Matrix34IfEE
0x00000071008ed20c,O,000112,_ZN2al20ActorPoseKeeperTFUSVC2Ev
0x00000071008ed27c,O,000028,_ZN2al20ActorPoseKeeperTFUSV15updatePoseTransERKN4sead7Vector3IfEE
0x00000071008ed298,O,000268,_ZN2al20ActorPoseKeeperTFUSV16updatePoseRotateERKN4sead7Vector3IfEE
0x00000071008ed3a4,O,000048,_ZN2al20ActorPoseKeeperTFUSV14updatePoseQuatERKN4sead4QuatIfEE
0x00000071008ed3d4,O,000076,_ZN2al20ActorPoseKeeperTFUSV13updatePoseMtxEPKN4sead8Matrix34IfEE
0x00000071008ed420,O,000176,_ZNK2al20ActorPoseKeeperTFUSV11calcBaseMtxEPN4sead8Matrix34IfEE
0x00000071008ed4d0,O,000096,_ZN2al20ActorPoseKeeperTFGSVC2Ev
0x00000071008ed530,O,000028,_ZN2al20ActorPoseKeeperTFGSV15updatePoseTransERKN4sead7Vector3IfEE
0x00000071008ed54c,O,000296,_ZN2al20ActorPoseKeeperTFGSV16updatePoseRotateERKN4sead7Vector3IfEE
0x00000071008ed674,O,000080,_ZN2al20ActorPoseKeeperTFGSV14updatePoseQuatERKN4sead4QuatIfEE
0x00000071008ed6c4,O,000092,_ZN2al20ActorPoseKeeperTFGSV13updatePoseMtxEPKN4sead8Matrix34IfEE
0x00000071008ed720,O,000128,_ZNK2al20ActorPoseKeeperTFGSV11calcBaseMtxEPN4sead8Matrix34IfEE
0x00000071008ed7a0,O,000064,_ZN2al19ActorPoseKeeperTQSVC2Ev
0x00000071008ed7e0,O,000028,_ZN2al19ActorPoseKeeperTQSV15updatePoseTransERKN4sead7Vector3IfEE
0x00000071008ed7fc,O,000236,_ZN2al19ActorPoseKeeperTQSV16updatePoseRotateERKN4sead7Vector3IfEE
0x00000071008ed8e8,O,000036,_ZN2al19ActorPoseKeeperTQSV14updatePoseQuatERKN4sead4QuatIfEE
0x00000071008ed90c,O,000064,_ZN2al19ActorPoseKeeperTQSV13updatePoseMtxEPKN4sead8Matrix34IfEE
0x00000071008ed94c,O,000160,_ZNK2al19ActorPoseKeeperTQSV11calcBaseMtxEPN4sead8Matrix34IfEE
0x00000071008ed9ec,O,000076,_ZN2al20ActorPoseKeeperTQGSVC2Ev
0x00000071008eda38,O,000028,_ZN2al20ActorPoseKeeperTQGSV15updatePoseTransERKN4sead7Vector3IfEE
0x00000071008eda54,O,000236,_ZN2al20ActorPoseKeeperTQGSV16updatePoseRotateERKN4sead7Vector3IfEE
0x00000071008edb40,O,000036,_ZN2al20ActorPoseKeeperTQGSV14updatePoseQuatERKN4sead4QuatIfEE
0x00000071008edb64,O,000064,_ZN2al20ActorPoseKeeperTQGSV13updatePoseMtxEPKN4sead8Matrix34IfEE
0x00000071008edba4,O,000160,_ZNK2al20ActorPoseKeeperTQGSV11calcBaseMtxEPN4sead8Matrix34IfEE
0x00000071008edc44,O,000096,_ZN2al21ActorPoseKeeperTQGMSVC2Ev
0x00000071008edca4,O,000184,_ZN2al21ActorPoseKeeperTQGMSV15updatePoseTransERKN4sead7Vector3IfEE
0x00000071008edd5c,O,000380,_ZN2al21ActorPoseKeeperTQGMSV16updatePoseRotateERKN4sead7Vector3IfEE
0x00000071008eded8,O,000208,_ZN2al21ActorPoseKeeperTQGMSV14updatePoseQuatERKN4sead4QuatIfEE
0x00000071008edfa8,O,000208,_ZN2al21ActorPoseKeeperTQGMSV13updatePoseMtxEPKN4sead8Matrix34IfEE
0x00000071008ee078,O,000028,_ZNK2al21ActorPoseKeeperTQGMSV11calcBaseMtxEPN4sead8Matrix34IfEE
0x00000071008ee094,O,000012,_ZNK2al19ActorPoseKeeperBase9getRotateEv
0x00000071008ee0a0,O,000012,_ZNK2al19ActorPoseKeeperBase8getScaleEv
0x00000071008ee0ac,O,000012,_ZNK2al19ActorPoseKeeperBase11getVelocityEv
@ -56728,58 +56729,58 @@ Address,Quality,Size,Name
0x00000071008ee14c,O,000008,_ZN2al19ActorPoseKeeperTRSV12getRotatePtrEv
0x00000071008ee154,O,000008,_ZN2al19ActorPoseKeeperTRSV11getScalePtrEv
0x00000071008ee15c,O,000008,_ZN2al19ActorPoseKeeperTRSV14getVelocityPtrEv
0x00000071008ee164,U,000008,_ZNK2al20ActorPoseKeeperTRMSV9getRotateEv
0x00000071008ee16c,U,000008,_ZNK2al20ActorPoseKeeperTRMSV8getScaleEv
0x00000071008ee174,U,000008,_ZNK2al20ActorPoseKeeperTRMSV11getVelocityEv
0x00000071008ee17c,U,000008,_ZNK2al20ActorPoseKeeperTRMSV6getMtxEv
0x00000071008ee184,U,000008,_ZN2al20ActorPoseKeeperTRMSV12getRotatePtrEv
0x00000071008ee18c,U,000008,_ZN2al20ActorPoseKeeperTRMSV11getScalePtrEv
0x00000071008ee194,U,000008,_ZN2al20ActorPoseKeeperTRMSV14getVelocityPtrEv
0x00000071008ee19c,U,000008,_ZN2al20ActorPoseKeeperTRMSV9getMtxPtrEv
0x00000071008ee1a4,U,000008,_ZNK2al21ActorPoseKeeperTRGMSV9getRotateEv
0x00000071008ee1ac,U,000008,_ZNK2al21ActorPoseKeeperTRGMSV8getScaleEv
0x00000071008ee1b4,U,000008,_ZNK2al21ActorPoseKeeperTRGMSV11getVelocityEv
0x00000071008ee1bc,U,000008,_ZNK2al21ActorPoseKeeperTRGMSV10getGravityEv
0x00000071008ee1c4,U,000008,_ZNK2al21ActorPoseKeeperTRGMSV6getMtxEv
0x00000071008ee1cc,U,000008,_ZN2al21ActorPoseKeeperTRGMSV12getRotatePtrEv
0x00000071008ee1d4,U,000008,_ZN2al21ActorPoseKeeperTRGMSV11getScalePtrEv
0x00000071008ee1dc,U,000008,_ZN2al21ActorPoseKeeperTRGMSV14getVelocityPtrEv
0x00000071008ee1e4,U,000008,_ZN2al21ActorPoseKeeperTRGMSV13getGravityPtrEv
0x00000071008ee1ec,U,000008,_ZN2al21ActorPoseKeeperTRGMSV9getMtxPtrEv
0x00000071008ee1f4,U,000008,_ZNK2al19ActorPoseKeeperTFSV8getScaleEv
0x00000071008ee1fc,U,000008,_ZNK2al19ActorPoseKeeperTFSV11getVelocityEv
0x00000071008ee204,U,000008,_ZNK2al19ActorPoseKeeperTFSV8getFrontEv
0x00000071008ee20c,U,000008,_ZN2al19ActorPoseKeeperTFSV11getScalePtrEv
0x00000071008ee214,U,000008,_ZN2al19ActorPoseKeeperTFSV14getVelocityPtrEv
0x00000071008ee21c,U,000008,_ZN2al19ActorPoseKeeperTFSV11getFrontPtrEv
0x00000071008ee224,U,000008,_ZNK2al20ActorPoseKeeperTFUSV5getUpEv
0x00000071008ee22c,U,000008,_ZN2al20ActorPoseKeeperTFUSV8getUpPtrEv
0x00000071008ee234,U,000008,_ZNK2al20ActorPoseKeeperTFGSV10getGravityEv
0x00000071008ee23c,U,000008,_ZN2al20ActorPoseKeeperTFGSV13getGravityPtrEv
0x00000071008ee244,U,000008,_ZNK2al19ActorPoseKeeperTQSV8getScaleEv
0x00000071008ee24c,U,000008,_ZNK2al19ActorPoseKeeperTQSV11getVelocityEv
0x00000071008ee254,U,000008,_ZNK2al19ActorPoseKeeperTQSV7getQuatEv
0x00000071008ee25c,U,000008,_ZN2al19ActorPoseKeeperTQSV11getScalePtrEv
0x00000071008ee264,U,000008,_ZN2al19ActorPoseKeeperTQSV14getVelocityPtrEv
0x00000071008ee26c,U,000008,_ZN2al19ActorPoseKeeperTQSV10getQuatPtrEv
0x00000071008ee274,U,000008,_ZNK2al20ActorPoseKeeperTQGSV8getScaleEv
0x00000071008ee27c,U,000008,_ZNK2al20ActorPoseKeeperTQGSV11getVelocityEv
0x00000071008ee284,U,000008,_ZNK2al20ActorPoseKeeperTQGSV7getQuatEv
0x00000071008ee28c,U,000008,_ZNK2al20ActorPoseKeeperTQGSV10getGravityEv
0x00000071008ee294,U,000008,_ZN2al20ActorPoseKeeperTQGSV11getScalePtrEv
0x00000071008ee29c,U,000008,_ZN2al20ActorPoseKeeperTQGSV14getVelocityPtrEv
0x00000071008ee2a4,U,000008,_ZN2al20ActorPoseKeeperTQGSV10getQuatPtrEv
0x00000071008ee2ac,U,000008,_ZN2al20ActorPoseKeeperTQGSV13getGravityPtrEv
0x00000071008ee2b4,U,000008,_ZNK2al21ActorPoseKeeperTQGMSV8getScaleEv
0x00000071008ee2bc,U,000008,_ZNK2al21ActorPoseKeeperTQGMSV11getVelocityEv
0x00000071008ee2c4,U,000008,_ZNK2al21ActorPoseKeeperTQGMSV7getQuatEv
0x00000071008ee2cc,U,000008,_ZNK2al21ActorPoseKeeperTQGMSV10getGravityEv
0x00000071008ee2d4,U,000008,_ZNK2al21ActorPoseKeeperTQGMSV6getMtxEv
0x00000071008ee2dc,U,000008,_ZN2al21ActorPoseKeeperTQGMSV11getScalePtrEv
0x00000071008ee2e4,U,000008,_ZN2al21ActorPoseKeeperTQGMSV14getVelocityPtrEv
0x00000071008ee2ec,U,000008,_ZN2al21ActorPoseKeeperTQGMSV10getQuatPtrEv
0x00000071008ee2f4,U,000008,_ZN2al21ActorPoseKeeperTQGMSV13getGravityPtrEv
0x00000071008ee2fc,U,000008,_ZN2al21ActorPoseKeeperTQGMSV9getMtxPtrEv
0x00000071008ee164,O,000008,_ZNK2al20ActorPoseKeeperTRMSV9getRotateEv
0x00000071008ee16c,O,000008,_ZNK2al20ActorPoseKeeperTRMSV8getScaleEv
0x00000071008ee174,O,000008,_ZNK2al20ActorPoseKeeperTRMSV11getVelocityEv
0x00000071008ee17c,O,000008,_ZNK2al20ActorPoseKeeperTRMSV6getMtxEv
0x00000071008ee184,O,000008,_ZN2al20ActorPoseKeeperTRMSV12getRotatePtrEv
0x00000071008ee18c,O,000008,_ZN2al20ActorPoseKeeperTRMSV11getScalePtrEv
0x00000071008ee194,O,000008,_ZN2al20ActorPoseKeeperTRMSV14getVelocityPtrEv
0x00000071008ee19c,O,000008,_ZN2al20ActorPoseKeeperTRMSV9getMtxPtrEv
0x00000071008ee1a4,O,000008,_ZNK2al21ActorPoseKeeperTRGMSV9getRotateEv
0x00000071008ee1ac,O,000008,_ZNK2al21ActorPoseKeeperTRGMSV8getScaleEv
0x00000071008ee1b4,O,000008,_ZNK2al21ActorPoseKeeperTRGMSV11getVelocityEv
0x00000071008ee1bc,O,000008,_ZNK2al21ActorPoseKeeperTRGMSV10getGravityEv
0x00000071008ee1c4,O,000008,_ZNK2al21ActorPoseKeeperTRGMSV6getMtxEv
0x00000071008ee1cc,O,000008,_ZN2al21ActorPoseKeeperTRGMSV12getRotatePtrEv
0x00000071008ee1d4,O,000008,_ZN2al21ActorPoseKeeperTRGMSV11getScalePtrEv
0x00000071008ee1dc,O,000008,_ZN2al21ActorPoseKeeperTRGMSV14getVelocityPtrEv
0x00000071008ee1e4,O,000008,_ZN2al21ActorPoseKeeperTRGMSV13getGravityPtrEv
0x00000071008ee1ec,O,000008,_ZN2al21ActorPoseKeeperTRGMSV9getMtxPtrEv
0x00000071008ee1f4,O,000008,_ZNK2al19ActorPoseKeeperTFSV8getScaleEv
0x00000071008ee1fc,O,000008,_ZNK2al19ActorPoseKeeperTFSV11getVelocityEv
0x00000071008ee204,O,000008,_ZNK2al19ActorPoseKeeperTFSV8getFrontEv
0x00000071008ee20c,O,000008,_ZN2al19ActorPoseKeeperTFSV11getScalePtrEv
0x00000071008ee214,O,000008,_ZN2al19ActorPoseKeeperTFSV14getVelocityPtrEv
0x00000071008ee21c,O,000008,_ZN2al19ActorPoseKeeperTFSV11getFrontPtrEv
0x00000071008ee224,O,000008,_ZNK2al20ActorPoseKeeperTFUSV5getUpEv
0x00000071008ee22c,O,000008,_ZN2al20ActorPoseKeeperTFUSV8getUpPtrEv
0x00000071008ee234,O,000008,_ZNK2al20ActorPoseKeeperTFGSV10getGravityEv
0x00000071008ee23c,O,000008,_ZN2al20ActorPoseKeeperTFGSV13getGravityPtrEv
0x00000071008ee244,O,000008,_ZNK2al19ActorPoseKeeperTQSV8getScaleEv
0x00000071008ee24c,O,000008,_ZNK2al19ActorPoseKeeperTQSV11getVelocityEv
0x00000071008ee254,O,000008,_ZNK2al19ActorPoseKeeperTQSV7getQuatEv
0x00000071008ee25c,O,000008,_ZN2al19ActorPoseKeeperTQSV11getScalePtrEv
0x00000071008ee264,O,000008,_ZN2al19ActorPoseKeeperTQSV14getVelocityPtrEv
0x00000071008ee26c,O,000008,_ZN2al19ActorPoseKeeperTQSV10getQuatPtrEv
0x00000071008ee274,O,000008,_ZNK2al20ActorPoseKeeperTQGSV8getScaleEv
0x00000071008ee27c,O,000008,_ZNK2al20ActorPoseKeeperTQGSV11getVelocityEv
0x00000071008ee284,O,000008,_ZNK2al20ActorPoseKeeperTQGSV7getQuatEv
0x00000071008ee28c,O,000008,_ZNK2al20ActorPoseKeeperTQGSV10getGravityEv
0x00000071008ee294,O,000008,_ZN2al20ActorPoseKeeperTQGSV11getScalePtrEv
0x00000071008ee29c,O,000008,_ZN2al20ActorPoseKeeperTQGSV14getVelocityPtrEv
0x00000071008ee2a4,O,000008,_ZN2al20ActorPoseKeeperTQGSV10getQuatPtrEv
0x00000071008ee2ac,O,000008,_ZN2al20ActorPoseKeeperTQGSV13getGravityPtrEv
0x00000071008ee2b4,O,000008,_ZNK2al21ActorPoseKeeperTQGMSV8getScaleEv
0x00000071008ee2bc,O,000008,_ZNK2al21ActorPoseKeeperTQGMSV11getVelocityEv
0x00000071008ee2c4,O,000008,_ZNK2al21ActorPoseKeeperTQGMSV7getQuatEv
0x00000071008ee2cc,O,000008,_ZNK2al21ActorPoseKeeperTQGMSV10getGravityEv
0x00000071008ee2d4,O,000008,_ZNK2al21ActorPoseKeeperTQGMSV6getMtxEv
0x00000071008ee2dc,O,000008,_ZN2al21ActorPoseKeeperTQGMSV11getScalePtrEv
0x00000071008ee2e4,O,000008,_ZN2al21ActorPoseKeeperTQGMSV14getVelocityPtrEv
0x00000071008ee2ec,O,000008,_ZN2al21ActorPoseKeeperTQGMSV10getQuatPtrEv
0x00000071008ee2f4,O,000008,_ZN2al21ActorPoseKeeperTQGMSV13getGravityPtrEv
0x00000071008ee2fc,O,000008,_ZN2al21ActorPoseKeeperTQGMSV9getMtxPtrEv
0x00000071008ee304,U,000096,_ZN2al14initActorPoseTEPNS_9LiveActorERKN4sead7Vector3IfEE
0x00000071008ee364,U,000032,_ZN2al8setTransEPNS_9LiveActorERKN4sead7Vector3IfEE
0x00000071008ee384,U,000132,_ZN2al15initActorPoseTREPNS_9LiveActorERKN4sead7Vector3IfEES6_

Can't render this file because it is too large.

View File

@ -8,6 +8,8 @@ namespace al {
class ActorPoseKeeperBase {
public:
ActorPoseKeeperBase();
virtual const sead::Vector3f& getRotate() const;
virtual const sead::Vector3f& getScale() const;
virtual const sead::Vector3f& getVelocity() const;
@ -24,30 +26,36 @@ public:
virtual sead::Quatf* getQuatPtr();
virtual sead::Vector3f* getGravityPtr();
virtual sead::Matrix34f* getMtxPtr();
virtual void updatePoseTrans(const sead::Vector3f&);
virtual void updatePoseRotate(const sead::Vector3f&);
virtual void updatePoseQuat(const sead::Quatf&);
virtual void updatePoseMtx(const sead::Matrix34f&);
virtual void copyPose(const ActorPoseKeeperBase*);
virtual void calcBaseMtx(sead::Matrix34f*);
private:
virtual void updatePoseTrans(const sead::Vector3f& trans) = 0;
virtual void updatePoseRotate(const sead::Vector3f& rot) = 0;
virtual void updatePoseQuat(const sead::Quatf& quat) = 0;
virtual void updatePoseMtx(const sead::Matrix34f* mtx) = 0;
virtual void copyPose(const ActorPoseKeeperBase* other);
virtual void calcBaseMtx(sead::Matrix34f* mtx) const = 0;
protected: // protected so it's visible to all sub-classes (TFSV, TFGSV, ...)
sead::Vector3f mTrans{0, 0, 0};
static sead::Vector3f sDefaultVelocity;
};
class ActorPoseKeeperTFSV : public ActorPoseKeeperBase {
public:
virtual const sead::Vector3f& getFront() const override;
virtual sead::Vector3f* getFrontPtr() override;
virtual const sead::Vector3f& getScale() const override;
virtual sead::Vector3f* getScalePtr() override;
virtual const sead::Vector3f& getVelocity() const override;
virtual sead::Vector3f* getVelocityPtr() override;
virtual void updatePoseTrans(const sead::Vector3f&) override;
virtual void updatePoseRotate(const sead::Vector3f&) override;
virtual void updatePoseQuat(const sead::Quatf&) override;
virtual void updatePoseMtx(const sead::Matrix34f&) override;
virtual void calcBaseMtx(sead::Matrix34f*) override;
private:
ActorPoseKeeperTFSV();
const sead::Vector3f& getFront() const override;
sead::Vector3f* getFrontPtr() override;
const sead::Vector3f& getScale() const override;
sead::Vector3f* getScalePtr() override;
const sead::Vector3f& getVelocity() const override;
sead::Vector3f* getVelocityPtr() override;
void updatePoseTrans(const sead::Vector3f& trans) override;
void updatePoseRotate(const sead::Vector3f& rot) override;
void updatePoseQuat(const sead::Quatf& quat) override;
void updatePoseMtx(const sead::Matrix34f* mtx) override;
void calcBaseMtx(sead::Matrix34f* mtx) const override;
protected: // protected so it's visible to all sub-classes (TFGSV, TFUSV)
sead::Vector3f mFront = sead::Vector3f::ez;
sead::Vector3f mScale{1.0, 1.0, 1.0};
sead::Vector3f mVelocity{0.0, 0.0, 0.0};
@ -55,43 +63,50 @@ private:
class ActorPoseKeeperTFGSV : public ActorPoseKeeperTFSV {
public:
virtual const sead::Vector3f& getGravity() const override;
virtual sead::Vector3f* getGravityPtr() override;
virtual void updatePoseTrans(const sead::Vector3f&) override;
virtual void updatePoseRotate(const sead::Vector3f&) override;
virtual void updatePoseQuat(const sead::Quatf&) override;
virtual void updatePoseMtx(const sead::Matrix34f&) override;
virtual void calcBaseMtx(sead::Matrix34f*) override;
ActorPoseKeeperTFGSV();
const sead::Vector3f& getGravity() const override;
sead::Vector3f* getGravityPtr() override;
void updatePoseTrans(const sead::Vector3f& trans) override;
void updatePoseRotate(const sead::Vector3f& rot) override;
void updatePoseQuat(const sead::Quatf& quat) override;
void updatePoseMtx(const sead::Matrix34f* mtx) override;
void calcBaseMtx(sead::Matrix34f* mtx) const override;
private:
sead::Vector3f mGravity{0.0, -1.0, 0.0};
};
class ActorPoseKeeperTFUSV : public ActorPoseKeeperTFSV {
public:
virtual const sead::Vector3f& getUp() const override;
virtual sead::Vector3f* getUpPtr() override;
virtual void updatePoseTrans(const sead::Vector3f&) override;
virtual void updatePoseRotate(const sead::Vector3f&) override;
virtual void updatePoseQuat(const sead::Quatf&) override;
virtual void updatePoseMtx(const sead::Matrix34f&) override;
virtual void calcBaseMtx(sead::Matrix34f*) override;
ActorPoseKeeperTFUSV();
const sead::Vector3f& getUp() const override;
sead::Vector3f* getUpPtr() override;
void updatePoseTrans(const sead::Vector3f& trans) override;
void updatePoseRotate(const sead::Vector3f& rot) override;
void updatePoseQuat(const sead::Quatf& quat) override;
void updatePoseMtx(const sead::Matrix34f* mtx) override;
void calcBaseMtx(sead::Matrix34f* mtx) const override;
private:
sead::Vector3f mUp = sead::Vector3f::ey;
bool mIsFrontUp = false;
};
class ActorPoseKeeperTQSV : public ActorPoseKeeperBase {
public:
virtual const sead::Quatf& getQuat() const override;
virtual sead::Quatf* getQuatPtr() override;
virtual const sead::Vector3f& getScale() const override;
virtual sead::Vector3f* getScalePtr() override;
virtual const sead::Vector3f& getVelocity() const override;
virtual sead::Vector3f* getVelocityPtr() override;
virtual void updatePoseTrans(const sead::Vector3f&) override;
virtual void updatePoseRotate(const sead::Vector3f&) override;
virtual void updatePoseQuat(const sead::Quatf&) override;
virtual void updatePoseMtx(const sead::Matrix34f&) override;
virtual void calcBaseMtx(sead::Matrix34f*) override;
ActorPoseKeeperTQSV();
const sead::Quatf& getQuat() const override;
sead::Quatf* getQuatPtr() override;
const sead::Vector3f& getScale() const override;
sead::Vector3f* getScalePtr() override;
const sead::Vector3f& getVelocity() const override;
sead::Vector3f* getVelocityPtr() override;
void updatePoseTrans(const sead::Vector3f& trans) override;
void updatePoseRotate(const sead::Vector3f& rot) override;
void updatePoseQuat(const sead::Quatf& quat) override;
void updatePoseMtx(const sead::Matrix34f* mtx) override;
void calcBaseMtx(sead::Matrix34f* mtx) const override;
private:
sead::Quatf mQuat = sead::Quatf::unit;
sead::Vector3f mScale{1.0, 1.0, 1.0};
@ -100,19 +115,21 @@ private:
class ActorPoseKeeperTQGSV : public ActorPoseKeeperBase {
public:
virtual const sead::Quatf& getQuat() const override;
virtual sead::Quatf* getQuatPtr() override;
virtual const sead::Vector3f& getGravity() const override;
virtual sead::Vector3f* getGravityPtr() override;
virtual const sead::Vector3f& getScale() const override;
virtual sead::Vector3f* getScalePtr() override;
virtual const sead::Vector3f& getVelocity() const override;
virtual sead::Vector3f* getVelocityPtr() override;
virtual void updatePoseTrans(const sead::Vector3f&) override;
virtual void updatePoseRotate(const sead::Vector3f&) override;
virtual void updatePoseQuat(const sead::Quatf&) override;
virtual void updatePoseMtx(const sead::Matrix34f&) override;
virtual void calcBaseMtx(sead::Matrix34f*) override;
ActorPoseKeeperTQGSV();
const sead::Quatf& getQuat() const override;
sead::Quatf* getQuatPtr() override;
const sead::Vector3f& getGravity() const override;
sead::Vector3f* getGravityPtr() override;
const sead::Vector3f& getScale() const override;
sead::Vector3f* getScalePtr() override;
const sead::Vector3f& getVelocity() const override;
sead::Vector3f* getVelocityPtr() override;
void updatePoseTrans(const sead::Vector3f& trans) override;
void updatePoseRotate(const sead::Vector3f& rot) override;
void updatePoseQuat(const sead::Quatf& quat) override;
void updatePoseMtx(const sead::Matrix34f* mtx) override;
void calcBaseMtx(sead::Matrix34f* mtx) const override;
private:
sead::Quatf mQuat = sead::Quatf::unit;
sead::Vector3f mGravity{0.0, -1.0, 0.0};
@ -122,21 +139,23 @@ private:
class ActorPoseKeeperTQGMSV : public ActorPoseKeeperBase {
public:
virtual const sead::Quatf& getQuat() const override;
virtual sead::Quatf* getQuatPtr() override;
virtual const sead::Vector3f& getGravity() const override;
virtual sead::Vector3f* getGravityPtr() override;
virtual const sead::Matrix34f& getMtx() const override;
virtual sead::Matrix34f* getMtxPtr() override;
virtual const sead::Vector3f& getScale() const override;
virtual sead::Vector3f* getScalePtr() override;
virtual const sead::Vector3f& getVelocity() const override;
virtual sead::Vector3f* getVelocityPtr() override;
virtual void updatePoseTrans(const sead::Vector3f&) override;
virtual void updatePoseRotate(const sead::Vector3f&) override;
virtual void updatePoseQuat(const sead::Quatf&) override;
virtual void updatePoseMtx(const sead::Matrix34f&) override;
virtual void calcBaseMtx(sead::Matrix34f*) override;
ActorPoseKeeperTQGMSV();
const sead::Quatf& getQuat() const override;
sead::Quatf* getQuatPtr() override;
const sead::Vector3f& getGravity() const override;
sead::Vector3f* getGravityPtr() override;
const sead::Matrix34f& getMtx() const override;
sead::Matrix34f* getMtxPtr() override;
const sead::Vector3f& getScale() const override;
sead::Vector3f* getScalePtr() override;
const sead::Vector3f& getVelocity() const override;
sead::Vector3f* getVelocityPtr() override;
void updatePoseTrans(const sead::Vector3f& trans) override;
void updatePoseRotate(const sead::Vector3f& rot) override;
void updatePoseQuat(const sead::Quatf& quat) override;
void updatePoseMtx(const sead::Matrix34f* mtx) override;
void calcBaseMtx(sead::Matrix34f* mtx) const override;
private:
sead::Quatf mQuat = sead::Quatf::unit;
sead::Vector3f mGravity{0.0, -1.0, 0.0};
@ -147,68 +166,75 @@ private:
class ActorPoseKeeperTRSV : public ActorPoseKeeperBase {
public:
virtual const sead::Vector3f& getRotate() const override;
virtual sead::Vector3f* getRotatePtr() override;
virtual const sead::Vector3f& getScale() const override;
virtual sead::Vector3f* getScalePtr() override;
virtual const sead::Vector3f& getVelocity() const override;
virtual sead::Vector3f* getVelocityPtr() override;
virtual void updatePoseTrans(const sead::Vector3f&) override;
virtual void updatePoseRotate(const sead::Vector3f&) override;
virtual void updatePoseQuat(const sead::Quatf&) override;
virtual void updatePoseMtx(const sead::Matrix34f&) override;
virtual void calcBaseMtx(sead::Matrix34f*) override;
ActorPoseKeeperTRSV();
const sead::Vector3f& getRotate() const override;
sead::Vector3f* getRotatePtr() override;
const sead::Vector3f& getScale() const override;
sead::Vector3f* getScalePtr() override;
const sead::Vector3f& getVelocity() const override;
sead::Vector3f* getVelocityPtr() override;
void updatePoseTrans(const sead::Vector3f& trans) override;
void updatePoseRotate(const sead::Vector3f& rot) override;
void updatePoseQuat(const sead::Quatf& quat) override;
void updatePoseMtx(const sead::Matrix34f* mtx) override;
void calcBaseMtx(sead::Matrix34f* mtx) const override;
private:
sead::Vector3f mRotate; // y and z = 0, x = uninitialized?
sead::Vector3f mRotate{0.0, 0.0, 0.0};
sead::Vector3f mScale{1.0, 1.0, 1.0};
sead::Vector3f mVelocity{0.0, 0.0, 0.0};
};
class ActorPoseKeeperTRMSV : public ActorPoseKeeperBase {
public:
virtual const sead::Vector3f& getRotate() const override;
virtual sead::Vector3f* getRotatePtr() override;
virtual const sead::Matrix34f& getMtx() const override;
virtual sead::Matrix34f* getMtxPtr() override;
virtual const sead::Vector3f& getScale() const override;
virtual sead::Vector3f* getScalePtr() override;
virtual const sead::Vector3f& getVelocity() const override;
virtual sead::Vector3f* getVelocityPtr() override;
virtual void updatePoseTrans(const sead::Vector3f&) override;
virtual void updatePoseRotate(const sead::Vector3f&) override;
virtual void updatePoseQuat(const sead::Quatf&) override;
virtual void updatePoseMtx(const sead::Matrix34f&) override;
virtual void calcBaseMtx(sead::Matrix34f*) override;
ActorPoseKeeperTRMSV();
const sead::Vector3f& getRotate() const override;
sead::Vector3f* getRotatePtr() override;
const sead::Matrix34f& getMtx() const override;
sead::Matrix34f* getMtxPtr() override;
const sead::Vector3f& getScale() const override;
sead::Vector3f* getScalePtr() override;
const sead::Vector3f& getVelocity() const override;
sead::Vector3f* getVelocityPtr() override;
__attribute__((flatten))
void updatePoseTrans(const sead::Vector3f& trans) override;
void updatePoseRotate(const sead::Vector3f& rot) override;
void updatePoseQuat(const sead::Quatf& quat) override;
void updatePoseMtx(const sead::Matrix34f* mtx) override;
void calcBaseMtx(sead::Matrix34f* mtx) const override;
private:
sead::Vector3f mRotate; // y and z = 0, x = uninitialized?
sead::Vector3f mRotate{0.0, 0.0, 0.0};
sead::Vector3f mScale{1.0, 1.0, 1.0};
sead::Vector3f mVelocity{0.0, 0.0, 0.0};
sead::Matrix34f mMtx = sead::Matrix34f::ident;
sead::Matrix34f mMtx; // manually set in the ctor
};
class ActorPoseKeeperTRGMSV : public ActorPoseKeeperBase {
public:
virtual const sead::Vector3f& getRotate() const override;
virtual sead::Vector3f* getRotatePtr() override;
virtual const sead::Vector3f& getGravity() const override;
virtual sead::Vector3f* getGravityPtr() override;
virtual const sead::Matrix34f& getMtx() const override;
virtual sead::Matrix34f* getMtxPtr() override;
virtual const sead::Vector3f& getScale() const override;
virtual sead::Vector3f* getScalePtr() override;
virtual const sead::Vector3f& getVelocity() const override;
virtual sead::Vector3f* getVelocityPtr() override;
virtual void updatePoseTrans(const sead::Vector3f&) override;
virtual void updatePoseRotate(const sead::Vector3f&) override;
virtual void updatePoseQuat(const sead::Quatf&) override;
virtual void updatePoseMtx(const sead::Matrix34f&) override;
virtual void calcBaseMtx(sead::Matrix34f*) override;
ActorPoseKeeperTRGMSV();
const sead::Vector3f& getRotate() const override;
sead::Vector3f* getRotatePtr() override;
const sead::Vector3f& getGravity() const override;
sead::Vector3f* getGravityPtr() override;
const sead::Matrix34f& getMtx() const override;
sead::Matrix34f* getMtxPtr() override;
const sead::Vector3f& getScale() const override;
sead::Vector3f* getScalePtr() override;
const sead::Vector3f& getVelocity() const override;
sead::Vector3f* getVelocityPtr() override;
void updatePoseTrans(const sead::Vector3f& trans) override;
void updatePoseRotate(const sead::Vector3f& rot) override;
void updatePoseQuat(const sead::Quatf& quat) override;
void updatePoseMtx(const sead::Matrix34f* mtx) override;
void calcBaseMtx(sead::Matrix34f* mtx) const override;
private:
sead::Vector3f mRotate; // y and z = 0, x = uninitialized?
sead::Vector3f mRotate{0.0, 0.0, 0.0};
sead::Vector3f mGravity{0.0, -1.0, 0.0};
sead::Vector3f mScale{1.0, 1.0, 1.0};
sead::Vector3f mVelocity{0.0, 0.0, 0.0};
sead::Matrix34f mMtx = sead::Matrix34f::ident;
sead::Matrix34f mMtx;
};
} // namespace al

View File

@ -1,61 +0,0 @@
#pragma once
#include <math/seadMatrix.h>
#include <math/seadQuat.h>
#include <math/seadVector.h>
namespace al {
class ActorPoseKeeperBase {
public:
ActorPoseKeeperBase();
virtual const sead::Vector3<float>& getRotate() const;
virtual const sead::Vector3<float>& getScale() const;
virtual const sead::Vector3<float>& getVelocity() const;
virtual const sead::Vector3<float>& getFront() const;
virtual const sead::Vector3<float>& getUp() const;
virtual const sead::Quat<float>& getQuat() const;
virtual const sead::Vector3<float>& getGravity() const;
virtual const sead::Matrix34<float>& getMtx() const;
virtual sead::Vector3<float>* getRotatePtr();
virtual sead::Vector3<float>* getScalePtr();
virtual sead::Vector3<float>* getVelocityPtr();
virtual sead::Vector3<float>* getFrontPtr();
virtual sead::Vector3<float>* getUpPtr();
virtual sead::Quat<float>* getQuatPtr();
virtual sead::Vector3<float>* getGravityPtr();
virtual sead::Matrix34<float>* getMtxPtr();
virtual void updatePoseTrans(const sead::Vector3<float>&) = 0;
virtual void updatePoseRotate(const sead::Vector3<float>&) = 0;
virtual void updatePoseQuat(const sead::Quat<float>&) = 0;
virtual void updatePoseMtx(const sead::Matrix34<float>*) = 0;
virtual void copyPose(const al::ActorPoseKeeperBase*);
virtual void calcBaseMtx(sead::Matrix34<float>*) = 0;
sead::Vector3<float> mTranslation; // _8
static const sead::Vector3<float> sDefaultVelocity;
};
class ActorPoseKeeperTRSV : public ActorPoseKeeperBase {
public:
virtual const sead::Vector3<float>& getRotate() const;
virtual const sead::Vector3<float>& getScale() const;
virtual const sead::Vector3<float>& getVelocity() const;
virtual sead::Vector3<float>* getRotatePtr();
virtual sead::Vector3<float>* getScalePtr();
virtual sead::Vector3<float>* getVelocityPtr();
virtual void updatePoseTrans(const sead::Vector3<float>&);
virtual void updatePoseRotate(const sead::Vector3<float>&);
virtual void updatePoseQuat(const sead::Quat<float>&);
virtual void updatePoseMtx(const sead::Matrix34<float>*);
virtual void calcBaseMtx(sead::Matrix34<float>*);
sead::Vector3<float> mRotation; // _14
sead::Vector3<float> mScale; // _20
sead::Vector3<float> mVelocity; // _2C
};
}; // namespace al

View File

@ -1,5 +1,6 @@
#pragma once
#include <math/seadMatrix.h>
#include <math/seadQuat.h>
#include <math/seadVector.h>
@ -13,6 +14,11 @@ void turnVecToVecDegree(sead::Vector3f*, const sead::Vector3f&, const sead::Vect
void turnVecToVecRate(sead::Vector3f*, const sead::Vector3f&, const sead::Vector3f&, float);
void calcQuatFront(sead::Vector3f*, const sead::Quatf&);
void calcQuatUp(sead::Vector3f*, const sead::Quatf&);
void makeQuatFrontUp(sead::Quatf*, const sead::Vector3f&, const sead::Vector3f&);
void makeMtxFrontUpPos(sead::Matrix34f*, const sead::Vector3f&, const sead::Vector3f&, const sead::Vector3f&);
void makeMtxUpFrontPos(sead::Matrix34f*, const sead::Vector3f&, const sead::Vector3f&, const sead::Vector3f&);
void makeMtxRotateTrans(sead::Matrix34f*, const sead::Vector3f&, const sead::Vector3f&);
} // namespace al

View File

@ -9,7 +9,6 @@ add_subdirectory(iuse)
add_subdirectory(LiveActor)
add_subdirectory(nerve)
add_subdirectory(player)
add_subdirectory(pose)
add_subdirectory(resource)
add_subdirectory(scene)
add_subdirectory(sensor)

View File

@ -0,0 +1,482 @@
#include "al/LiveActor/ActorPoseKeeper.h"
#include "al/util/LiveActorUtil.h"
#include "al/util/VectorUtil.h"
namespace al {
static void rotationAndTranslationFromMatrix(sead::Vector3f& trans, sead::Vector3f& rot,
const sead::Matrix34f* mtx) {
sead::Vector3f tmp;
mtx->getRotation(tmp);
rot.set(sead::Mathf::rad2deg(tmp.x), sead::Mathf::rad2deg(tmp.y), sead::Mathf::rad2deg(tmp.z));
mtx->getTranslation(trans);
}
ActorPoseKeeperBase::ActorPoseKeeperBase() = default;
const sead::Vector3f& ActorPoseKeeperBase::getRotate() const {
return sead::Vector3f::zero;
}
const sead::Vector3f& ActorPoseKeeperBase::getScale() const {
return sead::Vector3f::ones;
}
const sead::Vector3f& ActorPoseKeeperBase::getVelocity() const {
return sead::Vector3f::zero;
}
const sead::Vector3f& ActorPoseKeeperBase::getFront() const {
return sead::Vector3f::ez;
}
const sead::Vector3f& ActorPoseKeeperBase::getUp() const {
return sead::Vector3f::ey;
}
const sead::Quatf& ActorPoseKeeperBase::getQuat() const {
return sead::Quatf::unit;
}
const sead::Vector3f& ActorPoseKeeperBase::getGravity() const {
return sDefaultVelocity;
}
const sead::Matrix34f& ActorPoseKeeperBase::getMtx() const {
return sead::Matrix34f::ident;
}
sead::Vector3f* ActorPoseKeeperBase::getRotatePtr() {
return nullptr;
}
sead::Vector3f* ActorPoseKeeperBase::getScalePtr() {
return nullptr;
}
sead::Vector3f* ActorPoseKeeperBase::getVelocityPtr() {
return nullptr;
}
sead::Vector3f* ActorPoseKeeperBase::getFrontPtr() {
return nullptr;
}
sead::Vector3f* ActorPoseKeeperBase::getUpPtr() {
return nullptr;
}
sead::Quatf* ActorPoseKeeperBase::getQuatPtr() {
return nullptr;
}
sead::Vector3f* ActorPoseKeeperBase::getGravityPtr() {
return nullptr;
}
sead::Matrix34f* ActorPoseKeeperBase::getMtxPtr() {
return nullptr;
}
void ActorPoseKeeperBase::copyPose(const ActorPoseKeeperBase* other) {
sead::Matrix34f mtx;
mtx = {1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0};
other->calcBaseMtx(&mtx);
updatePoseMtx(&mtx);
}
void ActorPoseKeeperBase::updatePoseRotate(const sead::Vector3f& rot) {
sead::Quatf quat;
quat.setRPY(sead::Mathf::deg2rad(rot.x), sead::Mathf::deg2rad(rot.y),
sead::Mathf::deg2rad(rot.z));
updatePoseQuat(quat);
}
ActorPoseKeeperTFSV::ActorPoseKeeperTFSV() = default;
const sead::Vector3f& ActorPoseKeeperTFSV::getFront() const {
return mFront;
}
sead::Vector3f* ActorPoseKeeperTFSV::getFrontPtr() {
return &mFront;
}
const sead::Vector3f& ActorPoseKeeperTFSV::getScale() const {
return mScale;
}
sead::Vector3f* ActorPoseKeeperTFSV::getScalePtr() {
return &mScale;
}
const sead::Vector3f& ActorPoseKeeperTFSV::getVelocity() const {
return mVelocity;
}
sead::Vector3f* ActorPoseKeeperTFSV::getVelocityPtr() {
return &mVelocity;
}
void ActorPoseKeeperTFSV::updatePoseTrans(const sead::Vector3f& trans) {
mTrans = trans;
}
void ActorPoseKeeperTFSV::updatePoseRotate(const sead::Vector3f& rot) {
sead::Quatf quat;
quat.setRPY(sead::Mathf::deg2rad(rot.x), sead::Mathf::deg2rad(rot.y),
sead::Mathf::deg2rad(rot.z));
calcQuatFront(&mFront, quat);
}
void ActorPoseKeeperTFSV::updatePoseQuat(const sead::Quatf& quat) {
calcQuatFront(&mFront, quat);
}
void ActorPoseKeeperTFSV::updatePoseMtx(const sead::Matrix34f* mtx) {
mtx->getBase(mFront, 2);
mtx->getBase(mTrans, 3);
}
void ActorPoseKeeperTFSV::calcBaseMtx(sead::Matrix34f* mtx) const {
makeMtxFrontUpPos(mtx, mFront, -getGravity(), mTrans);
}
ActorPoseKeeperTFGSV::ActorPoseKeeperTFGSV() = default;
const sead::Vector3f& ActorPoseKeeperTFGSV::getGravity() const {
return mGravity;
}
sead::Vector3f* ActorPoseKeeperTFGSV::getGravityPtr() {
return &mGravity;
}
void ActorPoseKeeperTFGSV::updatePoseTrans(const sead::Vector3f& trans) {
ActorPoseKeeperTFSV::updatePoseTrans(trans);
}
void ActorPoseKeeperTFGSV::updatePoseRotate(const sead::Vector3f& rot) {
sead::Quatf quat;
quat.setRPY(sead::Mathf::deg2rad(rot.x), sead::Mathf::deg2rad(rot.y),
sead::Mathf::deg2rad(rot.z));
ActorPoseKeeperTFSV::updatePoseQuat(quat);
calcQuatUp(&mGravity, quat);
mGravity *= -1;
}
void ActorPoseKeeperTFGSV::updatePoseQuat(const sead::Quatf& quat) {
ActorPoseKeeperTFSV::updatePoseQuat(quat);
calcQuatUp(&mGravity, quat);
mGravity *= -1;
}
void ActorPoseKeeperTFGSV::updatePoseMtx(const sead::Matrix34f* mtx) {
ActorPoseKeeperTFSV::updatePoseMtx(mtx);
mtx->getBase(mGravity, 1);
mGravity *= -1;
}
void ActorPoseKeeperTFGSV::calcBaseMtx(sead::Matrix34f* mtx) const {
makeMtxUpFrontPos(mtx, -getGravity(), getFront(), mTrans);
}
ActorPoseKeeperTFUSV::ActorPoseKeeperTFUSV() = default;
const sead::Vector3f& ActorPoseKeeperTFUSV::getUp() const {
return mUp;
}
sead::Vector3f* ActorPoseKeeperTFUSV::getUpPtr() {
return &mUp;
}
void ActorPoseKeeperTFUSV::updatePoseTrans(const sead::Vector3f& trans) {
ActorPoseKeeperTFSV::updatePoseTrans(trans);
}
void ActorPoseKeeperTFUSV::updatePoseRotate(const sead::Vector3f& rot) {
sead::Quatf quat;
quat.setRPY(sead::Mathf::deg2rad(rot.x), sead::Mathf::deg2rad(rot.y),
sead::Mathf::deg2rad(rot.z));
ActorPoseKeeperTFSV::updatePoseQuat(quat);
calcQuatUp(&mUp, quat);
}
void ActorPoseKeeperTFUSV::updatePoseQuat(const sead::Quatf& quat) {
ActorPoseKeeperTFSV::updatePoseQuat(quat);
calcQuatUp(&mUp, quat);
}
void ActorPoseKeeperTFUSV::updatePoseMtx(const sead::Matrix34f* mtx) {
ActorPoseKeeperTFSV::updatePoseMtx(mtx);
mtx->getBase(mUp, 1);
}
void ActorPoseKeeperTFUSV::calcBaseMtx(sead::Matrix34f* mtx) const {
if (mIsFrontUp)
makeMtxFrontUpPos(mtx, getFront(), getUp(), mTrans);
else
makeMtxUpFrontPos(mtx, getUp(), getFront(), mTrans);
}
ActorPoseKeeperTQSV::ActorPoseKeeperTQSV() = default;
const sead::Quatf& ActorPoseKeeperTQSV::getQuat() const {
return mQuat;
}
sead::Quatf* ActorPoseKeeperTQSV::getQuatPtr() {
return &mQuat;
}
const sead::Vector3f& ActorPoseKeeperTQSV::getScale() const {
return mScale;
}
sead::Vector3f* ActorPoseKeeperTQSV::getScalePtr() {
return &mScale;
}
const sead::Vector3f& ActorPoseKeeperTQSV::getVelocity() const {
return mVelocity;
}
sead::Vector3f* ActorPoseKeeperTQSV::getVelocityPtr() {
return &mVelocity;
}
void ActorPoseKeeperTQSV::updatePoseTrans(const sead::Vector3f& trans) {
mTrans = trans;
}
void ActorPoseKeeperTQSV::updatePoseRotate(const sead::Vector3f& rot) {
mQuat.setRPY(sead::Mathf::deg2rad(rot.x), sead::Mathf::deg2rad(rot.y),
sead::Mathf::deg2rad(rot.z));
}
void ActorPoseKeeperTQSV::updatePoseQuat(const sead::Quatf& quat) {
mQuat.x = quat.x;
mQuat.y = quat.y;
mQuat.z = quat.z;
mQuat.w = quat.w;
}
void ActorPoseKeeperTQSV::updatePoseMtx(const sead::Matrix34f* mtx) {
mtx->toQuat(mQuat);
mtx->getBase(mTrans, 3);
}
void ActorPoseKeeperTQSV::calcBaseMtx(sead::Matrix34f* mtx) const {
mtx->makeQT(mQuat, mTrans);
}
ActorPoseKeeperTQGSV::ActorPoseKeeperTQGSV() = default;
const sead::Quatf& ActorPoseKeeperTQGSV::getQuat() const {
return mQuat;
}
sead::Quatf* ActorPoseKeeperTQGSV::getQuatPtr() {
return &mQuat;
}
const sead::Vector3f& ActorPoseKeeperTQGSV::getGravity() const {
return mGravity;
}
sead::Vector3f* ActorPoseKeeperTQGSV::getGravityPtr() {
return &mGravity;
}
const sead::Vector3f& ActorPoseKeeperTQGSV::getScale() const {
return mScale;
}
sead::Vector3f* ActorPoseKeeperTQGSV::getScalePtr() {
return &mScale;
}
const sead::Vector3f& ActorPoseKeeperTQGSV::getVelocity() const {
return mVelocity;
}
sead::Vector3f* ActorPoseKeeperTQGSV::getVelocityPtr() {
return &mVelocity;
}
void ActorPoseKeeperTQGSV::updatePoseTrans(const sead::Vector3f& trans) {
mTrans = trans;
}
void ActorPoseKeeperTQGSV::updatePoseRotate(const sead::Vector3f& rot) {
mQuat.setRPY(sead::Mathf::deg2rad(rot.x), sead::Mathf::deg2rad(rot.y),
sead::Mathf::deg2rad(rot.z));
}
void ActorPoseKeeperTQGSV::updatePoseQuat(const sead::Quatf& quat) {
mQuat.x = quat.x;
mQuat.y = quat.y;
mQuat.z = quat.z;
mQuat.w = quat.w;
}
void ActorPoseKeeperTQGSV::updatePoseMtx(const sead::Matrix34f* mtx) {
mtx->toQuat(mQuat);
mtx->getTranslation(mTrans);
}
void ActorPoseKeeperTQGSV::calcBaseMtx(sead::Matrix34f* mtx) const {
mtx->makeQT(mQuat, mTrans);
}
ActorPoseKeeperTQGMSV::ActorPoseKeeperTQGMSV() = default;
const sead::Quatf& ActorPoseKeeperTQGMSV::getQuat() const {
return mQuat;
}
sead::Quatf* ActorPoseKeeperTQGMSV::getQuatPtr() {
return &mQuat;
}
const sead::Vector3f& ActorPoseKeeperTQGMSV::getGravity() const {
return mGravity;
}
sead::Vector3f* ActorPoseKeeperTQGMSV::getGravityPtr() {
return &mGravity;
}
const sead::Matrix34f& ActorPoseKeeperTQGMSV::getMtx() const {
return mMtx;
}
sead::Matrix34f* ActorPoseKeeperTQGMSV::getMtxPtr() {
return &mMtx;
}
const sead::Vector3f& ActorPoseKeeperTQGMSV::getScale() const {
return mScale;
}
sead::Vector3f* ActorPoseKeeperTQGMSV::getScalePtr() {
return &mScale;
}
const sead::Vector3f& ActorPoseKeeperTQGMSV::getVelocity() const {
return mVelocity;
}
sead::Vector3f* ActorPoseKeeperTQGMSV::getVelocityPtr() {
return &mVelocity;
}
void ActorPoseKeeperTQGMSV::updatePoseTrans(const sead::Vector3f& trans) {
mTrans = trans;
mMtx.makeQT(mQuat, mTrans);
}
void ActorPoseKeeperTQGMSV::updatePoseRotate(const sead::Vector3f& rot) {
mQuat.setRPY(sead::Mathf::deg2rad(rot.x), sead::Mathf::deg2rad(rot.y),
sead::Mathf::deg2rad(rot.z));
mMtx.makeQT(mQuat, mTrans);
}
void ActorPoseKeeperTQGMSV::updatePoseQuat(const sead::Quatf& quat) {
mQuat.x = quat.x;
mQuat.y = quat.y;
mQuat.z = quat.z;
mQuat.w = quat.w;
mMtx.makeQT(mQuat, mTrans);
}
void ActorPoseKeeperTQGMSV::updatePoseMtx(const sead::Matrix34f* mtx) {
mtx->toQuat(mQuat);
mtx->getTranslation(mTrans);
mMtx.makeQT(mQuat, mTrans);
}
void ActorPoseKeeperTQGMSV::calcBaseMtx(sead::Matrix34f* mtx) const {
*mtx = mMtx;
}
ActorPoseKeeperTRSV::ActorPoseKeeperTRSV() = default;
const sead::Vector3f& ActorPoseKeeperTRSV::getRotate() const {
return mRotate;
}
sead::Vector3f* ActorPoseKeeperTRSV::getRotatePtr() {
return &mRotate;
}
const sead::Vector3f& ActorPoseKeeperTRSV::getScale() const {
return mScale;
}
sead::Vector3f* ActorPoseKeeperTRSV::getScalePtr() {
return &mScale;
}
const sead::Vector3f& ActorPoseKeeperTRSV::getVelocity() const {
return mVelocity;
}
sead::Vector3f* ActorPoseKeeperTRSV::getVelocityPtr() {
return &mVelocity;
}
void ActorPoseKeeperTRSV::updatePoseTrans(const sead::Vector3f& trans) {
mTrans = trans;
}
void ActorPoseKeeperTRSV::updatePoseRotate(const sead::Vector3f& rot) {
mRotate = rot;
}
void ActorPoseKeeperTRSV::updatePoseQuat(const sead::Quatf& quat) {
sead::Vector3f tmp;
quat.calcRPY(tmp);
mRotate = {sead::Mathf::rad2deg(tmp.x), sead::Mathf::rad2deg(tmp.y),
sead::Mathf::rad2deg(tmp.z)};
}
void ActorPoseKeeperTRSV::updatePoseMtx(const sead::Matrix34f* mtx) {
rotationAndTranslationFromMatrix(mTrans, mRotate, mtx);
}
void ActorPoseKeeperTRSV::calcBaseMtx(sead::Matrix34f* mtx) const {
al::makeMtxRotateTrans(mtx, getRotate(), mTrans);
}
ActorPoseKeeperTRMSV::ActorPoseKeeperTRMSV() {
mMtx = sead::Matrix34f::ident;
}
const sead::Vector3f& ActorPoseKeeperTRMSV::getRotate() const {
return mRotate;
}
sead::Vector3f* ActorPoseKeeperTRMSV::getRotatePtr() {
return &mRotate;
}
const sead::Matrix34f& ActorPoseKeeperTRMSV::getMtx() const {
return mMtx;
}
sead::Matrix34f* ActorPoseKeeperTRMSV::getMtxPtr() {
return &mMtx;
}
const sead::Vector3f& ActorPoseKeeperTRMSV::getScale() const {
return mScale;
}
sead::Vector3f* ActorPoseKeeperTRMSV::getScalePtr() {
return &mScale;
}
const sead::Vector3f& ActorPoseKeeperTRMSV::getVelocity() const {
return mVelocity;
}
sead::Vector3f* ActorPoseKeeperTRMSV::getVelocityPtr() {
return &mVelocity;
}
void ActorPoseKeeperTRMSV::updatePoseTrans(const sead::Vector3f& trans) {
mTrans = trans;
sead::Vector3f rot = getRotate() * (sead::numbers::pi / 180);
mMtx.makeRT(rot, mTrans);
}
void ActorPoseKeeperTRMSV::updatePoseRotate(const sead::Vector3f& rot) {
mRotate = rot;
sead::Vector3f rot2 = getRotate() * (sead::numbers::pi / 180);
mMtx.makeRT(rot2, mTrans);
}
void ActorPoseKeeperTRMSV::updatePoseQuat(const sead::Quatf& quat) {
sead::Vector3f tmp;
quat.calcRPY(tmp);
mRotate = tmp * (180 / sead::numbers::pi);
sead::Vector3f rot = getRotate() * (sead::numbers::pi / 180);
mMtx.makeRT(rot, mTrans);
}
void ActorPoseKeeperTRMSV::updatePoseMtx(const sead::Matrix34f* mtx) {
mMtx = *mtx;
rotationAndTranslationFromMatrix(mTrans, mRotate, mtx);
}
void ActorPoseKeeperTRMSV::calcBaseMtx(sead::Matrix34f* mtx) const {
*mtx = mMtx;
}
// NON_MATCHING: mismatch about storing mGravity
ActorPoseKeeperTRGMSV::ActorPoseKeeperTRGMSV() {
mMtx = sead::Matrix34f::ident;
}
const sead::Vector3f& ActorPoseKeeperTRGMSV::getRotate() const {
return mRotate;
}
sead::Vector3f* ActorPoseKeeperTRGMSV::getRotatePtr() {
return &mRotate;
}
const sead::Vector3f& ActorPoseKeeperTRGMSV::getGravity() const {
return mGravity;
}
sead::Vector3f* ActorPoseKeeperTRGMSV::getGravityPtr() {
return &mGravity;
}
const sead::Matrix34f& ActorPoseKeeperTRGMSV::getMtx() const {
return mMtx;
}
sead::Matrix34f* ActorPoseKeeperTRGMSV::getMtxPtr() {
return &mMtx;
}
const sead::Vector3f& ActorPoseKeeperTRGMSV::getScale() const {
return mScale;
}
sead::Vector3f* ActorPoseKeeperTRGMSV::getScalePtr() {
return &mScale;
}
const sead::Vector3f& ActorPoseKeeperTRGMSV::getVelocity() const {
return mVelocity;
}
sead::Vector3f* ActorPoseKeeperTRGMSV::getVelocityPtr() {
return &mVelocity;
}
void ActorPoseKeeperTRGMSV::updatePoseTrans(const sead::Vector3f& trans) {
mTrans = trans;
sead::Vector3f rot = getRotate() * (sead::numbers::pi / 180);
mMtx.makeRT(rot, mTrans);
}
void ActorPoseKeeperTRGMSV::updatePoseRotate(const sead::Vector3f& rot) {
mRotate = rot;
sead::Vector3f rot2 = getRotate() * (sead::numbers::pi / 180);
mMtx.makeRT(rot2, mTrans);
}
void ActorPoseKeeperTRGMSV::updatePoseQuat(const sead::Quatf& quat) {
sead::Vector3f tmp;
quat.calcRPY(tmp);
mRotate = tmp * (180 / sead::numbers::pi);
sead::Vector3f rot = getRotate() * (sead::numbers::pi / 180);
mMtx.makeRT(rot, mTrans);
}
void ActorPoseKeeperTRGMSV::updatePoseMtx(const sead::Matrix34f* mtx) {
mMtx = *mtx;
rotationAndTranslationFromMatrix(mTrans, mRotate, mtx);
}
void ActorPoseKeeperTRGMSV::calcBaseMtx(sead::Matrix34f* mtx) const {
*mtx = mMtx;
}
} // namespace al

View File

@ -1,4 +1,5 @@
target_sources(odyssey PRIVATE
ActorPoseKeeper.cpp
DepthShadowMapCtrl.cpp
LiveActor.cpp
LiveActorFlag.cpp

View File

@ -1,105 +0,0 @@
#include "al/pose/ActorPoseKeeper.h"
namespace al {
const sead::Vector3<float>& ActorPoseKeeperBase::getRotate() const {
return sead::Vector3<float>::zero;
}
const sead::Vector3<float>& ActorPoseKeeperBase::getScale() const {
return sead::Vector3<float>::ones;
}
const sead::Vector3<float>& ActorPoseKeeperBase::getVelocity() const {
return sead::Vector3<float>::zero;
}
const sead::Vector3<float>& ActorPoseKeeperBase::getFront() const {
return sead::Vector3<float>::ez;
}
const sead::Vector3<float>& ActorPoseKeeperBase::getUp() const {
return sead::Vector3<float>::ey;
}
const sead::Quat<float>& ActorPoseKeeperBase::getQuat() const {
return sead::Quat<float>::unit;
}
const sead::Vector3<float>& ActorPoseKeeperBase::getGravity() const {
return sDefaultVelocity;
}
const sead::Matrix34<float>& ActorPoseKeeperBase::getMtx() const {
return sead::Matrix34<float>::ident;
}
sead::Vector3<float>* ActorPoseKeeperBase::getRotatePtr() {
return nullptr;
}
sead::Vector3<float>* ActorPoseKeeperBase::getScalePtr() {
return nullptr;
}
sead::Vector3<float>* ActorPoseKeeperBase::getVelocityPtr() {
return nullptr;
}
sead::Vector3<float>* ActorPoseKeeperBase::getFrontPtr() {
return nullptr;
}
sead::Vector3<float>* ActorPoseKeeperBase::getUpPtr() {
return nullptr;
}
sead::Quat<float>* ActorPoseKeeperBase::getQuatPtr() {
return nullptr;
}
sead::Vector3<float>* ActorPoseKeeperBase::getGravityPtr() {
return nullptr;
}
sead::Matrix34<float>* ActorPoseKeeperBase::getMtxPtr() {
return nullptr;
}
/* ActorPoseKeeperTRSV (Translation, Rotation, Scale, Velocity) */
const sead::Vector3<float>& ActorPoseKeeperTRSV::getRotate() const {
return mRotation;
}
const sead::Vector3<float>& ActorPoseKeeperTRSV::getScale() const {
return mScale;
}
const sead::Vector3<float>& ActorPoseKeeperTRSV::getVelocity() const {
return mVelocity;
}
sead::Vector3<float>* ActorPoseKeeperTRSV::getRotatePtr() {
return &mRotation;
}
sead::Vector3<float>* ActorPoseKeeperTRSV::getScalePtr() {
return &mScale;
}
sead::Vector3<float>* ActorPoseKeeperTRSV::getVelocityPtr() {
return &mVelocity;
}
void ActorPoseKeeperTRSV::updatePoseTrans(const sead::Vector3<float>& rTrans) {
mTranslation.x = rTrans.x;
mTranslation.y = rTrans.y;
mTranslation.z = rTrans.z;
}
void ActorPoseKeeperTRSV::updatePoseRotate(const sead::Vector3<float>& rRotation) {
mRotation.x = rRotation.x;
mRotation.y = rRotation.y;
mRotation.z = rRotation.z;
}
}; // namespace al

View File

@ -1,3 +0,0 @@
target_sources(odyssey PRIVATE
ActorPoseKeeper.cpp
)