mirror of https://github.com/zeldaret/botw.git
ksys/phys: Start adding GroupFilter
This commit is contained in:
parent
38bd3db171
commit
6b3799a354
|
@ -93355,25 +93355,25 @@ Address,Quality,Size,Name
|
|||
0x00000071012135e8,U,000056,
|
||||
0x0000007101213620,U,000092,
|
||||
0x000000710121367c,U,000144,Hio::createInstance
|
||||
0x000000710121370c,U,000168,
|
||||
0x00000071012137b4,U,000080,
|
||||
0x0000007101213804,U,000080,
|
||||
0x0000007101213854,U,000080,
|
||||
0x00000071012138a4,U,000076,
|
||||
0x00000071012138f0,U,000080,
|
||||
0x0000007101213940,U,000140,
|
||||
0x00000071012139cc,U,000144,
|
||||
0x0000007101213a5c,U,000144,
|
||||
0x0000007101213aec,U,000144,
|
||||
0x0000007101213b7c,U,000144,
|
||||
0x000000710121370c,O,000168,_ZN4ksys4phys11GroupFilterC2ENS0_16ContactLayerTypeENS0_12ContactLayer9ValueTypeES4_
|
||||
0x00000071012137b4,O,000080,_ZN4ksys4phys11GroupFilterD1Ev
|
||||
0x0000007101213804,O,000080,_ZThn16_N4ksys4phys11GroupFilterD1Ev
|
||||
0x0000007101213854,O,000080,_ZThn24_N4ksys4phys11GroupFilterD1Ev
|
||||
0x00000071012138a4,O,000076,_ZThn32_N4ksys4phys11GroupFilterD1Ev
|
||||
0x00000071012138f0,O,000080,_ZThn40_N4ksys4phys11GroupFilterD1Ev
|
||||
0x0000007101213940,O,000140,_ZN4ksys4phys11GroupFilterD0Ev
|
||||
0x00000071012139cc,O,000144,_ZThn16_N4ksys4phys11GroupFilterD0Ev
|
||||
0x0000007101213a5c,O,000144,_ZThn24_N4ksys4phys11GroupFilterD0Ev
|
||||
0x0000007101213aec,O,000144,_ZThn32_N4ksys4phys11GroupFilterD0Ev
|
||||
0x0000007101213b7c,O,000144,_ZThn40_N4ksys4phys11GroupFilterD0Ev
|
||||
0x0000007101213c0c,U,000092,
|
||||
0x0000007101213c68,U,000148,
|
||||
0x0000007101213cfc,U,000160,
|
||||
0x0000007101213d9c,U,000148,
|
||||
0x0000007101213e30,U,000008,
|
||||
0x0000007101213e38,U,000024,
|
||||
0x0000007101213e50,U,000112,
|
||||
0x0000007101213ec0,U,000092,
|
||||
0x0000007101213e50,O,000112,_ZNK4ksys4phys11GroupFilter27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE
|
||||
0x0000007101213ec0,O,000092,_ZNK4ksys4phys11GroupFilter18getRuntimeTypeInfoEv
|
||||
0x0000007101213f1c,U,000004,nullsub_4710
|
||||
0x0000007101213f20,U,000100,
|
||||
0x0000007101213f84,U,000108,
|
||||
|
|
Can't render this file because it is too large.
|
|
@ -44,6 +44,8 @@ target_sources(uking PRIVATE
|
|||
System/physContactInfoTable.h
|
||||
System/physDefines.cpp
|
||||
System/physDefines.h
|
||||
System/physGroupFilter.cpp
|
||||
System/physGroupFilter.h
|
||||
System/physMaterialTable.cpp
|
||||
System/physMaterialTable.h
|
||||
System/physMemSystem.cpp
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
#include "KingSystem/Physics/System/physGroupFilter.h"
|
||||
|
||||
namespace ksys::phys {
|
||||
|
||||
GroupFilter::GroupFilter(ContactLayerType type, ContactLayer::ValueType layer_first,
|
||||
ContactLayer::ValueType layer_last)
|
||||
: mIdxLayerFirst(layer_first), mIdxLayerLast(layer_last), mLayerType(type) {}
|
||||
|
||||
GroupFilter::~GroupFilter() = default;
|
||||
|
||||
void GroupFilter::m13() {}
|
||||
|
||||
} // namespace ksys::phys
|
|
@ -0,0 +1,44 @@
|
|||
#pragma once
|
||||
|
||||
#include <Havok/Physics2012/Collide/Filter/Group/hkpGroupFilter.h>
|
||||
#include <basis/seadTypes.h>
|
||||
#include <container/seadOffsetList.h>
|
||||
#include <prim/seadRuntimeTypeInfo.h>
|
||||
#include <thread/seadCriticalSection.h>
|
||||
#include "KingSystem/Physics/System/physDefines.h"
|
||||
|
||||
namespace ksys::phys {
|
||||
|
||||
class GroupFilter : public hkpGroupFilter {
|
||||
SEAD_RTTI_BASE(GroupFilter)
|
||||
public:
|
||||
GroupFilter(ContactLayerType type, ContactLayer::ValueType layer_first,
|
||||
ContactLayer::ValueType layer_last);
|
||||
~GroupFilter() override;
|
||||
|
||||
protected:
|
||||
virtual bool m2() { return true; }
|
||||
virtual void m3() = 0;
|
||||
virtual void m4() = 0;
|
||||
virtual void m5() = 0;
|
||||
virtual void m6() = 0;
|
||||
virtual void m7() = 0;
|
||||
virtual void m8() = 0;
|
||||
virtual void m9() {}
|
||||
virtual void m10() = 0;
|
||||
virtual void m11() = 0;
|
||||
virtual void m12() = 0;
|
||||
virtual void m13();
|
||||
|
||||
u32 mIdxLayerFirst{};
|
||||
u32 mIdxLayerLast{};
|
||||
ContactLayerType mLayerType{};
|
||||
u8 _11c{};
|
||||
// FIXME: types
|
||||
sead::OffsetList<void*> _120;
|
||||
sead::OffsetList<void*> _138;
|
||||
sead::CriticalSection mCS;
|
||||
sead::OffsetList<void*> _190;
|
||||
};
|
||||
|
||||
} // namespace ksys::phys
|
|
@ -25,8 +25,8 @@ constexpr int NumLayers = 32;
|
|||
|
||||
struct LayerTableInfo : agl::utl::IParameterObj {
|
||||
sead::SafeArray<agl::utl::Parameter<int>, NumLayers> params;
|
||||
void* table;
|
||||
int idx = 0;
|
||||
void* table; // FIXME: type GroupFilter
|
||||
int idx = 0; // FIXME: ContactLayer
|
||||
int count;
|
||||
|
||||
protected:
|
||||
|
|
Loading…
Reference in New Issue