Commit Graph

91 Commits

Author SHA1 Message Date
MegaMech ee6effee4d Enable TestTrack Mode (#467)
* Update Trophy.cpp

* Update Trophy.h

* Update TestCourse.cpp
2025-07-17 15:24:21 -06:00
MegaMech f6f630645c Fix Alpha Arg into find_vtx_and_set_colours() (#466)
* Update RainbowRoad.cpp

* Update KoopaTroopaBeach.cpp

* Update SherbetLand.cpp
2025-07-17 12:51:43 -06:00
coco875 f1b20c7b91 Fix minor render issue in menu (#447)
* fix menu texture

* fix other text

* junky fix

* fix cloud to be png

* fix cloud

* Update menu_items.c

---------

Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
2025-07-12 17:32:52 -06:00
Maciek Baron 7bb37c6ace Add kartPropulsionStrength and waterInteractionFlags (#425)
* Add kartPropulsionStrength and waterInteractionFlags

* Add reset_player_speed_and_velocity

* Fix merge

* Reorder and cleanup

* Document hopVerticalOffset and hopFrameCounter

* Fix missed variabled

* Further things

* Use constant

---------

Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
2025-07-11 16:04:02 -06:00
coco875 6a8baf8936 port pr 730 from the decomp (#445)
* port pr 730 from the decomp

Co-Authored-By: Jed Grabman <7600154+jedgrabman@users.noreply.github.com>

* rename file

* small fix

* finish fix time trial

---------

Co-authored-by: Jed Grabman <7600154+jedgrabman@users.noreply.github.com>
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
2025-07-10 17:11:36 -06:00
coco875 a0b202cca4 fix some custom texture (#426)
* fix lakitu custom texture

* finish fix lakitu

* finish fix lakitu but also fix crab and snowman

* Update Mole.cpp

* fix texture around jumbotron

---------

Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
2025-07-06 17:14:57 -06:00
Maciek Baron 99689a3f70 Document player alpha (#396)
* Document player alpha

* Fix typo

* Document further alpha things

* Document movement

* Fix indentation
2025-07-03 06:35:42 -06:00
coco875 7937896598 make some texture more flexible and editable + port documentation from the decomp + fix some bug (#309)
* 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 <MegaMech@users.noreply.github.com>
2025-07-01 17:42:14 -06:00
MegaMech 591322113c Update Course.cpp (#403) 2025-06-30 12:13:21 -06:00
coco875 956058a32d correct use of pointer and fix mistake (#394)
* correct use of pointer and fix mistake

* remove CM_WeirdLength

* Update Game.cpp

* Update Game.cpp

---------

Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
2025-06-28 15:54:06 -06:00
MegaMech 19d5a2729e Update Editor.cpp (#324) 2025-06-22 17:07:39 -06:00
coco875 e93633773e Pr before release (#239)
* Fix match

* Update torch

* fix crash on texture of player

* Copied stuff over for Window icon from Starship.

* Missed comment.

* Corrections.

* Missed a file

* min-max fix

* Update code_80005FD0.c

* Remove interpolation for hm_intro

* look like to remove the crash in menu

* Update menu_items.c

---------

Co-authored-by: MegaMech <7255464+MegaMech@users.noreply.github.com>
Co-authored-by: sitton76 <58642183+sitton76@users.noreply.github.com>
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
2025-06-20 16:54:31 -06:00
MegaMech 2126c94a0e Update Course.cpp (#235) 2025-06-20 06:43:48 -06:00
coco875 5d7cf20c83 pr Code 80005fd0 (#181)
* fix error

* a lot of change

* basic rename of local variable

* continue rename and improve Enhancements

* re-apply change

* revert the remove of dma_texture and fix mtxf_multiplication

* more documentation port

* some fix

* more fix

* fix arround

* Update torch

* fix spelling

---------

Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
2025-06-19 16:26:04 -06:00
MegaMech 602141fb11 Fix custom track water (#229)
* Interpolation ApplyMatrixTransformations

* Fix scenefile saving and add skybox export

* Fix custom track water set bug

* Remove C++ version of harbour

---------

Co-authored-by: MegaMech <7255464+MegaMech@users.noreply.github.com>
2025-06-18 12:57:52 -06:00
sitton76 3bd6d36a60 Tagged Thwomp particles (#227)
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
2025-06-18 12:33:37 -06:00
MegaMech 5011f932c2 Interpolate hm intro (#228)
* Interpolation ApplyMatrixTransformations

* Fix scenefile saving and add skybox export

---------

Co-authored-by: MegaMech <7255464+MegaMech@users.noreply.github.com>
2025-06-18 12:32:55 -06:00
MegaMech 9fe391a2a4 Fix More Interpolation (#220)
* Fix SetTextMatrix Interpolation (flashing text)

* Interpolate pause menu item box

* Interp mtxf_translation_x_y_rotate_z_scale_x_y

* Fix billboarding for freecam

* Fix menus battle mode back to grand prix bug

* Fix snow interp

* interp star clouds
2025-06-15 22:17:24 -06:00
sitton76 547d651cc4 Fixed Wario Stadium jumbotron(50, 100, and 150 CC) (#222) 2025-06-15 00:43:30 -06:00
MegaMech 44db9bab77 Add Interpolation (#204)
* 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 <MegaMech@users.noreply.github.com>

* test

* Revert "test"

This reverts commit 1a810d74cc.

* 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 & 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 <kiritodev01@gmail.com>

* 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 <7255464+MegaMech@users.noreply.github.com>

* 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 <alejandro.asenjo88@gmail.com>
Co-authored-by: KiritoDv <kiritodev01@gmail.com>
Co-authored-by: sitton76 <58642183+sitton76@users.noreply.github.com>
Co-authored-by: MegaMech <7255464+MegaMech@users.noreply.github.com>
Co-authored-by: coco875 <59367621+coco875@users.noreply.github.com>
Co-authored-by: coco875 <pereira.jannin@gmail.com>
2025-06-07 21:38:12 -06:00
wowjinxy f5f7c01c3b Removed Jumbotron triggers on Luigi Raceway 2025-05-17 13:43:00 -05:00
Lywx 27a421bbab Fixed macos 2025-05-15 22:12:56 -06:00
MegaMech b9e1f0fa38 Fix EditorMatrix (#201)
* Fix build

* Fix EditorMatrix

* Corrected name of built application on the linux workflow file

* Enable jumbotron

---------

Co-authored-by: sitton76 <58642183+sitton76@users.noreply.github.com>
2025-05-15 21:04:35 -06:00
Sonic Dreamcaster 3b19a6105e fix windows 2025-05-15 22:14:59 -03:00
MegaMech 7cc9894aa1 Fix compile (#199)
* Fixes made so far

* Fixes up until linking

* Moved GetInterpreter() to a single function under the Engine.h

* Updated shader files included with assets, added exception for Linux for including SDL2_net

* Removed osSetTime stub(for now)

* Adjustments to get it to compile + run

* Decoupled GetInterpreter() from the GameEngine Class, corrected a invalid include in SpaghettiGui.cpp

---------

Co-authored-by: sitton76 <58642183+sitton76@users.noreply.github.com>
2025-05-15 15:25:18 -06:00
MegaMech e7415ec072 Fixes made so far (#198)
* Fixed compile

* Moved GetInterpreter() to a single function under the Engine.h
2025-05-15 10:30:39 -06:00
MegaMech 32632cacdb Impl new intro (#193)
* 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 <stdio.h>" 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 05704c01f7.

* 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 <7255464+MegaMech@users.noreply.github.com>
Co-authored-by: sitton76 <58642183+sitton76@users.noreply.github.com>
2025-05-14 18:30:32 -06:00
MegaMech 6a629fcaa9 Add Ship (#191)
* Compile works now

* Update menus

* Update CMakeLists.txt

* Add Ship

* Impl hm ship actors

* Update HM course
2025-02-10 15:05:53 -07:00
MegaMech fc1e1a9782 Reimpl star emitter (#180)
* Reimpl star emitter

* Remove OObject Lists

* wip mole reimpl

* nearly fix moles

* Cleanup

* Update reimpl seagull

* Rework finishline to auto spawn and not to run in credits

* Fix train crossing direction in extra mode

* Clarification

* micro optimization

* update mole

---------

Co-authored-by: MegaMech <7255464+MegaMech@users.noreply.github.com>
2025-02-07 14:36:55 -07:00
MegaMech 73ba320831 Fix matrix stack heap corruption (#166)
* Fix matrix stack heap corruption

* Fix matrix overflow bug
2025-01-24 19:47:37 -07:00
MegaMech 1f189dfa80 Game.cpp and World.cpp Cleanup (#159)
* Remove CProperties and delete dup Properties from World.h

* Improvement

* Fix compile

* Cleanup

* Document gRaceState

* wip cleanup

* compile

* Impl PlayerBombKart

* Rename CourseManager_ to CM_

* Finish renames m_ to CM_

* cleanup

* Remove extra printf

---------

Co-authored-by: MegaMech <7255464+MegaMech@users.noreply.github.com>
2025-01-23 11:22:07 -07:00
briaguya 3acc6eada0 render correct trophy in podium ceremony (#162)
* render correct trophy in podium ceremony

* use ternaries
2025-01-20 07:04:21 -07:00
inspectredc 51d2f2ec97 Fix mac building (#157)
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
2025-01-18 09:19:33 -07:00
MegaMech 8c46368d5d Fix data, option menus, impl boos, fix demo camera (#156)
* Fix data and option menus

* safer code

* wip boos impl

* finish impl boos

* Fix demo camera

* slightly better match
2025-01-18 08:58:12 -07:00
MegaMech 04d56d6ba0 Fixes as per Sonic (#154)
* Fix imGUI game reset button

* Fix course select cursor sound oob

* Fix cloud rendering

* Fix centering of tt race data cannot be saved by ghost

* Impl chain chomp & bats

* Fix retry crash

* DebugMode On Skips intro logo menu

* rename
2025-01-13 21:15:16 -07:00
Sonic Dreamcaster d514c7f330 default gDisableLod to 1 2025-01-11 15:02:26 -03:00
MegaMech aaba052407 Impl ModelLoader (#150)
* Impl modelloader
2025-01-09 23:46:18 -07:00
MegaMech 73b4d949bc Target player follows player and fix 2025-01-07 16:43:36 -07:00
MegaMech abec308507 Merge branch 'modding' into wide 2025-01-05 12:55:30 -07:00
MegaMech e993944089 Finishwide screen. Impl IVector2D MinimapDimensions 2025-01-05 12:26:27 -07:00
coco875 8a9728e7df rename in jumbotron 2025-01-05 11:33:34 +01:00
coco875 49df2fc6e5 multiple fix 2025-01-05 01:32:27 +01:00
MegaMech 6a00e58893 Finish doc 2025-01-03 17:41:12 -07:00
MegaMech 3cdffe421b Big 19750 renames 2024-12-31 13:04:39 -07:00
MegaMech 7ee714e4e9 Merge branch 'next' of https://github.com/MegaMech/SpaghettiKart into next 2024-12-30 20:39:31 -07:00
MegaMech 41fb92b7b9 Impl trashbin 2024-12-30 20:39:14 -07:00
MegaMech 57afb90c39 Add todo 2024-12-29 23:58:52 -07:00
MegaMech 2bd41c6d90 Fix Seagull, classes count their own instances --> cleanup 2024-12-29 23:57:26 -07:00
MegaMech 08e4bf3797 Fix Crab Impl 2024-12-29 21:37:06 -07:00
MegaMech 64b9dcbb30 impl hot air balloon 2024-12-29 20:19:59 -07:00