summaryrefslogtreecommitdiff
path: root/src/camera.c
AgeCommit message (Collapse)Author
2025-07-17Update camera.c (#468)MegaMech
2025-07-11Add kartPropulsionStrength and waterInteractionFlags (#425)Maciek Baron
* 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-09Small, random optimisations (#363)V10lator
* Remove useless player pointer copies Signed-off-by: Thomas Rohloff <v10lator@myway.de> * Fix target FPS Signed-off-by: Thomas Rohloff <v10lator@myway.de> * Add else Signed-off-by: Thomas Rohloff <v10lator@myway.de> * Remove useless addition Signed-off-by: Thomas Rohloff <v10lator@myway.de> * Simplify func_8001CA24(Player* player, f32 arg1) Signed-off-by: Thomas Rohloff <v10lator@myway.de> * Simplify a few more functions Signed-off-by: Thomas Rohloff <v10lator@myway.de> * Make 2 arrays static const Signed-off-by: Thomas Rohloff <v10lator@myway.de> --------- Signed-off-by: Thomas Rohloff <v10lator@myway.de> Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
2025-07-05Fix Harder CPU Items (#421)MegaMech
* Fix crash * Poorly document camera * Fix harder cpu items --------- Co-authored-by: MegaMech <7255464+MegaMech@users.noreply.github.com>
2025-07-01make some texture more flexible and editable + port documentation from the ↵coco875
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-06-19pr Code 80005fd0 (#181)coco875
* 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-07Add Interpolation (#204)MegaMech
* 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 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 & 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-02-07Finish Freecam (#186)MegaMech
* Fix freecam rotation smoothing * Configure freecam controller * Fix cont z button and impl freecam on/off events
2025-01-23Game.cpp and World.cpp Cleanup (#159)MegaMech
* 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-07cleanupMegaMech
2024-12-06Put all thwomp code in thomp classMegaMech
2024-10-07Fix linux compilation (#110)coco875
* fix wamr windows normally * fix linux issue * load all wasm in mods folder * minor fix
2024-10-05[modding] Course Mod Support (#104)MegaMech
* 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>
2024-09-11clang format add header (#83)coco875
* clang format add header * Update course_offsets.c * clang format * Update ImguiUI.h * Update actors.c
2024-09-10[enhancement] Freecam (#56)MegaMech
* Create noclip.c * Create noclip.h * Update camera.c * Update render_courses.c * Update ImguiUI.cpp * Freecam Done * Add smoothing to window * Update freecam * focus player * fix * Update freecam.c * Update freecam.h * Update render_courses.c * Update FreecamWindow.cpp * Update Engine.cpp * Move vars --------- Co-authored-by: MegaMech <7255464+MegaMech@users.noreply.github.com>
2024-08-27Update decomp clang (#67)coco875
* 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) * fix course (#659) * fix typo debug (#660) * fix typo data (#661) * replace number with const (#665) * fix typo buffers (#655) * fix typo buffers * tweak ld file * rename to sMemoryPool * add a warning --------- * fix typo src (#654) * fix typo src * fix non matcing * Update code_80091750.c --------- * fix typo racing (#653) * fix typo racing * get it match * replace G_LINE3D to G_QUAD --------- * fix typo src (#652) * 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 --------- * 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 --------- * 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) * start documenting animation (#668) * start documenting animation * Update course_data.c * change comment * update libultra asm (#648) * update libultra asm * fix gcc __osThreadTail --------- * 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 --------- * 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 --------- * Update linkonly_generator.py (#670) * format more file * update * fix compilation issue * remove course_metadata folder * re add course metadata folder * fix banshee bordwalk crash * fix windows eurk * Update CMakeLists.txt ---------
2024-07-26Renames & seg 3 & 5 texture fixes (#19)MegaMech
* Remove tools/torch * Auto compile torch and extract * Re-implement soh's implementation of lus implementation of an array * Fix static actors in mr * Update * Updated torch * Updated lus * uncomment * Fix collision * Renames * More renaming * Collision Renames * Update collision.c * Collision Documentation (#640) * Collision related renames * Update * update lus * Bug fixes * remove tabs * fixes * fixes * Fix kart textures * Networking * net * Add networking * Update * Cleanup * Fix balloon rendering * Fix lakitu and red shell * fixes * Implement new random system --------- Co-authored-by: MegaMech <7255464+MegaMech@users.noreply.github.com>
2024-05-02FixesMegaMech
2024-05-01WIP CompilationKiritoDv
2024-04-20Header cleanup and some renames (#616)MegaMech
* Place macros for addr conversions * dl renames * fixes * changes ok * Delete types.h * move enums
2024-01-20place surface type const and unassemble flag in vtx and document effects (#553)coco875
* place surface type const and unassemble flag in vtx
2024-01-17document player and cpu (#534)coco875
* document player and cpu * cpu_descisions_branch_item to cpu_decisions_branch_item
2024-01-06some const placement and one rename (#529)coco875
* some const placement and one rename
2024-01-02Finish bss (#527)coco875
* Finish importing bss
2023-12-30Fix Array D_80165230 Fake Match Usage (#521)MegaMech
* Fix arr
2023-12-30Add bss render player and spawn player (#518)coco875
* finish render_player * finish normally spawn_player bss
2023-12-25add bss variable to camera.c (#514)coco875
* add bss variable to camera.c * Rename bss_8001C4D0.s to bss_80164AB0.s
2023-12-25some rename in code_8006e9c0 (#512)coco875
* some basic function renames * Renaming player hud related variables.
2023-12-24Rename code_8001F980 to render_player and code_800B45E0 to save (#507)coco875
* Update and rename code_8001F980.c to render_player.c * Rename code_8001F980.h to render_player.h * rename import file to render_player * Update and rename code_80004740.c to save.c * Rename code_80004740.h to save.h
2023-11-07Matches in code_80005D0 (#487)MegaMech
* Variety of matches
2023-10-28match func_8000F628 and add NUM_PLAYERS define (#479)MegaMech
* Match two funcs and add NUM_PLAYERS define
2023-10-19some define comment and replace number by const (#469)coco875
2023-10-18Couple matches (#466)Tyler McGavran
Removed some things from variables.h and functions.h Added headers for some src/data files
2023-10-13 rename in code_8001F980.c (#456)coco875
* some renames * Update code_8001F980.c
2023-10-09Rename wayPoint to waypoint (#448)MegaMech
* Rename wayPoint to waypoint * other
2023-10-07Various Naming (#445)coco875
* Mass renames
2023-09-27Function renaming for math_utils and math_utils_2 (#440)coco875
* Renaming functions in math_utils
2023-09-22cleaning camera, kart_dma, menu, math_util (#436)coco875
* cleaning camera.h * cleaning math_utils.h and remove space * cleaning kart_dma * cleaning menu.h
2023-09-20Header & General Cleanup (#431)coco875
* Header cleanup
2023-09-19some renaming (#419)coco875
* Renames
2023-09-08Match bss for code_800029B0 and clean headers (#406)MegaMech
* Match bss for code_800029B0 and clean headers * Fix dvdl and a warning
2023-08-22Matched some funcs (#378)MegaMech
* Matched code
2023-08-20Update some header files (#373)Tyler McGavran
Also moved a lot of extern variable declarations into the their appropriate header file(s) Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-08-15Bumped Total Progress Script by 1.04% (#371)MegaMech
* Matched camera.c
2023-08-09Matched code_80091440.c and named gDemoMode variable (#358)MegaMech
* matched code_80091440.c * Named gDemoMode * Remove asm for matching func * Matched and namings for random_u16_credits func in code_80280650.c
2023-08-04very cool debug display list (#348)tomas
* added a very cool debug display list ^^ (prints variables to screen) * Decompiled various functions
2023-06-28Cleaning Up Warnings (#317)MegaMech
* Update mk64 makefile to reflect sm64 makefile * print func matches and fix some warnings
2023-03-29Massive data relocation (#295)Tyler McGavran
Mostly relocating rodata from data/* files to the appropriate asm/nonmatching/* files, although there is some plain data relocating to be found in here too. Big change to note is the addition of the code_802AAA70.c file, split from memory.c. Based on some padding in the ro/data for memory it seems clear that a split is needed, although it is not clear that exact spot chosen for the split is correct. Still, it gets the file padding for the ro/data and text segments correct so it can't be too wrong. Also included is an update to the asm_processor tool to support the .hword directive. I made a PR to the main repo of that project with an identical change and it was accepted. Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-11-29Yet more assorted matches (#278)Tyler McGavran
* Yet more assorted matches Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
2022-11-21Matches in 80281fa0, render_courses, and create defines for sound cues. (#276)MegaMech
* Matches, add permute, and add notice to quick runners * 80281fa0 matches, render_courses, and create defines for audio * Renamed 80281fa0.h, func naming, and deleted data_121DA0 * Added clang format * Matched load_surface_map * Match func in memory.c