<feed xmlns='http://www.w3.org/2005/Atom'>
<title>SpaghettiKart/src/racing/math_util.c, branch Caladius-patch-1</title>
<subtitle>SpaghettiKart: Mario Kart 64 PC port</subtitle>
<link rel='alternate' type='text/html' href='https://git.dog6.net/SpaghettiKart/'/>
<entry>
<title>Mechanical compiler warning cleanup across the game C code (#691, 2 of 3) (#736)</title>
<updated>2026-09-16T13:26:27+00:00</updated>
<author>
<name>quarrel07</name>
<email>178681861+quarrel07@users.noreply.github.com</email>
</author>
<published>2026-09-16T13:26:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/SpaghettiKart/commit/?id=8fb42e50d70356300050048b57def3123e6d4552'/>
<id>8fb42e50d70356300050048b57def3123e6d4552</id>
<content type='text'>
* spawn_players: cast player flag combinations to s16 explicitly

The PLAYER_* flag defines OR into values with bit 15 set; assigning
them to s16 fields wraps to the intended negative value. The casts make
that explicit (82 warnings, no behavior change).

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* render_objects: mechanical warning cleanup

uintptr_t casts for display list macro args, u8* casts for asset name
pointers, UNUSED on decomp-preserved dead locals and params, one loop
index sign fix. 75 warnings, no behavior change.

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* update_objects: mechanical warning cleanup (42 warnings, casts and UNUSED)

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* menu_items: mechanical warning cleanup (50 warnings, casts and UNUSED)

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* stubs, kart_dma: mechanical warning cleanup (43 warnings)

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* code_80057C60, audio/external: mechanical warning cleanup (113 warnings)

Includes two decomp artifacts worth noting: a comma operator inside an
array index ([0, soundIndex] indexed only soundIndex) and a no-op for
init clause, both formerly needed for byte-matching.

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* some_data, actors, code_8006E9C0, code_80005FD0, main, render_player, mixer, skybox, load: mechanical warning cleanup (111 warnings)

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* Remaining game C files: mechanical warning cleanup to zero

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* Format the changed lines per .clang-format

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* ending: fix the bcopy shim reversing its arguments

The port shimmed bcopy to memcpy, but bcopy takes (src, dst) and memcpy
takes (dst, src), so every call through the shim copied backwards. The one
call site is the debug character switch in the ceremony cutscene, which is
meant to reset gCharacterIdByGPOverallRank to defaultCharacterIds. Instead
it overwrote the default table with the current standings, so the reset
never happened and the defaults were clobbered for later use.

Reachable only with gEnableDebugMode on and all D-pad plus C buttons held.

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* Address review: delete dead port helper, widen D_8015F718, comment out size lookup

get_texture2 was port-added and has no callers, so it goes away rather
than wearing the decomp UNUSED tag. D_8015F718 holds pointers, so it is
uintptr_t now. The kart_dma size lookup is commented out instead of
annotated.

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* menu_items: replace func_80097274 with the matched decomp version

Straight copy of the matched function; the NON_MATCHING guard and
GLOBAL_ASM fallback go away with it. The matched body also uses the
(u32) comparison forms, which keeps it warning-clean.

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* Update menu_items.c

* Address review round 2: audio loop form, cast collapse, dead code removal

func_800C3478 takes the while form; the (s8*)(u8*) stacks collapse to
one cast (40 sites); func_800BA8B0 and clamp32 go away (no callers);
gCourseOutlineTextures is const char* so its casts vanish; the podium
test line and render_screens matrix line are gone; set_screen keeps
its refactoring breadcrumbs commented out; the display-list walker is
reverted to the vanilla form as requested, which brings its one
shift-negative warning back; gCurrentlyLoadedTrackAddr defaults to 0.

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* Address review round 3: endianness.h byteswap, size_t indices, stub pragma

BSWAP16 now comes from libultraship's endianness.h on little-endian
targets, whose builtin returns u16 and needs no casts at the data.c
initializers. The intrinsic pragmas leave the repo. Actor and save
loops index with size_t instead of casting their bounds. stubs.c
silences unused parameters once for the file instead of tagging every
signature. spawn_player takes s32 and casts once inside, dropping 82
call-site casts. The item window arrays are const char* end to end,
race_begin_viewport loses its unused mode argument, mio0encode takes
uintptr_t, and the neon TLUT math is written in bytes.

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* data.c: use BOMSWAP16_CONST in the static envelope initializer

MSVC's _byteswap_ushort is a function call, not a constant expression,
so the plain BSWAP16 broke every Windows build at this initializer.
The _CONST variant is the manual shift form on MSVC and the same
builtin everywhere else.

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* Address review round 4: single BSWAP16 home, mixer arg refactor, stragglers

effects.h includes macros.h instead of carrying its own BSWAP16 copy.
mixer.c drops its unused arguments and locals outright, with the ABI
macros absorbing the removed parameters the same way they already
absorb pkt. func_8028EC98 takes no argument, the fourth intrinsic
pragma leaves math_util_2.c, the backup checksum loop joins its
siblings on size_t, and two leftover casts and an UNUSED go away.

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* ending: back out the debug-print cast for #745

The int-to-pointer warning it silenced returns until #745 reworks
this code.

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* effects.h: drop the include annotation

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* Retrigger CI after runner disconnect

* mixer: restore the Impl signatures and suppress the unused-parameter warning instead

* Clean up unused variables in code_80005FD0.c

Removed unused variables and assignments in CPU behaviour code.

* Remove unused camera variable from function

Remove unused camera variable in look_behind_toggle function.

* Update comment for bcopy and memcpy clarification

Clarified comment about bcopy and memcpy usage.

---------

Co-authored-by: Claude Fable 5 &lt;noreply@anthropic.com&gt;
Co-authored-by: MegaMech &lt;MegaMech@users.noreply.github.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* spawn_players: cast player flag combinations to s16 explicitly

The PLAYER_* flag defines OR into values with bit 15 set; assigning
them to s16 fields wraps to the intended negative value. The casts make
that explicit (82 warnings, no behavior change).

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* render_objects: mechanical warning cleanup

uintptr_t casts for display list macro args, u8* casts for asset name
pointers, UNUSED on decomp-preserved dead locals and params, one loop
index sign fix. 75 warnings, no behavior change.

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* update_objects: mechanical warning cleanup (42 warnings, casts and UNUSED)

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* menu_items: mechanical warning cleanup (50 warnings, casts and UNUSED)

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* stubs, kart_dma: mechanical warning cleanup (43 warnings)

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* code_80057C60, audio/external: mechanical warning cleanup (113 warnings)

Includes two decomp artifacts worth noting: a comma operator inside an
array index ([0, soundIndex] indexed only soundIndex) and a no-op for
init clause, both formerly needed for byte-matching.

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* some_data, actors, code_8006E9C0, code_80005FD0, main, render_player, mixer, skybox, load: mechanical warning cleanup (111 warnings)

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* Remaining game C files: mechanical warning cleanup to zero

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* Format the changed lines per .clang-format

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* ending: fix the bcopy shim reversing its arguments

The port shimmed bcopy to memcpy, but bcopy takes (src, dst) and memcpy
takes (dst, src), so every call through the shim copied backwards. The one
call site is the debug character switch in the ceremony cutscene, which is
meant to reset gCharacterIdByGPOverallRank to defaultCharacterIds. Instead
it overwrote the default table with the current standings, so the reset
never happened and the defaults were clobbered for later use.

Reachable only with gEnableDebugMode on and all D-pad plus C buttons held.

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* Address review: delete dead port helper, widen D_8015F718, comment out size lookup

get_texture2 was port-added and has no callers, so it goes away rather
than wearing the decomp UNUSED tag. D_8015F718 holds pointers, so it is
uintptr_t now. The kart_dma size lookup is commented out instead of
annotated.

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* menu_items: replace func_80097274 with the matched decomp version

Straight copy of the matched function; the NON_MATCHING guard and
GLOBAL_ASM fallback go away with it. The matched body also uses the
(u32) comparison forms, which keeps it warning-clean.

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* Update menu_items.c

* Address review round 2: audio loop form, cast collapse, dead code removal

func_800C3478 takes the while form; the (s8*)(u8*) stacks collapse to
one cast (40 sites); func_800BA8B0 and clamp32 go away (no callers);
gCourseOutlineTextures is const char* so its casts vanish; the podium
test line and render_screens matrix line are gone; set_screen keeps
its refactoring breadcrumbs commented out; the display-list walker is
reverted to the vanilla form as requested, which brings its one
shift-negative warning back; gCurrentlyLoadedTrackAddr defaults to 0.

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* Address review round 3: endianness.h byteswap, size_t indices, stub pragma

BSWAP16 now comes from libultraship's endianness.h on little-endian
targets, whose builtin returns u16 and needs no casts at the data.c
initializers. The intrinsic pragmas leave the repo. Actor and save
loops index with size_t instead of casting their bounds. stubs.c
silences unused parameters once for the file instead of tagging every
signature. spawn_player takes s32 and casts once inside, dropping 82
call-site casts. The item window arrays are const char* end to end,
race_begin_viewport loses its unused mode argument, mio0encode takes
uintptr_t, and the neon TLUT math is written in bytes.

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* data.c: use BOMSWAP16_CONST in the static envelope initializer

MSVC's _byteswap_ushort is a function call, not a constant expression,
so the plain BSWAP16 broke every Windows build at this initializer.
The _CONST variant is the manual shift form on MSVC and the same
builtin everywhere else.

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* Address review round 4: single BSWAP16 home, mixer arg refactor, stragglers

effects.h includes macros.h instead of carrying its own BSWAP16 copy.
mixer.c drops its unused arguments and locals outright, with the ABI
macros absorbing the removed parameters the same way they already
absorb pkt. func_8028EC98 takes no argument, the fourth intrinsic
pragma leaves math_util_2.c, the backup checksum loop joins its
siblings on size_t, and two leftover casts and an UNUSED go away.

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* ending: back out the debug-print cast for #745

The int-to-pointer warning it silenced returns until #745 reworks
this code.

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* effects.h: drop the include annotation

Co-Authored-By: Claude Fable 5 &lt;noreply@anthropic.com&gt;

* Retrigger CI after runner disconnect

* mixer: restore the Impl signatures and suppress the unused-parameter warning instead

* Clean up unused variables in code_80005FD0.c

Removed unused variables and assignments in CPU behaviour code.

* Remove unused camera variable from function

Remove unused camera variable in look_behind_toggle function.

* Update comment for bcopy and memcpy clarification

Clarified comment about bcopy and memcpy usage.

---------

Co-authored-by: Claude Fable 5 &lt;noreply@anthropic.com&gt;
Co-authored-by: MegaMech &lt;MegaMech@users.noreply.github.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Refactor cmake (#721)</title>
<updated>2026-07-23T00:02:58+00:00</updated>
<author>
<name>coco875</name>
<email>59367621+coco875@users.noreply.github.com</email>
</author>
<published>2026-07-23T00:02:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/SpaghettiKart/commit/?id=4c24ae2bc2294c96a81d296a68b6d404f34358e7'/>
<id>4c24ae2bc2294c96a81d296a68b6d404f34358e7</id>
<content type='text'>
* some start of refactor

* Update SetFlags.cmake

* Update SetCmakeVar.cmake

* Update SetFlags.cmake

* Fix error int-convertion

* more refactor

* clean up include and source file

* fix link of lib

* fix a warning

* fix include in src/actors

* fix include in src/debug

* fix include in src/ending

* fix include in src/engine/actors

* fix include in src/engine/cameras

* fix include in src/engine/editor

* fix include in src/engine/objects

* fix include in src/engine/tracks

* fix include in src/port/ui

* fix include in src/racing

* fix include in src/engine/vehicles

* fix include in subfolder of src/engine

* fix include in src/engine

* fix include in src/enhancements

* fix include in src

* fix switch

* invert common and findlib

* Update SetFlags.cmake

* clean up some workflow

* some splification

* Update build.sh

* Update Game.h

* add header back

* Delete test_check.cmake

* continue

* Update common.cmake</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* some start of refactor

* Update SetFlags.cmake

* Update SetCmakeVar.cmake

* Update SetFlags.cmake

* Fix error int-convertion

* more refactor

* clean up include and source file

* fix link of lib

* fix a warning

* fix include in src/actors

* fix include in src/debug

* fix include in src/ending

* fix include in src/engine/actors

* fix include in src/engine/cameras

* fix include in src/engine/editor

* fix include in src/engine/objects

* fix include in src/engine/tracks

* fix include in src/port/ui

* fix include in src/racing

* fix include in src/engine/vehicles

* fix include in subfolder of src/engine

* fix include in src/engine

* fix include in src/enhancements

* fix include in src

* fix switch

* invert common and findlib

* Update SetFlags.cmake

* clean up some workflow

* some splification

* Update build.sh

* Update Game.h

* add header back

* Delete test_check.cmake

* continue

* Update common.cmake</pre>
</div>
</content>
</entry>
<entry>
<title>Force proper wrapping on fov angles. (#699)</title>
<updated>2026-05-03T02:08:05+00:00</updated>
<author>
<name>Alessio Tosto</name>
<email>rinnegatamante@gmail.com</email>
</author>
<published>2026-05-03T02:08:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/SpaghettiKart/commit/?id=76d19f7e430ef14881a1c8edd3a3c37c334e1df1'/>
<id>76d19f7e430ef14881a1c8edd3a3c37c334e1df1</id>
<content type='text'>
Co-authored-by: coco875 &lt;59367621+coco875@users.noreply.github.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Co-authored-by: coco875 &lt;59367621+coco875@users.noreply.github.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Name ScreenContext, Refactor Course class to Track (#583)</title>
<updated>2025-12-08T04:00:06+00:00</updated>
<author>
<name>MegaMech</name>
<email>MegaMech@users.noreply.github.com</email>
</author>
<published>2025-12-08T04:00:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/SpaghettiKart/commit/?id=dbae0c3aca33a022e8c1d511fe521407375057b2'/>
<id>dbae0c3aca33a022e8c1d511fe521407375057b2</id>
<content type='text'>
* Rename Screen Contexts

* typedef ScreenContext struct

* Fix Compile

* Rename Course.cpp to Track.cpp

* Refactor Course to Track

* A few renames

* General Cleanup

* More Rename

* More names

* Move TrackSections struct to Track.h

---------

Co-authored-by: MegaMech &lt;7255464+MegaMech@users.noreply.github.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Rename Screen Contexts

* typedef ScreenContext struct

* Fix Compile

* Rename Course.cpp to Track.cpp

* Refactor Course to Track

* A few renames

* General Cleanup

* More Rename

* More names

* Move TrackSections struct to Track.h

---------

Co-authored-by: MegaMech &lt;7255464+MegaMech@users.noreply.github.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Document player alpha (#396)</title>
<updated>2025-07-03T12:35:42+00:00</updated>
<author>
<name>Maciek Baron</name>
<email>1668712+MaciekBaron@users.noreply.github.com</email>
</author>
<published>2025-07-03T12:35:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/SpaghettiKart/commit/?id=99689a3f70d8cb38178f92b87ecdcdbbdb200429'/>
<id>99689a3f70d8cb38178f92b87ecdcdbbdb200429</id>
<content type='text'>
* Document player alpha

* Fix typo

* Document further alpha things

* Document movement

* Fix indentation</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Document player alpha

* Fix typo

* Document further alpha things

* Document movement

* Fix indentation</pre>
</div>
</content>
</entry>
<entry>
<title>make some texture more flexible and editable + port documentation from the decomp + fix some bug (#309)</title>
<updated>2025-07-01T23:42:14+00:00</updated>
<author>
<name>coco875</name>
<email>59367621+coco875@users.noreply.github.com</email>
</author>
<published>2025-07-01T23:42:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/SpaghettiKart/commit/?id=7937896598f3df46eb78c158bde787bc4f12ad7f'/>
<id>7937896598f3df46eb78c158bde787bc4f12ad7f</id>
<content type='text'>
* support a more flexible background

* remove useless function

* rename of some font

* experimental png

* migrate to the new initdata

* fix skybox and adjust minimap

* format in audio

* simplify player render

* simplify shell render and support custom texture of shell

* clean redshell texture

* format and multiple fix

* some update of name

* allow change icon of character

* more rename

* continue rename

* more documentation and simplification

* change lus and continue rename

* continue rename

* few fix for asan

* fix ghost

* Update menu_items.c

* fix mac error

* some test of tweak for texture

* some tweak

* some button constant

* finish fix ghost

* Update menu_items.c

* Update render_objects.c

* Update menu_items.c

* Update libultraship

* Update libultraship

* Delete valgrind.report

* Update libultraship

* callgrind benchmark

* Update valgrind_callgrind.sh

* fix animation

* some rename

* remove useless submodule

* Update libultraship

* fix assets

* fix mistake

* fix more mistake

* Update menu_items.c

* sync more rename with the decom + fix review

* fix a mistake

* fix more mistake

* re add the limit of fps

* fix some hd texture and minimap

* fix a name

* Update menu_items.c

* fix a regression

* fix some segment 5 texture (not all)

* Update camera.c

* improve performance of custom sprite

* fix flatten bug and add documentation on player vertex

* Update render_player.c

* fix data menu

* fix trophy for 50 and 150

* Update memory.c

* Update code_80057C60.c

* fix ghost

* fix boo tlut

* fix a mistake in yaml

* fix yaml

* Update common_data.yml

* add comment for segment 3

* allow even more change in texture

* Update common_data.yml

* Update update.inc.c

* Update camera.c

* Update some_data.c

* wip changes

* Update other_textures.yml

* More changes

* Update update_objects.c

* Fix compile

* Update memory.c

* Update memory.c

---------

Co-authored-by: MegaMech &lt;MegaMech@users.noreply.github.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* support a more flexible background

* remove useless function

* rename of some font

* experimental png

* migrate to the new initdata

* fix skybox and adjust minimap

* format in audio

* simplify player render

* simplify shell render and support custom texture of shell

* clean redshell texture

* format and multiple fix

* some update of name

* allow change icon of character

* more rename

* continue rename

* more documentation and simplification

* change lus and continue rename

* continue rename

* few fix for asan

* fix ghost

* Update menu_items.c

* fix mac error

* some test of tweak for texture

* some tweak

* some button constant

* finish fix ghost

* Update menu_items.c

* Update render_objects.c

* Update menu_items.c

* Update libultraship

* Update libultraship

* Delete valgrind.report

* Update libultraship

* callgrind benchmark

* Update valgrind_callgrind.sh

* fix animation

* some rename

* remove useless submodule

* Update libultraship

* fix assets

* fix mistake

* fix more mistake

* Update menu_items.c

* sync more rename with the decom + fix review

* fix a mistake

* fix more mistake

* re add the limit of fps

* fix some hd texture and minimap

* fix a name

* Update menu_items.c

* fix a regression

* fix some segment 5 texture (not all)

* Update camera.c

* improve performance of custom sprite

* fix flatten bug and add documentation on player vertex

* Update render_player.c

* fix data menu

* fix trophy for 50 and 150

* Update memory.c

* Update code_80057C60.c

* fix ghost

* fix boo tlut

* fix a mistake in yaml

* fix yaml

* Update common_data.yml

* add comment for segment 3

* allow even more change in texture

* Update common_data.yml

* Update update.inc.c

* Update camera.c

* Update some_data.c

* wip changes

* Update other_textures.yml

* More changes

* Update update_objects.c

* Fix compile

* Update memory.c

* Update memory.c

---------

Co-authored-by: MegaMech &lt;MegaMech@users.noreply.github.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Add Interpolation (#204)</title>
<updated>2025-06-08T03:38:12+00:00</updated>
<author>
<name>MegaMech</name>
<email>MegaMech@users.noreply.github.com</email>
</author>
<published>2025-06-08T03:38:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/SpaghettiKart/commit/?id=44db9bab773cc3b14c8f944a9411673b6fe08b01'/>
<id>44db9bab773cc3b14c8f944a9411673b6fe08b01</id>
<content type='text'>
* initial work

* more work

* progress

* Fixed slow fps

* Add Lywx changes

* Interp Works

* Test default tick/logic update

* Added missing include (#202)

* Added missing include

* More missing includes

---------

Co-authored-by: MegaMech &lt;MegaMech@users.noreply.github.com&gt;

* test

* Revert "test"

This reverts commit 1a810d74cc8531ce486bcb1c399cc6798fa1b51d.

* Interp Item box

* Actually interpolate item box

* fix clouds

* interp player?

* Test 2

* Fix mistake

* tag and fix item boxes

* tag fake item box and whatever func_800696CC is

* these aren't needed

* tag karts

* Slightly better falling rocks(still needs work)

* Tag Smoke and Dust

* Removed unneeded code from falling_rock

* tag whatever func_80051ABC is

* add missing rotate x coord

* GrandPrixBallon/kart shadow

* Green shells tag, and added comments I neglected to add before.

* doesn't compile on win

* Fixes

* Disabled camera interpolation

* Balloons fixes

* progress

* set_transform_matrix compiles

* Compile setTransformMatrix

* More transforms interp

* Add more interps

* matrix

* Matrix multi interp

* Fix interpolation camera bug

* Missing includes needed for Linux.

* Excluded access to HM64 Labs on Switch.

* interpolation tags for various objects

* Bowser castle statue flame interpolated.

* tag hedgehogs

* cloud interpolation

* Interpolated smoke particles from shells

* cloud interpolation refactor

* Interpolated snowflakes

* Interpolated penguins, also added comment tags to places I missed.

* tag Snowman interpolation

* Interpolated player reflection(sherbet land)

* Forgot to uncomment stuff while testing

* better tag

* tag leaves

* Set the default FPS to 30

* tag hud

* Fixed "Match Refresh Rate" option

* adjust draw distance

* remove innecessary rock tag

* rag rocks

* better tag

* Tagged player rank placement in HUD

* Tagged Bat, Boos, and TrashBin(Banshee Boardwalk objects)

* Refactor render_screens and fix editor raycast

* better object interpolation

* shift is not needed here

* fix tag

* fix tags

* mole comments

* comment

* Changed how shell flames are interpolated.

* interpolated ended scene fireworks.

* Tagged star particles in the ending scene

* Shell flames handled better.

* this isn't needed

* Fix multiplayer cameras

* Fixed loading battle maps.

* Tagged battle balloons

* Some fixes for battle mode

* No longer needed changes toAFinishline with the changes mega made.

* Tag finishline

* fix to make it compile with cmake 3.31

* changed mtxf_multiplication() to fix vert explosion in Desert &amp; DK parkway.(provided by Coco.)

* fix memory leaks, avoid invalidate texture (#207)

* Fixed macos

* More stupid fixes

* update with main and update torch and lus and enable action on this branch

* Update FrameInterpolation.h

* Update FrameInterpolation.cpp

* fix some memory leak

* Update torch

* Update torch

* update torch and lus

* reduce texture import

* don't use fork of torch and lus

* Update torch

* Update torch

---------

Co-authored-by: Lywx &lt;kiritodev01@gmail.com&gt;

* Refactor World::Courses to unique_ptr (#211)

* wip course unique ptr

* Track unique_ptr : This probably compiles

* Finish impl Courses as unique_ptr

* Fix error

* Fixes

* More fixes

* Cleanup

* Remove old vars

---------

Co-authored-by: MegaMech &lt;7255464+MegaMech@users.noreply.github.com&gt;

* particle boat and train

* fix player particle interpolation

* add modify interpolation target fps in menu

* fix windows

* Update libultraship

* Fix logo interp

* Interp SetTextMatrix

* Fix freecam camera

* Clarify comment

* Clarify func

* fix linux compilation

* Update Thwomp.cpp

* Update Thwomp.h

* Update render.inc.c

* Update render.inc.c

* Update gbiMacro.c

* interp falling rock shadow

* Revert change that has no explanation

* Update code_80057C60.c

* Update code_80057C60.c

* Update GrandPrixBalloons.cpp

* Update Lakitu.cpp

* Update framebuffer_effects.c

* Update render_courses.c

---------

Co-authored-by: Sonic Dreamcaster &lt;alejandro.asenjo88@gmail.com&gt;
Co-authored-by: KiritoDv &lt;kiritodev01@gmail.com&gt;
Co-authored-by: sitton76 &lt;58642183+sitton76@users.noreply.github.com&gt;
Co-authored-by: MegaMech &lt;7255464+MegaMech@users.noreply.github.com&gt;
Co-authored-by: coco875 &lt;59367621+coco875@users.noreply.github.com&gt;
Co-authored-by: coco875 &lt;pereira.jannin@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* initial work

* more work

* progress

* Fixed slow fps

* Add Lywx changes

* Interp Works

* Test default tick/logic update

* Added missing include (#202)

* Added missing include

* More missing includes

---------

Co-authored-by: MegaMech &lt;MegaMech@users.noreply.github.com&gt;

* test

* Revert "test"

This reverts commit 1a810d74cc8531ce486bcb1c399cc6798fa1b51d.

* Interp Item box

* Actually interpolate item box

* fix clouds

* interp player?

* Test 2

* Fix mistake

* tag and fix item boxes

* tag fake item box and whatever func_800696CC is

* these aren't needed

* tag karts

* Slightly better falling rocks(still needs work)

* Tag Smoke and Dust

* Removed unneeded code from falling_rock

* tag whatever func_80051ABC is

* add missing rotate x coord

* GrandPrixBallon/kart shadow

* Green shells tag, and added comments I neglected to add before.

* doesn't compile on win

* Fixes

* Disabled camera interpolation

* Balloons fixes

* progress

* set_transform_matrix compiles

* Compile setTransformMatrix

* More transforms interp

* Add more interps

* matrix

* Matrix multi interp

* Fix interpolation camera bug

* Missing includes needed for Linux.

* Excluded access to HM64 Labs on Switch.

* interpolation tags for various objects

* Bowser castle statue flame interpolated.

* tag hedgehogs

* cloud interpolation

* Interpolated smoke particles from shells

* cloud interpolation refactor

* Interpolated snowflakes

* Interpolated penguins, also added comment tags to places I missed.

* tag Snowman interpolation

* Interpolated player reflection(sherbet land)

* Forgot to uncomment stuff while testing

* better tag

* tag leaves

* Set the default FPS to 30

* tag hud

* Fixed "Match Refresh Rate" option

* adjust draw distance

* remove innecessary rock tag

* rag rocks

* better tag

* Tagged player rank placement in HUD

* Tagged Bat, Boos, and TrashBin(Banshee Boardwalk objects)

* Refactor render_screens and fix editor raycast

* better object interpolation

* shift is not needed here

* fix tag

* fix tags

* mole comments

* comment

* Changed how shell flames are interpolated.

* interpolated ended scene fireworks.

* Tagged star particles in the ending scene

* Shell flames handled better.

* this isn't needed

* Fix multiplayer cameras

* Fixed loading battle maps.

* Tagged battle balloons

* Some fixes for battle mode

* No longer needed changes toAFinishline with the changes mega made.

* Tag finishline

* fix to make it compile with cmake 3.31

* changed mtxf_multiplication() to fix vert explosion in Desert &amp; DK parkway.(provided by Coco.)

* fix memory leaks, avoid invalidate texture (#207)

* Fixed macos

* More stupid fixes

* update with main and update torch and lus and enable action on this branch

* Update FrameInterpolation.h

* Update FrameInterpolation.cpp

* fix some memory leak

* Update torch

* Update torch

* update torch and lus

* reduce texture import

* don't use fork of torch and lus

* Update torch

* Update torch

---------

Co-authored-by: Lywx &lt;kiritodev01@gmail.com&gt;

* Refactor World::Courses to unique_ptr (#211)

* wip course unique ptr

* Track unique_ptr : This probably compiles

* Finish impl Courses as unique_ptr

* Fix error

* Fixes

* More fixes

* Cleanup

* Remove old vars

---------

Co-authored-by: MegaMech &lt;7255464+MegaMech@users.noreply.github.com&gt;

* particle boat and train

* fix player particle interpolation

* add modify interpolation target fps in menu

* fix windows

* Update libultraship

* Fix logo interp

* Interp SetTextMatrix

* Fix freecam camera

* Clarify comment

* Clarify func

* fix linux compilation

* Update Thwomp.cpp

* Update Thwomp.h

* Update render.inc.c

* Update render.inc.c

* Update gbiMacro.c

* interp falling rock shadow

* Revert change that has no explanation

* Update code_80057C60.c

* Update code_80057C60.c

* Update GrandPrixBalloons.cpp

* Update Lakitu.cpp

* Update framebuffer_effects.c

* Update render_courses.c

---------

Co-authored-by: Sonic Dreamcaster &lt;alejandro.asenjo88@gmail.com&gt;
Co-authored-by: KiritoDv &lt;kiritodev01@gmail.com&gt;
Co-authored-by: sitton76 &lt;58642183+sitton76@users.noreply.github.com&gt;
Co-authored-by: MegaMech &lt;7255464+MegaMech@users.noreply.github.com&gt;
Co-authored-by: coco875 &lt;59367621+coco875@users.noreply.github.com&gt;
Co-authored-by: coco875 &lt;pereira.jannin@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Impl new intro (#193)</title>
<updated>2025-05-15T00:30:32+00:00</updated>
<author>
<name>MegaMech</name>
<email>MegaMech@users.noreply.github.com</email>
</author>
<published>2025-05-15T00:30:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/SpaghettiKart/commit/?id=32632cacdb316d7f2d3b6ecdb634f0ef9aebadf0'/>
<id>32632cacdb316d7f2d3b6ecdb634f0ef9aebadf0</id>
<content type='text'>
* Update menus

* Update CMakeLists.txt

* Add Ship

* Impl hm ship actors

* Update HM course

* Impl new intro

* Finish intro scene

* Rename

* Start Editor Work

* raycast works

* Fix ScreenRayTrace in widescreen

* Basic Actor Picking

* wip

* Editor use vtx collision

* gizmo work

* otr works for object picking

* Impl objects for editor

* actor init

* Update

* Add all axis move (freemove)

* Docking Windows works here

* Setup imgui layout for editor

* Editor Snap to Ground works

* Basic Scene Explorer Works

* Editor get actor names

* Impl editor object names

* impl Editor Play and Pause buttons

* Editor translate works while paused

* Fix freecam lighting

* Added adjustable track properties to editor

* Editor matrix, icons, rotation, impl light

* Setup Track Properties 1

* Editor tooling wip

* Load modded o2rs

* Don't enable hud if editor is enabled

* Updates

* SceneManager nearly working

* Fix mario kart 64 intro logo sizing

* Fix Rotator

* Finish new matrix translation code

* Cleanup headers

* Cleanup

* Cleanup 2

* Cleanup 3

* Prevent divize by zero crash

* Add visible circle for translate in all axis

* Editor scaling/rot works properly now

* Scale All_Axis evenly

* Fixes to includes to work on Linux.

* Removed overfilled arguments in gfx_create_framebuffer()

* Added missing function definitions to Game.h

* Editor sun face the camera

* Add rotation model to gizmo

* Add new handles

* Failed attempt at transforming collision

* Impl water volume

* Import fast64 paths

* water surface

* Scene Setup 1

* Custom Track O2R almost working needs testing

* Custom Track Load path O2r

* Render custom track. Wip collision

* Add missing function

* Debug Spawning Custom O2R Track

* Import courses working now

* Fix memory leak

* Remove New Track Button

* Engine.cpp more consistent with sf64

* Fix Editor Enable Button

* Editor Accurate mouse click drag objects

* Editor selects closest object and cleanup

* Gizmo rot and scale collision working

* Remove constexpr from IRotator

* Impl properties for location/rot/scale

* Better Properties display, swap rot handles

* Fix content browser dock and editor now disabled by default

* Remove GameInfoWindow, Multiplayer Button, and FPS Slider

* Disable Editor when its disabled

* Add new logo to hm intro

* Fix pause menu item box cursor

* Remove minimap from Course::from_json and to_json

* Impl Import Minimap

* Fix custom minimap rendering

* minimap uses extension .png

* Refactor minimap

* Freecam only for player 1

* GrandPrix Balloons work in custom track

* Track Id is now std::string and outside of Props

* Moved editor assets to be included in ship.o2r

* Fixed GenerateO2R to package the correct folder and save to the correct filename

* Linux specific changes.

* Added "#include &lt;stdio.h&gt;" that required them
* Changed how the "ship.o2r" file is loaded to allow it to load the file from within appimages.
* Changed the Linuxdeploy version to avoid errors later when the Github Actions creates appimages(same fix applied to other ports.)

* Revert "Moved editor assets to be included in ship.o2r"

This reverts commit 05704c01f761baa67a83e357d9765f5c6b5e3fdb.

* Added back files(this time without LUS changes)

* Changed workflow file to use correct filename for assets file.

* Missed a few spots in the workflow file.

* Added .desktop file and made corrections to the main workflow.

* Added the rest of upstream CMakeLists.txt

* disabled USE_NETWORKING

* New InverseMatrix

* Renamed both .o2r files to be more accurate to its contents.

* Reverted CmakeList.txt

---------

Co-authored-by: MegaMech &lt;7255464+MegaMech@users.noreply.github.com&gt;
Co-authored-by: sitton76 &lt;58642183+sitton76@users.noreply.github.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Update menus

* Update CMakeLists.txt

* Add Ship

* Impl hm ship actors

* Update HM course

* Impl new intro

* Finish intro scene

* Rename

* Start Editor Work

* raycast works

* Fix ScreenRayTrace in widescreen

* Basic Actor Picking

* wip

* Editor use vtx collision

* gizmo work

* otr works for object picking

* Impl objects for editor

* actor init

* Update

* Add all axis move (freemove)

* Docking Windows works here

* Setup imgui layout for editor

* Editor Snap to Ground works

* Basic Scene Explorer Works

* Editor get actor names

* Impl editor object names

* impl Editor Play and Pause buttons

* Editor translate works while paused

* Fix freecam lighting

* Added adjustable track properties to editor

* Editor matrix, icons, rotation, impl light

* Setup Track Properties 1

* Editor tooling wip

* Load modded o2rs

* Don't enable hud if editor is enabled

* Updates

* SceneManager nearly working

* Fix mario kart 64 intro logo sizing

* Fix Rotator

* Finish new matrix translation code

* Cleanup headers

* Cleanup

* Cleanup 2

* Cleanup 3

* Prevent divize by zero crash

* Add visible circle for translate in all axis

* Editor scaling/rot works properly now

* Scale All_Axis evenly

* Fixes to includes to work on Linux.

* Removed overfilled arguments in gfx_create_framebuffer()

* Added missing function definitions to Game.h

* Editor sun face the camera

* Add rotation model to gizmo

* Add new handles

* Failed attempt at transforming collision

* Impl water volume

* Import fast64 paths

* water surface

* Scene Setup 1

* Custom Track O2R almost working needs testing

* Custom Track Load path O2r

* Render custom track. Wip collision

* Add missing function

* Debug Spawning Custom O2R Track

* Import courses working now

* Fix memory leak

* Remove New Track Button

* Engine.cpp more consistent with sf64

* Fix Editor Enable Button

* Editor Accurate mouse click drag objects

* Editor selects closest object and cleanup

* Gizmo rot and scale collision working

* Remove constexpr from IRotator

* Impl properties for location/rot/scale

* Better Properties display, swap rot handles

* Fix content browser dock and editor now disabled by default

* Remove GameInfoWindow, Multiplayer Button, and FPS Slider

* Disable Editor when its disabled

* Add new logo to hm intro

* Fix pause menu item box cursor

* Remove minimap from Course::from_json and to_json

* Impl Import Minimap

* Fix custom minimap rendering

* minimap uses extension .png

* Refactor minimap

* Freecam only for player 1

* GrandPrix Balloons work in custom track

* Track Id is now std::string and outside of Props

* Moved editor assets to be included in ship.o2r

* Fixed GenerateO2R to package the correct folder and save to the correct filename

* Linux specific changes.

* Added "#include &lt;stdio.h&gt;" that required them
* Changed how the "ship.o2r" file is loaded to allow it to load the file from within appimages.
* Changed the Linuxdeploy version to avoid errors later when the Github Actions creates appimages(same fix applied to other ports.)

* Revert "Moved editor assets to be included in ship.o2r"

This reverts commit 05704c01f761baa67a83e357d9765f5c6b5e3fdb.

* Added back files(this time without LUS changes)

* Changed workflow file to use correct filename for assets file.

* Missed a few spots in the workflow file.

* Added .desktop file and made corrections to the main workflow.

* Added the rest of upstream CMakeLists.txt

* disabled USE_NETWORKING

* New InverseMatrix

* Renamed both .o2r files to be more accurate to its contents.

* Reverted CmakeList.txt

---------

Co-authored-by: MegaMech &lt;7255464+MegaMech@users.noreply.github.com&gt;
Co-authored-by: sitton76 &lt;58642183+sitton76@users.noreply.github.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>fix a matrix (#185)</title>
<updated>2025-02-07T21:30:36+00:00</updated>
<author>
<name>coco875</name>
<email>59367621+coco875@users.noreply.github.com</email>
</author>
<published>2025-02-07T21:30:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/SpaghettiKart/commit/?id=6f8cbc0279004a39635c922b824e8561f5355bc5'/>
<id>6f8cbc0279004a39635c922b824e8561f5355bc5</id>
<content type='text'>
* fix a matrix

* remove LOAD_ASSET</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* fix a matrix

* remove LOAD_ASSET</pre>
</div>
</content>
</entry>
<entry>
<title>fix atan2f intrinsic compiler error in MSVC</title>
<updated>2024-12-01T06:19:46+00:00</updated>
<author>
<name>Sonic Dreamcaster</name>
<email>alejandro.asenjo88@gmail.com</email>
</author>
<published>2024-12-01T06:19:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/SpaghettiKart/commit/?id=779c43c6c1466baf091c1c2ac5dbab14f27765e8'/>
<id>779c43c6c1466baf091c1c2ac5dbab14f27765e8</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
