* Initial Commit
* First compilation of Registry template
* Further changes
* wip changes
* Impl TrackBrowser and Registry Info
* Remove const from TInfo
* Prep GetWorld
* Name refactor
* Refactor gWorldInstance to GetWorld()
* wip
* Should work now
* Data menu work again
* Fix editor staying open after program close
* Rename LoadLevel to LoadTrackDataFromJson
* More changes
* Add statue
* Add search to content browser using tags
* Fix statue pos and register tags
* Fix actor loading
* Fix delete all bug which deleted cameras
* reduce some boiler plate in actor and object
* Remove unused rulesets
* Search bar for all tabs
* fix data screen
* fix actor spawning
* temp editor fix
* Clean up
* improve extra mode transformation
* fix podium crash
* Fix editor clicking
* Fix editor clicking 2
* fix extra in custom track
* Fix FI for three actors
* Fix divide by zero error
* Ids managed by Registry
* Add scary comment
---------
Co-authored-by: MegaMech <7255464+MegaMech@users.noreply.github.com>
Co-authored-by: coco875 <pereira.jannin@gmail.com>
* move yaml (still need to fix header path)
* fix header
* change kart to karts and add migration
* fix include
* Update migration.py
* fix common_texture_debug_font extraction
* Update torch
* update torch and header
* unduplicate texture for tumble
* Update torch
* Update migration.py
* put the sort by default
* fix replace_segmented_textures_with_o2r_textures
* Update torch
* fix yamls
* add manual_segments in data of course
* comment out replace_segmented_textures_with_o2r_textures and segment 3
* remove segment 5
* (wip) remove segment 6
still plenty of thing to do
* more vtx
* more change
* Update torch
* small fix
* Update BansheeBoardwalk.cpp
* fix blockFort
* Delete test.yaml
* fix bowser castle and simplify track sections
* fix choco mountain
* clean banshee
* fix dk jungle
* fix double deck
* fix macos
* fix error
* fix macos ci
* Update torch
* Update torch
* fix frappe snowland
* fix kalimari desert
* fix koopa troopa beach
* fix luigi raceway
* fix mario raceway and simplify thing
* fix moo moo farm
* fix rainbow road
* Update torch
* Update torch
* hopefully fix windows error
* fix a small error
* fix royal raceway (and podium in theory)
* fix sherbet_land
* fix skyscraper
* fix toads turnpike
* fix wario stadium
* fix yoshi valley
* update torch
* more clang tidy rules
* REMOVE totally SEGMENT (sorry for the PR)
* remove unused field in course and props and unused packed asset
* fix kart texture
* fix particle
* fix track section and transparency
* try fix mode extra
* fix macos build and render
* fix collision in extra
* small change and try fix windows error
* a little of clean
* more cleanup
* forget header and more clean up
* Update Makefile
* fix credits
* fix kart texture offset
* remove LoadTextures and add Unload
* fix definitevely mirror mode
* add unload but it's not perfect
* revert a bad fix
* clean no longer used python script
* fix crash with player
* being able to load the same course twice
* add a comment on DrawWater
* fix render of transparent object
* better hack
* add a proper migration instruction
* fix number
* add basic modsmanager
* add meta/mods.toml
* Update EditorMath.h
* Update ModsManager.cpp
* basic modManager (maybe I should rename it ModLoader)
* use range on dependencies
* add information about mods.toml
* fix coment
* some rename around
* Delete beta-to-v1.md
* Update migrations.md
* Update textures-pack.md
* Update modding.md
* Update modding.md
* clean yamls_old
* move to mods in engine
* rename ModsManger to ModManager
* move init and unload at the top
* rename ModsMetadata to ModMetadata
* fix header
* Update ModManager.cpp
* put core mods at top
* Adds the sequence information i.e. what each file does.
* Removed not used mario circuit(accidently added from the wiki) - just generic name for every mario course.
Links to mario raceway :)
* update value to be more accurate.
* Update sequences-information.md
* updates seq_00 to be sound player.
* update references of seq_16 to make more sense.
* remove the note on it.
* Update the seq_16 to be the better name of it.
* Update sequences-information.md
* updates each section to have a name.
* Changes The name to make more sense gramatically.
* add new note
* Update sequences-information.md
* Update sequences-information.md
* Fixes the weird change to clrf. Replaces it to be lf instead.
* Update custom-audio.md
* Update TrackProperties.cpp
* Update TrackProperties.cpp
---------
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* [WIP] Added custom driver and implemented sequence replacement
* Implemented hmas effect system and wip replace system
* Added load from o2r
* Implemented sequence replacement
* Added looping point support
* Added reduced volume when pausing
* Fixed audio reset and added fade out
* Fixed music when retrying
* Fixed star music
* Parsed more info, not just loops
* Fixed linux compilation
* add doc
* Update docs/custom-audio.md
* Update docs/modding.md
---------
Co-authored-by: coco875 <59367621+coco875@users.noreply.github.com>
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* 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>
* 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>
* 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>
* 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>
* start add wasm integration
* some test
* some improvement
* try more language
* expend try with python
* update
* half working python
* improve and extend test
* get py2wasm work but not so well
* convert to use in cpp
* start prepare multimodule
* improve a little by using cpp (but still not great)
* Update wasm.cpp
* try ocaml
* add a working example of python with a not complete function
* remove type to be even more curse
* start add a proper mod loader
* allow mod to communicate between
* example of hook
---------
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* Course Manager
* Course
* Test
* Render
* That escalated quickly
* update
* properties
* Properties
* test
* Fix compile
* Add World
* skycolours
* Skybox Colours done
* Cleanup
* test
* Game runs again
* update
* Game run again
* Cup Works
* continue
* Add Courses
* clouds
* changes
* fixes
* update
* Fix compile
* update
* A few changes
* More Updates
* More refactors
* Fixes
* Fix ai behaviour
* Changes
* Fix courses
* test course test not working
* CUSTOM
* TestCourse works kinda
* fixes
* test course works
* cleanup
---------
Co-authored-by: MegaMech <7255464+MegaMech@users.noreply.github.com>
* Update menus.c (#634)
* Update common_data.yml (#635)
* Renames for screenId and other changes (#636)
* screenId renames
* Rename surface map to collision mesh (#637)
* Rename some stack vars (#638)
* Fix syntax error (#639)
* Rename some stack vars
* Update collision.c
* Collision Documentation (#640)
* Collision related renames
* update doxygen (#649)
* change bool (#644)
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* Update (#642)
* Delete trig_tables_bss.c (#650)
* fix typo audio (#656)
* fix typo src actor (#657)
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* fix typo include (#658)
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* fix course (#659)
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* fix typo debug (#660)
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* fix typo data (#661)
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* replace number with const (#665)
* fix typo buffers (#655)
* fix typo buffers
* tweak ld file
* rename to sMemoryPool
* add a warning
---------
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* fix typo src (#654)
* fix typo src
* fix non matcing
* Update code_80091750.c
---------
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* fix typo racing (#653)
* fix typo racing
* get it match
* replace G_LINE3D to G_QUAD
---------
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* fix typo src (#652)
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* fix ending typo (#651)
* Action more info when it doesn't match and fix first diff (#662)
* Update linux-compile.yml
* fix first-diff
* Update first-diff.py
---------
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* document texture of kart (#663)
* document texture of kart
* change screenPlayerId to screenId
* some documentation around object
* Revert "some documentation around object"
This reverts commit cbb39078e036bf2a417bed67359e910213acab28.
* more rename
---------
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* Make evaluate_collision_players_palm_tree better (#667)
This matches just the same as before, but using those two casts instead of
shifts seems more likely to be accurate to the original source code
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
* add fedora instruciton (#666)
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* start documenting animation (#668)
* start documenting animation
* Update course_data.c
* change comment
* update libultra asm (#648)
* update libultra asm
* fix gcc __osThreadTail
---------
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* Document Vehicles (#641)
* start doc collision
* fix merge
* finish rename fonction related to vehicle
* document around waypoint of vehicle
* make some modification
* make some change and rename one
* copy_ to oldPos
* doc smoke ferry and train
* some rename
* fix some renaming
* precise index
* rename a funciton
* simplify waypoint_vehicles
* change some name
* change some name
* rename move_to_point_direction
* fix some conflict
* Update code_80005FD0.c
* Update code_80005FD0.h
---------
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* Label a save info loop (#645)
* save info
* more gcc progress
* fix a value and do a rename (#669)
* update clang and add action (#664)
* update clang and add action
* try clang on course folder only
* forget two file
* Update course_displaylists.inc.c
* forget few other file
* Update course_vertices.inc.c
* format all code while get it match
* second pass
* format other dir
* disable clang format on bad ido code
* fix some tabulation
* revert format on tool dir
* Update clang-format.yml
* ignore gbi.h
* add some read me instruction
* fix error
* format and fixing error
* Update README.md
---------
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* Update linkonly_generator.py (#670)
* some rename for torch (#588)
* rename gBombKartSpawns, and fix cup ID
* Update doxygen_syms.md
* rename for gCourseIndexInCup and his constant
* rename to gCupSelectedCourseIndex
* forget a change in constant
* fix compilation issue
* Update Dockerfile to latest Ubuntu LTS + fixed missing cmake (#674)
* Fix color font matrix function (#676)
* Fix label variables used in menus (#675)
* Fix label variables used in menus
* split D_800F2BDC and clang format menu.c
---------
Co-authored-by: coco875 <pereira.jannin@gmail.com>
* Fix some libultra struct types (#677)
* Uintptr (#671)
* Update render_courses.c
* Update math_util.c
* Update math_util.c
* Update math_util.h
* Update render_courses.c
* Clang suggest (#678)
* add clang suggestion
* Update clang-format-suggest.yml
* Update clang-format-suggest.yml
* simplify
* switch to ubuntu
* Update clang-format-suggest.yml
* update ubuntu
---------
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* Clang pr (#679)
* Create clang-pr.yml
* Update clang-pr.yml
* Update osCreateMesgQueue.c
* Update osCreateMesgQueue.c
* Update clang-pr.yml
* Update clang-pr.yml
* Update clang-format.yml
* clang format (#680)
Co-authored-by: MegaMech <7255464+MegaMech@users.noreply.github.com>
* some rename in ceremony (#647)
* rename ceremony
* apply some suggestion
* some rename
---------
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* clang format (#681)
Co-authored-by: MegaMech <7255464+MegaMech@users.noreply.github.com>
* Rename Object Timing Related Code (#673)
* start making models extraction with blender
* finishing extract model
* Update fast64
* extract course
* Update fast64
* Update fast64
* simplify import of course_displaylists and course_textures and remplace adress with texture
* Update fast64
* change data format and simplify the thread queue
* move in a blender folder
* remove fast64
* re add fast64
* add model_extract and fast64_blender in makefile
* multithread with make file split the models into multiple json and add course segment
* Update fast64
* remove old model_extract
* remove the error when he don't find blender
* start rename around course section
* rename around object
* update submodule fast64
* fix compilation issue and add some model to extract
* Update fast64
* remove fast64
* re add fast64
* update submodule
* fix compilation issue
* add other collision gfx and prepare reorganise file
* re arrange json
* Create README.MD
* Update README.MD
* Update README.MD
* update fast64
* rename to initiate_next_state
* Revert "Merge branch '3d-objects' into general-object"
This reverts commit f5347b38cc75af4d10ee3726dc1524c1c71d6849, reversing
changes made to a353c4d954fb5b50c8b48fe3f9d67c95ccaab299.
* revert the revert...
* revert 3d-models PR
* finish some revert
* Update code_80005FD0.c
* fix code_80091750.c
* Update code_80091750.c
* rename isTimerRunning to isTimerActive and set_object_timer_running to set_object_timer_state
* rename to initialize_next_state
* rename to object_next_state
---------
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* extract models with blender (#577)
* start making models extraction with blender
* finishing extract model
* Update fast64
* extract course
* Update fast64
* Update fast64
* simplify import of course_displaylists and course_textures and remplace adress with texture
* Update fast64
* change data format and simplify the thread queue
* move in a blender folder
* remove fast64
* re add fast64
* add model_extract and fast64_blender in makefile
* multithread with make file split the models into multiple json and add course segment
* Update fast64
* remove old model_extract
* remove the error when he don't find blender
* start rename around course section
* update submodule fast64
* fix compilation issue and add some model to extract
* Update fast64
* remove fast64
* re add fast64
* update submodule
* fix compilation issue
* add other collision gfx and prepare reorganise file
* re arrange json
* Create README.MD
* Update README.MD
* Update README.MD
* update fast64
---------
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
* other
* fix some error of compilation
* finish fix all error
---------
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
Co-authored-by: Gabriel Ravier <gabravier@gmail.com>
Co-authored-by: MisterSheeple <27652712+MisterSheeple@users.noreply.github.com>
Co-authored-by: AloXado320 <38191089+AloXado320@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: MegaMech <7255464+MegaMech@users.noreply.github.com>