This website requires JavaScript.
Explore
Help
Sign in
isledecomp
/
isle-portable
Watch
1
Star
0
Fork
You've already forked isle-portable
0
mirror of
https://github.com/isledecomp/isle-portable.git
synced
2024-11-22 23:48:12 -05:00
Code
Issues
Projects
Releases
Packages
Wiki
Activity
Actions
7e9d3bde65
isle-portable
/
LEGO1
/
realtime
/
matrix.cpp
6 lines
76 B
C++
Raw
Normal View
History
Unescape
Escape
Implement ViewROI and base classes (#287) * Implement ViewROI and base classes * Clean up Orientable header * Move tgl to tgl subdirectory, and use target_include_directories * Move classes to submodules * Fix some missed references * Fix/match UpdateWorldData * Renaming / removing MxTypes / refactoring * Consistent naming for Matrix * Adjust format action * Add Vector3/Vector4 to Data vector * Add TGL comment * Add a comment about Matrix4Impl * Add ROI comment --------- Co-authored-by: Anonymous Maarten <anonymous.maarten@gmail.com> Co-authored-by: Christian Semmler <mail@csemmler.com>
2023-11-19 09:38:07 -05:00
#
include
"matrix.h"
Implement MxVector2/3/4 and MxMatrix (#100) * All of the MxVectors share an inheritance chain. MxVector4 inherits from MxVector3 which inherits from MxVector2. * They all operate on a shared `float*` data member which points to the underlying storage. * There are also MxVector3/4Data classes, which inherit from Vector3/4, but add concrete storage for the Vector data rather than just an abstract data pointer. * The same is true for MxMatrix, with there being an abstract and a concrete variant of it. * Also improve reccmp.py register matching algorithm. It previously could not recognize an effective match when a swap had to take place between two registers used on the same line. It turns out this happens a lot in floating point math code so I adjusted the implementation to break the disassembly lines on spaces rather than just linebreaks allowing the existing effective match code to handle that case too.
2023-08-03 14:25:29 -04:00
Refactor utility/decomp headers (#318)
2023-12-11 16:33:46 -05:00
#
include
"decomp.h"
Implement MxVector2/3/4 and MxMatrix (#100) * All of the MxVectors share an inheritance chain. MxVector4 inherits from MxVector3 which inherits from MxVector2. * They all operate on a shared `float*` data member which points to the underlying storage. * There are also MxVector3/4Data classes, which inherit from Vector3/4, but add concrete storage for the Vector data rather than just an abstract data pointer. * The same is true for MxMatrix, with there being an abstract and a concrete variant of it. * Also improve reccmp.py register matching algorithm. It previously could not recognize an effective match when a swap had to take place between two registers used on the same line. It turns out this happens a lot in floating point math code so I adjusted the implementation to break the disassembly lines on spaces rather than just linebreaks allowing the existing effective match code to handle that case too.
2023-08-03 14:25:29 -04:00
Matrix/vector refactor (#426)
2024-01-12 19:34:38 -05:00
DECOMP_SIZE_ASSERT
(
Matrix4
,
0x8
)
;
Reference in a new issue
Copy permalink