Skip to content

Adds lots of stuff to Scene objects and adds Layout level staining support.#1727

Merged
Haselnussbomber merged 18 commits intoaers:mainfrom
universalconquistador:scene-additions-and-stains
Mar 9, 2026
Merged

Adds lots of stuff to Scene objects and adds Layout level staining support.#1727
Haselnussbomber merged 18 commits intoaers:mainfrom
universalconquistador:scene-additions-and-stains

Conversation

@universalconquistador
Copy link
Copy Markdown
Contributor

@universalconquistador universalconquistador commented Feb 18, 2026

  • Adds Common::Math::SphereBounds, Common::Math::OrientedBounds, and Common::Math::AxisAlignedBounds math types. I did not update the few places that use Vector4 for sphere bounds instead of SphereBounds.

  • Adds vfuncs for Scene object updates, computing the 3 types of bounds, hit testing, working with attach bones, and dither transparency. Also added an enum for the Dtor mode so we can standardize that a bit. Tested the 3 bounds querying (some cases are wonky e.g. characters with oriented and aligned bounds, but I believe that's a sqenix problem), both hit test methods, and dither transparency (SE only implemented it for BgObjects). Did not test the attach bone stuff.

  • Adds the static Create helpers for BgObject and VfxObject, stain support for BgObject, and some VFX fields from OGT. Tested that I can create and destroy both, and set VFX color and BgObject stain.

  • Adds support for staining SharedGroupLayoutInstances and in general via ILayoutInstance.ApplyStain. I have not tested these myself.

@universalconquistador universalconquistador marked this pull request as draft February 18, 2026 14:02
@github-actions github-actions Bot added the requested changes Changes requested through comments label Feb 18, 2026
@universalconquistador
Copy link
Copy Markdown
Contributor Author

Field overlap detected in Common::Math::SphereBounds with field Radius

yes thank you that's by design

Copy link
Copy Markdown
Collaborator

@Haselnussbomber Haselnussbomber left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a quick glance at it.
It would also require you to add the functions and vfuncs to the data.yml once you're good with the names.

Comment thread FFXIVClientStructs/FFXIV/Client/Graphics/Scene/BgObject.cs Outdated
Comment thread FFXIVClientStructs/FFXIV/Client/Graphics/Scene/VfxObject.cs Outdated
Comment thread FFXIVClientStructs/FFXIV/Client/LayoutEngine/Group/SharedGroupLayoutInstance.cs Outdated
Comment thread FFXIVClientStructs/FFXIV/Client/LayoutEngine/ILayoutInstance.cs Outdated
Comment thread FFXIVClientStructs/FFXIV/Client/Graphics/Scene/VfxObject.cs Outdated
@github-actions github-actions Bot removed the requested changes Changes requested through comments label Mar 7, 2026
@universalconquistador universalconquistador marked this pull request as ready for review March 7, 2026 13:42
@universalconquistador
Copy link
Copy Markdown
Contributor Author

Alright, light stuff added, feedback addressed and data.yml updated!

Comment thread ida/data.yml Outdated
Co-authored-by: wolfcomp <4028289+wolfcomp@users.noreply.github.com>
Comment thread FFXIVClientStructs/FFXIV/Client/Graphics/Scene/Object.cs Outdated
Comment thread FFXIVClientStructs/FFXIV/Client/Graphics/Scene/Object.cs Outdated
Comment thread FFXIVClientStructs/FFXIV/Client/Graphics/Scene/Weapon.cs Outdated
Comment thread FFXIVClientStructs/FFXIV/Client/Graphics/Scene/Weapon.cs Outdated
@Haselnussbomber Haselnussbomber merged commit e31bbd7 into aers:main Mar 9, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants