template out lyt_animation

This commit is contained in:
elijah-thomas774
2024-06-08 15:11:13 -04:00
parent 60f795a9d6
commit f7e702e159
9 changed files with 387 additions and 49 deletions
+3
View File
@@ -381,6 +381,9 @@ nw4r/lyt/lyt_drawInfo.cpp:
.data start:0x8056E7A8 end:0x8056E7B4
.sdata2 start:0x8057F2B8 end:0x8057F2C0
nw4r/lyt/lyt_animation.cpp:
.text start:0x80490A40 end:0x80491FF4
nw4r/lyt/lyt_resourceAccessor.cpp:
.text start:0x80492000 end:0x80492058
.data start:0x8056E7E0 end:0x8056E7F8
+1
View File
@@ -363,6 +363,7 @@ config.libs = [
Object(Matching, "nw4r/lyt/lyt_material.cpp"),
Object(Matching, "nw4r/lyt/lyt_texMap.cpp"),
Object(Matching, "nw4r/lyt/lyt_drawInfo.cpp"),
Object(NonMatching, "nw4r/lyt/lyt_animation.cpp"),
Object(Matching, "nw4r/lyt/lyt_resourceAccessor.cpp"),
Object(Matching, "nw4r/lyt/lyt_arcResourceAccessor.cpp"),
Object(Matching, "nw4r/lyt/lyt_common.cpp"),
+53 -24
View File
@@ -2,12 +2,38 @@
#define NW4R_LYT_ANIMATION_H
#include "common.h"
#include <nw4r/lyt/lyt_common.h>
#include <nw4r/lyt/lyt_material.h>
#include <nw4r/lyt/lyt_pane.h>
#include <nw4r/lyt/lyt_resourceAccessor.h>
#include <nw4r/lyt/lyt_types.h>
#include <nw4r/ut/ut_LinkList.h>
namespace nw4r {
namespace lyt {
class AnimTransform {
public:
AnimTransform();
u16 GetFrameSize() const;
bool IsLoopData() const;
virtual ~AnimTransform() = 0; // at 0x08
virtual void SetResource(const res::AnimationBlock *pRes, ResourceAccessor *pResAccessor) = 0; // at 0x0C
virtual void SetResource(const res::AnimationBlock *pRes, ResourceAccessor *pResAccessor, //
u16 animNum) = 0; // at 0x10
virtual void Bind(Pane *pPane, bool bRecursive, bool bDisable) = 0; // at 0x14
virtual void Bind(Material *pMaterial, bool bDisable) = 0; // at 0x18
virtual void Animate(u32 idx, Pane *pPane) = 0; // at 0x1C
virtual void Animate(u32 idx, Material *pMaterial) = 0; // at 0x20
res::AnimationBlock *GetAnimResource() const {
return mpRes;
}
ut::LinkListNode mLink; // at 0x4
protected:
res::AnimationBlock *mpRes; // at 0xC
f32 mFrame; // at 0x10
};
class AnimResource {
public:
@@ -18,7 +44,7 @@ public:
void Set(const void *anmResBuf);
void Init();
u16 GetGroupNum() const;
const AnimationGroupRef *GetGroupArray() const;
AnimationGroupRef *GetGroupArray() const;
bool IsDescendingBind() const;
u16 GetAnimationShareInfoNum() const;
AnimationShareInfo *GetAnimationShareInfoArray() const;
@@ -42,6 +68,28 @@ private:
const res::AnimationShareBlock *mpShareBlock; // at 0x0C
};
class AnimTransformBasic : public AnimTransform {
public:
AnimTransformBasic();
AnimationLink *FindUnbindLink(AnimationLink *pLink);
virtual ~AnimTransformBasic(); // at 0x08
virtual void SetResource(const res::AnimationBlock *pRes, ResourceAccessor *pResAccessor); // at 0x0C
virtual void SetResource(const res::AnimationBlock *pRes, ResourceAccessor *pResAccessor, u16 animNum); // at 0x10
virtual void Bind(Pane *pPane, bool bRecursive, bool bDisable); // at 0x14
virtual void Bind(Material *pMaterial, bool bDisable); // at 0x18
virtual void Animate(u32 idx, Pane *pPane); // at 0x1C
virtual void Animate(u32 idx, Material *pMaterial); // at 0x20
template <typename T>
AnimationLink *Bind(T *pTarget, AnimationLink *pAnimLink, u16 idx, bool bDisable);
private:
void *mpFileResAry; // at 0x14
AnimationLink *mAnimLinkAry; // at 0x18
u16 mAnimLinkNum; // at 0x1C
};
namespace detail {
class AnimPaneTree {
public:
@@ -68,30 +116,11 @@ private:
u8 mAnimMatCnt; // at 0x26
};
} // namespace detail
AnimationLink *FindAnimationLink(ut::LinkList<AnimationLink, 0> *pAnimList, AnimTransform *pAnimTrans);
AnimationLink *FindAnimationLink(ut::LinkList<AnimationLink, 0> *pAnimList, const AnimResource &animRes);
void UnbindAnimationLink(ut::LinkList<AnimationLink, 0> *pAnimList, AnimTransform *pAnimTrans);
void UnbindAnimationLink(ut::LinkList<AnimationLink, 0> *pAnimList, const AnimResource &animRes);
class AnimTransformBasic : public AnimTransform {
public:
AnimTransformBasic();
virtual ~AnimTransformBasic(); // at 0x08
virtual void SetResource(const res::AnimationBlock *pRes, ResourceAccessor *pResAccessor); // at 0x0C
virtual void SetResource(const res::AnimationBlock *pRes, ResourceAccessor *pResAccessor, u16 animNum); // at 0x10
virtual void Bind(Pane *pPane, bool bRecursive); // at 0x14
virtual void Bind(Material *pMaterial, bool bDisable); // at 0x18
virtual void Animate(u32 idx, Pane *pPane); // at 0x1C
virtual void Animate(u32 idx, Material *pMaterial); // at 0x20
private:
void *mpFileResAry; // at 0x14
AnimationLink *mAnimLinkAry; // at 0x18
u16 mAnimLinkNum; // at 0x1C
};
namespace detail {
void UnbindAnimationLink(ut::LinkList<AnimationLink, 0> *, AnimTransform *);
AnimationLink *FindAnimationLink(ut::LinkList<AnimationLink, 0> *, AnimTransform *);
AnimationLink *FindAnimationLink(ut::LinkList<AnimationLink, 0> *, const AnimResource &);
void UnbindAnimationLink(ut::LinkList<AnimationLink, 0> *, AnimTransform *);
} // namespace detail
} // namespace lyt
-1
View File
@@ -9,7 +9,6 @@
#include <nw4r/ut/ut_ResFont.h>
#include <rvl/MEM/mem_allocator.h>
namespace nw4r {
namespace lyt {
+34 -3
View File
@@ -276,9 +276,40 @@ struct AnimationShareBlock {
u8 padding[2]; // at 0x0E
};
// TODO
struct HermiteKey {};
struct StepKey {};
struct HermiteKey {
f32 frame; // at 0x0
f32 value; // at 0x4
f32 slope; // at 0x8
};
struct StepKey {
f32 frame; // at 0x0
u16 value; // at 0x4
u16 padding; // at 0x6
};
struct AnimationInfo {
u32 kind; // at 0x0
u8 num; // at 0x4
u8 padding[3]; // at 0x5
};
struct AnimationTarget {
u8 id; // at 0x0
u8 target; // at 0x1
u8 curveType; // at 0x2
u8 padding1; // at 0x3
u16 keyNum; // at 0x4
u16 padding2[2]; // at 0x6
u32 keyOffset; // at 0x8
};
struct AnimationContent {
char name[20]; // at 0x00
u8 num; // at 0x14
u8 type; // at 0x15
u8 padding[2]; // at 0x17
};
} // namespace res
} // namespace lyt
-18
View File
@@ -66,24 +66,6 @@ struct Size {
inline bool operator==(const Size &a, const Size &b) {
return (a.width == b.width && a.height == b.height);
}
struct AnimTransform {
inline AnimTransform() : mLink(), mpRes(NULL), mFrame(0.0f) {}
u16 GetFrameSize() const;
bool IsLoopData() const;
virtual ~AnimTransform() = 0; // at 0x08
virtual void SetResource(const res::AnimationBlock *pRes, ResourceAccessor *pResAccessor) = 0; // at 0x0C
virtual void SetResource(const res::AnimationBlock *pRes, ResourceAccessor *pResAccessor, //
u16 animNum) = 0; // at 0x10
virtual void Bind(Pane *pPane, bool bRecursive) = 0; // at 0x14
virtual void Bind(Material *pMaterial, bool bDisable) = 0; // at 0x18
virtual void Animate(u32 idx, Pane *pPane) = 0; // at 0x1C
virtual void Animate(u32 idx, Material *pMaterial) = 0; // at 0x20
ut::LinkListNode mLink; // at 0x4
res::AnimationBlock *mpRes; // at 0xC
f32 mFrame; // at 0x10
};
struct AnimationShareInfo {
const char *GetTargetGroupName() const {
return targetGroupName;
+3 -2
View File
@@ -18,7 +18,7 @@ public:
Set(red, green, blue, alpha);
}
Color(const GXColor &clr) {
*this = *(u32 *)&clr;
ToU32ref() = *(u32 *)&clr;
}
~Color() {}
@@ -35,7 +35,8 @@ public:
}
Color &operator=(const GXColor &c) {
*(u32 *)this = *(u32 *)&c; // TODO -> This Seems Maybe Wrong
ToU32ref() = *(u32 *)&c; // TODO -> This Seems Maybe Wrong
return *this;
}
Color operator|(u32 color) {
+292
View File
@@ -0,0 +1,292 @@
#include <nw4r/lyt/lyt_animation.h>
#include <nw4r/lyt/lyt_group.h>
#include <nw4r/lyt/lyt_pane.h>
namespace nw4r {
namespace lyt {
namespace {
// GetStepCurveValue__27@unnamed@lyt_animation_cpp@FfPCQ44nw4r3lyt3res7StepKeyUl
// GetStepCurveValue__Q34nw4r3lyt27@unnamed@lyt_animation_cpp@FfPCQ44nw4r3lyt3res7StepKeyUl
u16 GetStepCurveValue(f32 frame, const res::StepKey *keyArray, u32 keySize) {
int ikeyL, ikeyR, ikeyCenter;
const res::StepKey &centerKey = keyArray[0];
}
// RIsSame__27@unnamed@lyt_animation_cpp@Ffff
// RIsSame__Q34nw4r3lyt27@unnamed@lyt_animation_cpp@Ffff
bool RIsSame(f32 a, f32 b, f32 tolerance) {
f32 c;
}
// GetHermiteCurveValue__27@unnamed@lyt_animation_cpp@FfPCQ44nw4r3lyt3res10HermiteKeyUl
// GetHermiteCurveValue__Q34nw4r3lyt27@unnamed@lyt_animation_cpp@FfPCQ44nw4r3lyt3res10HermiteKeyUl
f32 GetHermiteCurveValue(f32 frame, const res::HermiteKey *keyArray, u32 keySize) {
int ikeyL, ikeyR, ikeyCenter;
const res::HermiteKey &key0 = keyArray[0];
const res::HermiteKey &key1 = keyArray[0];
f32 t1, t2;
f32 v0, v1;
f32 s0, s1;
f32 t1t1t2;
f32 t1t1t2t2;
f32 t1t1t1t2t2;
f32 t1t1t1t2t2t2;
}
// AnimatePainSRT__27@unnamed@lyt_animation_cpp@FPQ34nw4r3lyt4PanePCQ44nw4r3lyt3res13AnimationInfoPCUlf
// AnimatePaneSRT__Q34nw4r3lyt27@unnamed@lyt_animation_cpp@FPQ34nw4r3lyt4PanePCQ44nw4r3lyt3res13AnimationInfoPCUlf
void AnimatePaneSRT(Pane *pPane, const res::AnimationInfo *pAnimInfo, const u32 *animTargetOffsets, f32 frame) {
int i;
const res::AnimationTarget *pAnimTarget;
const res::HermiteKey *keys;
}
// AnimateVisibility__27@unnamed@lyt_animation_cpp@FPQ34nw4r3lyt4PanePCQ44nw4r3lyt3res13AnimationInfoPCUlf
// AnimateVisibility__Q34nw4r3lyt27@unnamed@lyt_animation_cpp@FPQ34nw4r3lyt4PanePCQ44nw4r3lyt3res13AnimationInfoPCUlf
void AnimateVisibility(Pane *pPane, const res::AnimationInfo *pAnimInfo, const u32 *animTargetOffsets, f32 frame) {
int i;
const res::AnimationTarget *pAnimTarget;
const res::StepKey *keys;
}
// AnimateVertexColor__27@unnamed@lyt_animation_cpp@FPQ34nw4r3lyt4PanePCQ44nw4r3lyt3res13AnimationInfoPCUlf
// AnimateVertexColor__Q34nw4r3lyt27@unnamed@lyt_animation_cpp@FPQ34nw4r3lyt4PanePCQ44nw4r3lyt3res13AnimationInfoPCUlf
void AnimateVertexColor(Pane *pPane, const res::AnimationInfo *pAnimInfo, const u32 *animTargetOffsets, f32 frame) {
int i;
const res::AnimationTarget *pAnimTarget;
const res::HermiteKey *keys;
f32 value;
u8 u8Val;
}
// AnimateMaterialColor__27@unnamed@lyt_animation_cpp@FPQ34nw4r3lyt8MaterialPCQ44nw4r3lyt3res13AnimationInfoPCUlf
// AnimateMaterialColor__Q34nw4r3lyt27@unnamed@lyt_animation_cpp@FPQ34nw4r3lyt8MaterialPCQ44nw4r3lyt3res13AnimationInfoPCUlf
void AnimateMaterialColor(Material *pMaterial, const res::AnimationInfo *pAnimInfo, const u32 *animTargetOffsets,
f32 frame) {
int i;
const res::AnimationTarget *pAnimTarget;
const res::HermiteKey *keys;
f32 value;
s16 s16Val;
}
// AnimateTextureSRT__27@unnamed@lyt_animation_cpp@FPQ34nw4r3lyt8MaterialPCQ44nw4r3lyt3res13AnimationInfoPCUlf
// AnimateTextureSRT__Q34nw4r3lyt27@unnamed@lyt_animation_cpp@FPQ34nw4r3lyt8MaterialPCQ44nw4r3lyt3res13AnimationInfoPCUlf
void AnimateTextureSRT(Material *pMaterial, const res::AnimationInfo *pAnimInfo, const u32 *animTargetOffsets,
f32 frame) {
int i;
const res::AnimationTarget *pAnimTarget;
const res::HermiteKey *keys;
}
// AnimateTexturePattern__27@unnamed@lyt_animation_cpp@FPQ34nw4r3lyt8MaterialPCQ44nw4r3lyt3res13AnimationInfoPCUlfPPv
// AnimateTexturePattern__Q34nw4r3lyt27@unnamed@lyt_animation_cpp@FPQ34nw4r3lyt8MaterialPCQ44nw4r3lyt3res13AnimationInfoPCUlfPPv
void AnimateTexturePattern(Material *pMaterial, const res::AnimationInfo *pAnimInfo, const u32 *animTargetOffsets,
f32 frame, void **tpls) {
int i;
const res::AnimationTarget *pAnimTarget;
const res::StepKey *keys;
u16 fileIdx;
}
// AnimateIndTexSRT__27@unnamed@lyt_animation_cpp@FPQ34nw4r3lyt8MaterialPCQ44nw4r3lyt3res13AnimationInfoPCUlf
// AnimateIndTexSRT__Q34nw4r3lyt27@unnamed@lyt_animation_cpp@FPQ34nw4r3lyt8MaterialPCQ44nw4r3lyt3res13AnimationInfoPCUlf
void AnimateIndTexSRT(Material *pMaterial, const res::AnimationInfo *pAnimInfo, const u32 *animTargetOffsets,
f32 frame) {
int i;
const res::AnimationTarget *pAnimTarget;
const res::HermiteKey *keys;
}
// IsBindAnimation__Q34nw4r3lyt27@unnamed@lyt_animation_cpp@FPQ34nw4r3lyt8MaterialPQ34nw4r3lyt13AnimTransform
bool IsBindAnimation(Material *pMaterial, AnimTransform *pAnimTrans) {}
// IsBindAnimation__Q34nw4r3lyt27@unnamed@lyt_animation_cpp@FPQ34nw4r3lyt4PanePQ34nw4r3lyt13AnimTransform
bool IsBindAnimation(Pane *pPane, AnimTransform *pAnimTrans) {}
} // namespace
// __ct__Q34nw4r3lyt13AnimTransformFv
AnimTransform::AnimTransform() : mLink(), mpRes(NULL), mFrame(0.0f) {}
// __dt__Q34nw4r3lyt13AnimTransformFv
AnimTransform::~AnimTransform() {}
// GetFrameSize__Q34nw4r3lyt13AnimTransformCFv
u16 AnimTransform::GetFrameSize() const {}
// IsLoopData__Q34nw4r3lyt13AnimTransformCFv
bool AnimTransform::IsLoopData() const {}
// __ct__Q34nw4r3lyt18AnimTransformBasicFv
AnimTransformBasic::AnimTransformBasic() : AnimTransform() {}
// __dt__Q34nw4r3lyt18AnimTransformBasicFv
AnimTransformBasic::~AnimTransformBasic() {}
// SetResource__Q34nw4r3lyt18AnimTransformBasicFPCQ44nw4r3lyt3res14AnimationBlockPQ34nw4r3lyt16ResourceAccessor
void AnimTransformBasic::SetResource(const res::AnimationBlock *pRes, ResourceAccessor *pResAccessor) {}
// SetResource__Q34nw4r3lyt18AnimTransformBasicFPCQ44nw4r3lyt3res14AnimationBlockPQ34nw4r3lyt16ResourceAccessorUs
void AnimTransformBasic::SetResource(const res::AnimationBlock *pRes, ResourceAccessor *pResAccessor, u16 animNum) {
const u32 *fineNameOffsets;
int i;
const char *fileName;
}
// Bind__Q34nw4r3lyt18AnimTransformBasicFPQ34nw4r3lyt4Paneb
// Bind__Q34nw4r3lyt18AnimTransformBasicFPQ34nw4r3lyt4Panebb
void AnimTransformBasic::Bind(Pane *pPane, bool bRecursive, bool bDisable) {
AnimationLink *pCrAnimLink;
const u32 *animContOffsets;
u16 i;
// const res::AnimationContent &animCont;
Pane *pFindPane;
Material *pFindMat;
}
// Bind__Q34nw4r3lyt18AnimTransformBasicFPQ34nw4r3lyt8Material
// Bind__Q34nw4r3lyt18AnimTransformBasicFPQ34nw4r3lyt8Materialb
void AnimTransformBasic::Bind(Material *pMaterial, bool bDisable) {
AnimationLink *pCrAnimLink;
const u32 *animContOffsets;
u16 i;
// const res::AnimationContent &animCont;
}
// Animate__Q34nw4r3lyt18AnimTransformBasicFUlPQ34nw4r3lyt4Pane
void AnimTransformBasic::Animate(u32 idx, Pane *pPane) {
u32 animContOffsets;
res::AnimationContent *pAnimCont;
const u32 *animInfoOffsets;
int i;
res::AnimationInfo *pAnimInfo;
const u32 *animTargetOffsets;
}
// Animate__Q34nw4r3lyt18AnimTransformBasicFUlPQ34nw4r3lyt8Material
void AnimTransformBasic::Animate(u32 idx, Material *pMaterial) {
u32 animContOffsets;
res::AnimationContent *pAnimCont;
const u32 *animInfoOffsets;
int i;
res::AnimationInfo *pAnimInfo;
const u32 *animTargetOffsets;
}
// FindUnbindLink__Q34nw4r3lyt18AnimTransformBasicCFPQ34nw4r3lyt13AnimationLink
AnimationLink *AnimTransformBasic::FindUnbindLink(AnimationLink *pLink) {}
// Bind<Q34nw4r3lyt4Pane>__Q34nw4r3lyt18AnimTransformBasicFPQ34nw4r3lyt4PanePQ34nw4r3lyt13AnimationLinkUsb_PQ34nw4r3lyt13AnimationLink
// Bind<Q34nw4r3lyt8Material>__Q34nw4r3lyt18AnimTransformBasicFPQ34nw4r3lyt8MaterialPQ34nw4r3lyt13AnimationLinkUsb_PQ34nw4r3lyt13AnimationLink
template <typename T>
AnimationLink *AnimTransformBasic::Bind(T *pTarget, AnimationLink *pAnimLink, u16 idx, bool bDisable) {}
// __ct__Q34nw4r3lyt12AnimResourceFv
AnimResource::AnimResource() {}
// Set__Q34nw4r3lyt12AnimResourceFPCv
void AnimResource::Set(const void *animResBuf) {
const res::BinaryFileHeader *pFileHeader;
const res::DataBlockHeader *pDataBlockHead;
int i;
}
// Init__Q34nw4r3lyt12AnimResourceFv
void AnimResource::Init() {}
// GetGroupNum__Q34nw4r3lyt12AnimResourceCFv
u16 AnimResource::GetGroupNum() const {}
// GetGroupArray__Q34nw4r3lyt12AnimResourceCFv
AnimationGroupRef *AnimResource::GetGroupArray() const {
const AnimationGroupRef *groups;
}
// IsDescendingBind__Q34nw4r3lyt12AnimResourceCFv
bool AnimResource::IsDescendingBind() const {}
// GetAnimationShareInfoNum__Q34nw4r3lyt12AnimResourceCFv
u16 AnimResource::GetAnimationShareInfoNum() const {}
// GetAnimationShareInfoArray__Q34nw4r3lyt12AnimResourceCFv
AnimationShareInfo *AnimResource::GetAnimationShareInfoArray() const {}
// CalcAnimationNum__Q34nw4r3lyt12AnimResourceCFPQ34nw4r3lyt4Paneb
u16 AnimResource::CalcAnimationNum(Pane *pPane, bool bRecursive) const {
u16 linkNum;
const u32 *animContOffsets;
u16 i;
// const res::AnimationContent &animCont;
Pane *pFindPane;
Material *pFindMat;
}
// CalcAnimationNum__Q34nw4r3lyt12AnimResourceCFPQ34nw4r3lyt5Groupb
u16 AnimResource::CalcAnimationNum(Group *pGroup, bool bRecursive) const {
u16 linkNum;
ut::LinkList<detail::PaneLink, 0> paneList;
ut::LinkList<detail::PaneLink, 0>::Iterator it;
}
namespace detail {
// FindAnimContent__Q44nw4r3lyt6detail12AnimPaneTreeFPCQ44nw4r3lyt3res14AnimationBlockPCcUc
u16 AnimPaneTree::FindAnimContent(const res::AnimationBlock *pAnimBlock, const char *animContName, u8 animContType) {
const u32 *animContOffsets;
u16 i;
const res::AnimationContent *pAnimCont;
}
// Init__Q44nw4r3lyt6detail12AnimPaneTreeFv
void AnimPaneTree::Init() {
u8 i;
}
// Set__Q44nw4r3lyt6detail12AnimPaneTreeFPQ34nw4r3lyt4PaneRCQ34nw4r3lyt12AnimResource
void AnimPaneTree::Set(Pane *pTargetPane, const AnimResource &animRes) {
u16 linkNum;
const res::AnimationBlock *pAnimBlock;
u16 animContIdx;
u8 animMatCnt;
u16 animMatIdxs[9];
for (u8 i;;) {}
for (u8 i;;) {}
}
// Bind__Q44nw4r3lyt6detail12AnimPaneTreeCFPQ34nw4r3lyt6LayoutPQ34nw4r3lyt4PanePQ34nw4r3lyt16ResourceAccessor
AnimTransform *AnimPaneTree::Bind(Layout *pLayout, Pane *pTargetPane, ResourceAccessor *pResAccessor) const {
AnimTransform *pAnimTrans;
AnimationLink *pCrAnimLink;
u8 animMatMax;
u8 i;
Material *pMaterial;
}
// FindAnimationLink__Q34nw4r3lyt6detailFPQ34nw4r2ut38LinkList<Q34nw4r3lyt13AnimationLink,0>PQ34nw4r3lyt13AnimTransform
AnimationLink *FindAnimationLink(ut::LinkList<AnimationLink, 0> *pAnimList, AnimTransform *pAnimTrans) {
// it
}
// FindAnimationLink__Q34nw4r3lyt6detailFPQ34nw4r2ut38LinkList<Q34nw4r3lyt13AnimationLink,0>RCQ34nw4r3lyt12AnimResource
AnimationLink *FindAnimationLink(ut::LinkList<AnimationLink, 0> *pAnimList, const AnimResource &animRes) {
// it
}
// UnbindAnimationLink__Q34nw4r3lyt6detailFPQ34nw4r2ut38LinkList<Q34nw4r3lyt13AnimationLink,0>PQ34nw4r3lyt13AnimTransform
void UnbindAnimationLink(ut::LinkList<AnimationLink, 0> *pAnimList, AnimTransform *pAnimTrans) {
// it, currIt
}
// UnbindAnimationLink__Q34nw4r3lyt6detailFPQ34nw4r2ut38LinkList<Q34nw4r3lyt13AnimationLink,0>RCQ34nw4r3lyt12AnimResource
void UnbindAnimationLink(ut::LinkList<AnimationLink, 0> *pAnimList, const AnimResource &animRes) {
// it, currIt
}
} // namespace detail
} // namespace lyt
} // namespace nw4r
+1 -1
View File
@@ -361,7 +361,7 @@ void Pane::AnimateSelf(u32 option) {
// BindAnimation__Q34nw4r3lyt4PaneFPQ34nw4r3lyt13AnimTransformbb
void Pane::BindAnimation(AnimTransform *pAnimTrans, bool bRecursive, bool bDisable) {
pAnimTrans->Bind(this, bRecursive);
pAnimTrans->Bind(this, bRecursive, bDisable);
}
// UnbindAnimation__Q34nw4r3lyt4PaneFPQ34nw4r3lyt13AnimTransformb