<feed xmlns='http://www.w3.org/2005/Atom'>
<title>botw/src/KingSystem/Physics/System/physStaticCompoundUtil.cpp, branch master</title>
<subtitle>Decompilation of The Legend of Zelda: Breath of the Wild (Switch v1.5.0)</subtitle>
<link rel='alternate' type='text/html' href='https://git.dog6.net/botw/'/>
<entry>
<title>ksys/phys: rename physStaticCompoundUtil to physUtil</title>
<updated>2026-10-16T15:51:17+00:00</updated>
<author>
<name>Léo Lam</name>
<email>leo@leolam.fr</email>
</author>
<published>2026-10-16T15:51:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/botw/commit/?id=7286390beae272d1f8201e45ecf725d75241a84d'/>
<id>7286390beae272d1f8201e45ecf725d75241a84d</id>
<content type='text'>
Most of these helpers have nothing to do with StaticCompound: they look
up material masks and collision filter info from shapes and collidables.
physUtil also fits the link order, between physUserTag and physWorld,
and it's what the function groups already call this block.

(AI assisted using Claude Opus 5.5)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Most of these helpers have nothing to do with StaticCompound: they look
up material masks and collision filter info from shapes and collidables.
physUtil also fits the link order, between physUserTag and physWorld,
and it's what the function groups already call this block.

(AI assisted using Claude Opus 5.5)
</pre>
</div>
</content>
</entry>
<entry>
<title>ksys/phys: rearrange the folder layout to match link order</title>
<updated>2026-10-13T00:55:29+00:00</updated>
<author>
<name>Léo Lam</name>
<email>leo@leolam.fr</email>
</author>
<published>2026-09-28T01:39:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/botw/commit/?id=89322a8d0cb0c1aaab509ab653a9368a2ae5dea9'/>
<id>89322a8d0cb0c1aaab509ab653a9368a2ae5dea9</id>
<content type='text'>
A folder's files are linked before its subfolders, and the rigid body
files are linked as one flat sequence. ListShape is the one file that
does not fit this order.

| Old | New |
|---|---|
| RigidBody/Shape/&lt;Kind&gt;/phys&lt;Kind&gt;Shape.cpp | RigidBody/Shape/phys&lt;Kind&gt;Shape.cpp |
| RigidBody/Shape/&lt;Kind&gt;/phys&lt;Kind&gt;RigidBody.cpp | RigidBody/physRigidBody&lt;Kind&gt;.cpp |
| RigidBody/Shape/List/physListShapeRigidBody.cpp | RigidBody/physRigidBodyListShape.cpp |
| physHavokMemoryAllocator.cpp | System/physHavokMemoryAllocator.cpp |
| StaticCompound/physStaticCompound{,Mgr,RigidBodyGroup,Util}.cpp | System/ |
| StaticCompound/physStaticCompound{Info,Autogen}.cpp | System/physStaticCompoundInfo.cpp |

The original has the type infos' cleanup functions just before
StaticCompoundInfo's functions, so the merged file defines the
reflection data first, with plain static cleanup functions as in
Havok's generated reflection code. Template instantiations would be
emitted after the rest of the file.

(AI assisted using Claude Fable 5.1 and Claude Opus 5.5)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
A folder's files are linked before its subfolders, and the rigid body
files are linked as one flat sequence. ListShape is the one file that
does not fit this order.

| Old | New |
|---|---|
| RigidBody/Shape/&lt;Kind&gt;/phys&lt;Kind&gt;Shape.cpp | RigidBody/Shape/phys&lt;Kind&gt;Shape.cpp |
| RigidBody/Shape/&lt;Kind&gt;/phys&lt;Kind&gt;RigidBody.cpp | RigidBody/physRigidBody&lt;Kind&gt;.cpp |
| RigidBody/Shape/List/physListShapeRigidBody.cpp | RigidBody/physRigidBodyListShape.cpp |
| physHavokMemoryAllocator.cpp | System/physHavokMemoryAllocator.cpp |
| StaticCompound/physStaticCompound{,Mgr,RigidBodyGroup,Util}.cpp | System/ |
| StaticCompound/physStaticCompound{Info,Autogen}.cpp | System/physStaticCompoundInfo.cpp |

The original has the type infos' cleanup functions just before
StaticCompoundInfo's functions, so the merged file defines the
reflection data first, with plain static cleanup functions as in
Havok's generated reflection code. Template instantiations would be
emitted after the rest of the file.

(AI assisted using Claude Fable 5.1 and Claude Opus 5.5)
</pre>
</div>
</content>
</entry>
</feed>
