<feed xmlns='http://www.w3.org/2005/Atom'>
<title>SpaghettiKart/src/port/interpolation, 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>Fix garbage frame flash on cinematic camera cuts (#720)</title>
<updated>2026-07-27T05:00:47+00:00</updated>
<author>
<name>quarrel07</name>
<email>178681861+quarrel07@users.noreply.github.com</email>
</author>
<published>2026-07-27T05:00:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/SpaghettiKart/commit/?id=5b28472d477bab101dee2a0f469fe2aee2c58a01'/>
<id>5b28472d477bab101dee2a0f469fe2aee2c58a01</id>
<content type='text'>
* Fix garbage frame flash on cinematic camera cuts

Frame interpolation blended matrices across instant camera teleports in
attract/demo and post-race cameras, flashing 1-2 frames of sheared
geometry. Complete the existing camera-epoch mechanism: flag a cut in
func_80019890 when the camera moves &gt;100 units, and have the
interpolator snap that frame to the new view instead of blending.

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

* Retrigger CI (transient 502 downloading libogg from gitlab.xiph.org)

* Name the cinematic shot dispatcher

Review feedback on #720: func_80019890 -&gt; camera_start_cinematic_shot.
It starts whichever shot D_80164680 has selected for a camera, dispatching
to the per-shot setup that teleports the camera to the shot's opening
position, which is why the cut detection lives there.

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

* Apply fix to freecam

Added FrameInterpolation_DontInterpolateCamera calls to improve camera behavior when changing target players.

---------

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>
* Fix garbage frame flash on cinematic camera cuts

Frame interpolation blended matrices across instant camera teleports in
attract/demo and post-race cameras, flashing 1-2 frames of sheared
geometry. Complete the existing camera-epoch mechanism: flag a cut in
func_80019890 when the camera moves &gt;100 units, and have the
interpolator snap that frame to the new view instead of blending.

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

* Retrigger CI (transient 502 downloading libogg from gitlab.xiph.org)

* Name the cinematic shot dispatcher

Review feedback on #720: func_80019890 -&gt; camera_start_cinematic_shot.
It starts whichever shot D_80164680 has selected for a camera, dispatching
to the per-shot setup that teleports the camera to the shot's opening
position, which is why the cut detection lives there.

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

* Apply fix to freecam

Added FrameInterpolation_DontInterpolateCamera calls to improve camera behavior when changing target players.

---------

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>invert condition in menu and some adjustement in interpolation (#611)</title>
<updated>2025-12-23T13:27:27+00:00</updated>
<author>
<name>coco875</name>
<email>59367621+coco875@users.noreply.github.com</email>
</author>
<published>2025-12-23T13:27:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/SpaghettiKart/commit/?id=b0582b5c32914a815fe6a2ffc41f3eb9c24a3a2b'/>
<id>b0582b5c32914a815fe6a2ffc41f3eb9c24a3a2b</id>
<content type='text'>
* use more unique ptr and fix a shell crash

* remove useless mods folder

* add even more unique_ptr

* Update KoopaTroopaBeach.cpp

* restore a throw

* Update Game.cpp

* automatically create mods folder

* fix oob in external by assuming that all 8 player can make sound

* better texture loading

* add destructor for gameobject

* avoid out of bound in audio sample

* Update FrameInterpolation.cpp

* Update torch

* invert condition

* adjust interpolation</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* use more unique ptr and fix a shell crash

* remove useless mods folder

* add even more unique_ptr

* Update KoopaTroopaBeach.cpp

* restore a throw

* Update Game.cpp

* automatically create mods folder

* fix oob in external by assuming that all 8 player can make sound

* better texture loading

* add destructor for gameobject

* avoid out of bound in audio sample

* Update FrameInterpolation.cpp

* Update torch

* invert condition

* adjust interpolation</pre>
</div>
</content>
</entry>
<entry>
<title>Clean ptr and fix (#610)</title>
<updated>2025-12-22T21:48:07+00:00</updated>
<author>
<name>coco875</name>
<email>59367621+coco875@users.noreply.github.com</email>
</author>
<published>2025-12-22T21:48:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/SpaghettiKart/commit/?id=ce92773a602cca246c44dbec9fb87656fedfa323'/>
<id>ce92773a602cca246c44dbec9fb87656fedfa323</id>
<content type='text'>
* use more unique ptr and fix a shell crash

* remove useless mods folder

* add even more unique_ptr

* Update KoopaTroopaBeach.cpp

* restore a throw

* Update Game.cpp

* automatically create mods folder

* fix oob in external by assuming that all 8 player can make sound

* better texture loading

* add destructor for gameobject

* avoid out of bound in audio sample

* Update FrameInterpolation.cpp

* Update torch</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* use more unique ptr and fix a shell crash

* remove useless mods folder

* add even more unique_ptr

* Update KoopaTroopaBeach.cpp

* restore a throw

* Update Game.cpp

* automatically create mods folder

* fix oob in external by assuming that all 8 player can make sound

* better texture loading

* add destructor for gameobject

* avoid out of bound in audio sample

* Update FrameInterpolation.cpp

* Update torch</pre>
</div>
</content>
</entry>
<entry>
<title>Fix Moles and some UI Interpolation bugs (#565)</title>
<updated>2025-11-23T01:13:33+00:00</updated>
<author>
<name>MegaMech</name>
<email>MegaMech@users.noreply.github.com</email>
</author>
<published>2025-11-23T01:13:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/SpaghettiKart/commit/?id=5f60e30b59497d54b23097f8dbe5009faa43504d'/>
<id>5f60e30b59497d54b23097f8dbe5009faa43504d</id>
<content type='text'>
* Update render_objects.c

* Update FrameInterpolation.h

* Update render_objects.c

* Fix mac compile probably

* Fix Mole Dirt Particles

* Fix Mole Duplication Bug, probably

* Fix drawing using wrong camera bug</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Update render_objects.c

* Update FrameInterpolation.h

* Update render_objects.c

* Fix mac compile probably

* Fix Mole Dirt Particles

* Fix Mole Duplication Bug, probably

* Fix drawing using wrong camera bug</pre>
</div>
</content>
</entry>
<entry>
<title>Implement SpawnParams struct (#536)</title>
<updated>2025-11-10T02:07:44+00:00</updated>
<author>
<name>MegaMech</name>
<email>MegaMech@users.noreply.github.com</email>
</author>
<published>2025-11-10T02:07:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/SpaghettiKart/commit/?id=de9c5d510175bba11ab8704e67be3a3a94f9149e'/>
<id>de9c5d510175bba11ab8704e67be3a3a94f9149e</id>
<content type='text'>
* Impl SpawnParams

* Added json submodule

* Update json

* Update

* Works

* Remove comment

* Works refactor

* Snowman and thwomp working

* Impl hot air balloon

* More progress

* All OObjects are done

* cleanup

* Refactor 2Dpath to normal path

* Update nlohmann json &amp; fix compile

* Rest of actors

* MORE CHANGES

* Finish actors

* Done PR, some fix to collision viewer

* Impl falling rocks

* Add const

* wip editor refactor

* Property work

* continue

* Overridable editor properties

* Actor saving/loading works now

* Fix light alignment

* Clarification

* Impl penguin

* params impl signs

* properties impl falling rock

* More property impls

* impl air balloon

* Add spawnParams to OObject Translate

* Snowman translate better

* impl hedgehog properly

* properties impl trophy

* thwomp progress

* Finish impl properties

* Fix compile

* Fix cursor collisions

* Move registered actors

* Rename pathPoint XYZ to xyz

* Fix editor pause bug

* Clean up

* Review comments

* Remove SpawnParams struct from actor classes

* Rename

* Player Label First Iteration

* Work now

* Working 3d text

* Fix boo bug

* Finish AText actor

* Fix spawnparams compile

* Register AText

* Finish Text Actor

* Fix thwomp interpolation

* Fix compile

* Fix crab and hedgehog

* Fix loading flagpole

* Fix Hot Air Balloon

* Turn zbuffer on for AText

* Update

---------

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>
* Impl SpawnParams

* Added json submodule

* Update json

* Update

* Works

* Remove comment

* Works refactor

* Snowman and thwomp working

* Impl hot air balloon

* More progress

* All OObjects are done

* cleanup

* Refactor 2Dpath to normal path

* Update nlohmann json &amp; fix compile

* Rest of actors

* MORE CHANGES

* Finish actors

* Done PR, some fix to collision viewer

* Impl falling rocks

* Add const

* wip editor refactor

* Property work

* continue

* Overridable editor properties

* Actor saving/loading works now

* Fix light alignment

* Clarification

* Impl penguin

* params impl signs

* properties impl falling rock

* More property impls

* impl air balloon

* Add spawnParams to OObject Translate

* Snowman translate better

* impl hedgehog properly

* properties impl trophy

* thwomp progress

* Finish impl properties

* Fix compile

* Fix cursor collisions

* Move registered actors

* Rename pathPoint XYZ to xyz

* Fix editor pause bug

* Clean up

* Review comments

* Remove SpawnParams struct from actor classes

* Rename

* Player Label First Iteration

* Work now

* Working 3d text

* Fix boo bug

* Finish AText actor

* Fix spawnparams compile

* Register AText

* Finish Text Actor

* Fix thwomp interpolation

* Fix compile

* Fix crab and hedgehog

* Fix loading flagpole

* Fix Hot Air Balloon

* Turn zbuffer on for AText

* Update

---------

Co-authored-by: MegaMech &lt;7255464+MegaMech@users.noreply.github.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Replace FrameInterpolation Pop/Push with RecordOpen/CloseChild (#542)</title>
<updated>2025-09-26T16:14:45+00:00</updated>
<author>
<name>Varuuna</name>
<email>medumee@gmail.com</email>
</author>
<published>2025-09-26T16:14:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/SpaghettiKart/commit/?id=72b5773d4d76385e330a62c100805fad2df1916e'/>
<id>72b5773d4d76385e330a62c100805fad2df1916e</id>
<content type='text'>
* Replaced Pop/Push for Yoshi Egg and Mario Sign actors

* Removed comments

* applied suggestions

---------

Co-authored-by: MegaMech &lt;MegaMech@users.noreply.github.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Replaced Pop/Push for Yoshi Egg and Mario Sign actors

* Removed comments

* applied suggestions

---------

Co-authored-by: MegaMech &lt;MegaMech@users.noreply.github.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Combine Matrix Stacks &amp; use std::deque Instead of std::vector to Prevent Dangling Pointers (#525)</title>
<updated>2025-08-07T17:27:14+00:00</updated>
<author>
<name>MegaMech</name>
<email>MegaMech@users.noreply.github.com</email>
</author>
<published>2025-08-07T17:27:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/SpaghettiKart/commit/?id=575d860e5de99b5a529a9ad646c510d990a8fb43'/>
<id>575d860e5de99b5a529a9ad646c510d990a8fb43</id>
<content type='text'>
* Update Matrix.cpp

* Update World.h

* Stak

* Hopefully done with matrix

---------

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>
* Update Matrix.cpp

* Update World.h

* Stak

* Hopefully done with matrix

---------

Co-authored-by: MegaMech &lt;7255464+MegaMech@users.noreply.github.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Stop frame record on some stuff. (#225)</title>
<updated>2025-06-19T22:37:30+00:00</updated>
<author>
<name>sitton76</name>
<email>58642183+sitton76@users.noreply.github.com</email>
</author>
<published>2025-06-19T22:37:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/SpaghettiKart/commit/?id=65620eb797891646f1de53aba0803ded3901e621'/>
<id>65620eb797891646f1de53aba0803ded3901e621</id>
<content type='text'>
* Disabled recording frame interpolation on result print text.

* Added check_if_recording() function to prevent cases of it recording while at 30FPS

* Seemingly disabled kart minimap icons for frame interpolation.

* Attempt to mitigate rare crash with printing text(unverified if this actually helps)

---------

Co-authored-by: MegaMech &lt;MegaMech@users.noreply.github.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Disabled recording frame interpolation on result print text.

* Added check_if_recording() function to prevent cases of it recording while at 30FPS

* Seemingly disabled kart minimap icons for frame interpolation.

* Attempt to mitigate rare crash with printing text(unverified if this actually helps)

---------

Co-authored-by: MegaMech &lt;MegaMech@users.noreply.github.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Interpolate hm intro (#228)</title>
<updated>2025-06-18T18:32:55+00:00</updated>
<author>
<name>MegaMech</name>
<email>MegaMech@users.noreply.github.com</email>
</author>
<published>2025-06-18T18:32:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/SpaghettiKart/commit/?id=5011f932c2349d75e609612af4e5e8395c1f75eb'/>
<id>5011f932c2349d75e609612af4e5e8395c1f75eb</id>
<content type='text'>
* Interpolation ApplyMatrixTransformations

* Fix scenefile saving and add skybox export

---------

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>
* Interpolation ApplyMatrixTransformations

* Fix scenefile saving and add skybox export

---------

Co-authored-by: MegaMech &lt;7255464+MegaMech@users.noreply.github.com&gt;</pre>
</div>
</content>
</entry>
</feed>
