13 class bhkCollisionObject;
14 class NiAlphaProperty;
16 class NiCollisionObject;
19 class NiCullingProcess;
99#if !defined(ENABLE_SKYRIM_AE) && !defined(ENABLE_SKYRIM_SE)
133 bool SetMotionType(std::uint32_t a_motionType,
bool a_arg2 =
true,
bool a_arg3 =
false,
bool a_allowActivate =
true);
144 return REL::RelocateMember<stl::enumeration<Flag, std::uint32_t>>(
this, 0x0F4, 0x10C);
149 return REL::RelocateMember<stl::enumeration<Flag, std::uint32_t>>(
this, 0x0F4, 0x10C);
161#ifndef ENABLE_SKYRIM_VR
172#elif !defined(ENABLE_SKYRIM_AE) && !defined(ENABLE_SKYRIM_SE)
177 std::uint32_t lastUpdatedFrameCounter;
181 std::uint32_t unk11C;
182 std::uint8_t unk120[8];
183 std::uint64_t unk128;
184 std::uint32_t unk130;
185 std::uint32_t unk134;
187 static_assert(
sizeof(NiAVObject) == 0x138);
192 std::uint32_t lastUpdatedFrameCounter;
#define SKYRIM_REL_VR_VIRTUAL
Definition Relocation.h:152
Definition BSGeometry.h:15
Feature
Definition BSShaderMaterial.h:14
Definition NiAVObject.h:50
BSGeometry * GetFirstGeometryOfShaderType(BSShaderMaterial::Feature a_type)
std::uint8_t unk108
Definition NiAVObject.h:166
SKYRIM_REL_VR_VIRTUAL void OnVisible(NiCullingProcess &a_process)
void UpdateRigidConstraints(bool a_enable, std::uint8_t a_arg2=1, std::uint32_t a_arg3=1)
void UpdateHairColor(const NiColor &a_color)
static constexpr auto RTTI
Definition NiAVObject.h:52
static auto Ni_RTTI
Definition NiAVObject.h:53
NiNode * parent
Definition NiAVObject.h:153
SKYRIM_REL_VR_VIRTUAL void PerformOp(PerformOpFunc &a_func)
COL_LAYER GetCollisionLayer() const
void SetCollisionLayer(COL_LAYER a_collisionLayer)
const NiRTTI * GetRTTI() const override
NiTransform previousWorld
Definition NiAVObject.h:159
stl::enumeration< Flag, std::uint32_t > & GetFlags() noexcept
Definition NiAVObject.h:142
void Update(NiUpdateData &a_data)
SKYRIM_REL_VR_VIRTUAL void UpdateWorldData(NiUpdateData *a_data)
SKYRIM_REL_VR_VIRTUAL void AttachProperty(NiAlphaProperty *a_property)
SKYRIM_REL_VR_VIRTUAL void SetMaterialNeedsUpdate(bool a_needsUpdate)
void UpdateBodyTint(const NiColor &a_color)
std::uint32_t parentIndex
Definition NiAVObject.h:154
bool SetProjectedUVData(const NiColorA &a_projectedUVParams, const NiColor &a_projectedUVColor, bool a_isSnow)
NiTransform world
Definition NiAVObject.h:158
void LoadBinary(NiStream &a_stream) override
virtual void Unk_VRFunc(void)
std::uint16_t unk10A
Definition NiAVObject.h:168
void LinkObject(NiStream &a_stream) override
stl::enumeration< Flag, std::uint32_t > flags
Definition NiAVObject.h:162
bhkCollisionObject * GetCollisionObject() const
bool HasAnimation() const
bool SetMotionType(std::uint32_t a_motionType, bool a_arg2=true, bool a_arg3=false, bool a_allowActivate=true)
void ProcessClone(NiCloningProcess &a_cloning) override
bool HasShaderType(BSShaderMaterial::Feature a_type)
SKYRIM_REL_VR_VIRTUAL void UpdateWorldBound()
NiPointer< NiCollisionObject > collisionObject
Definition NiAVObject.h:156
SKYRIM_REL_VR_VIRTUAL void UpdateDownwardPass(NiUpdateData &a_data, std::uint32_t a_arg2)
void SaveBinary(NiStream &a_stream) override
void CullNode(bool a_cull)
void SetUserData(TESObjectREFR *a_ref) noexcept
void SetCollisionLayerAndGroup(COL_LAYER a_collisionLayer, std::uint32_t a_group)
NiBound worldBound
Definition NiAVObject.h:160
virtual void UpdateControllers(NiUpdateData &a_data)
SKYRIM_REL_VR_VIRTUAL void PreAttachUpdate(NiNode *a_parent, NiUpdateData &a_data)
const stl::enumeration< Flag, std::uint32_t > & GetFlags() const noexcept
Definition NiAVObject.h:147
TESObjectREFR * userData
Definition NiAVObject.h:163
SKYRIM_REL_VR_VIRTUAL void SetDefaultMaterialNeedsUpdateFlag(bool a_flag)
SKYRIM_REL_VR_VIRTUAL void UpdateSelectedDownwardPass(NiUpdateData &a_data, std::uint32_t a_arg2)
void SetAppCulled(bool a_cull)
SKYRIM_REL_VR_VIRTUAL void SetSelectiveUpdateFlags(bool &a_selectiveUpdate, bool a_selectiveUpdateTransforms, bool &a_rigid)
SKYRIM_REL_VR_VIRTUAL NiAVObject * GetObjectByName(const BSFixedString &a_name)
float fadeAmount
Definition NiAVObject.h:164
SKYRIM_REL_VR_VIRTUAL void UpdateRigidDownwardPass(NiUpdateData &a_data, std::uint32_t a_arg2)
std::uint32_t unk03C
Definition NiAVObject.h:155
TESObjectREFR * GetUserData() const
bool IsEqual(NiObject *a_object) override
std::uint8_t flags02
Definition NiAVObject.h:167
NiTransform local
Definition NiAVObject.h:157
void TintScenegraph(const NiColorA &a_color)
Flag
Definition NiAVObject.h:56
@ kSelectiveUpdateController
@ kSelectiveUpdateTransformsOverride
@ kSelectiveUpdateTransforms
@ kSaveExternalGeometryData
bool RegisterStreamables(NiStream &a_stream) override
std::uint32_t lastUpdatedFrameCounter
Definition NiAVObject.h:165
bool GetAppCulled() const
void CullGeometry(bool a_cull)
std::uint32_t pad10C
Definition NiAVObject.h:169
void UpdateMaterialAlpha(float a_alpha, bool a_doOnlySkin)
SKYRIM_REL_VR_VIRTUAL void PostAttachUpdate()
SKYRIM_REL_VR_VIRTUAL void UpdateTransformAndBounds(NiUpdateData &a_data)
Definition NiAlphaProperty.h:8
Definition NiCloningProcess.h:10
Definition NiCullingProcess.h:34
Definition NiObjectNET.h:13
Definition NiSmartPointer.h:9
Definition NiAVObject.h:25
float time
Definition NiAVObject.h:34
stl::enumeration< Flag, std::uint32_t > flags
Definition NiAVObject.h:35
Flag
Definition NiAVObject.h:28
Definition TESObjectREFR.h:112
Definition bhkCollisionObject.h:8
Definition AbsorbEffect.h:6
constexpr REL::VariantID RTTI_NiAVObject(684827, 392520, 0x1eda610)
constexpr REL::VariantID NiRTTI_NiAVObject(523895, 410476, 0x316ab40)
COL_LAYER
Definition CollisionLayers.h:6