Skip to content

Implement MxDisplaySurface::VTable0x28#391

Merged
foxtacles merged 17 commits into
isledecomp:masterfrom
foxtacles:mxdisplaysurface-vtable28
Dec 31, 2023
Merged

Implement MxDisplaySurface::VTable0x28#391
foxtacles merged 17 commits into
isledecomp:masterfrom
foxtacles:mxdisplaysurface-vtable28

Conversation

@foxtacles
Copy link
Copy Markdown
Member

@foxtacles foxtacles commented Dec 30, 2023

This adds the implementation for VTable0x28, which was the last piece necessary to render something from the initial Smacker video in nocd.si.

The match isn't great at ~30% and it will probably take a lot of further experimentation to get it right, since it's a very large function again and minor differences in variable placement/usage, inline functions etc. are highly important. Functionally I believe it should be accurate, although it's easy to miss something with a function of this size, so I'm inviting everyone to check it out and look for any issues. The 16-bit branches are the one currently most relevant.

Many variable names are also still placeholders or should be improved - suggestions welcome.

LEGO.2023-12-30.23-46-49.mp4

@foxtacles foxtacles marked this pull request as ready for review December 31, 2023 20:27
@foxtacles
Copy link
Copy Markdown
Member Author

Match is at 70%+ now - merging

@foxtacles foxtacles merged commit 1e43f20 into isledecomp:master Dec 31, 2023
@foxtacles foxtacles deleted the mxdisplaysurface-vtable28 branch December 31, 2023 20:29
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.

1 participant