* Added functions to access and manipulate the fcr31 register
* Improved WiiVC emulator check to avoid false positives
* Updated comments
* Moved float.h to include directory
* Added config option for previewable blue coins
* Clean up previewable blue coin implementation to only be a couple lines
---------
Co-authored-by: Colin Tong <tongcolin@live.ca>
* Culling fix
Precison of half fov horizontal being equal to or above 2 leads to many issues. using 1.5 would break rt64 and other emulators with ultra widescreen.
Vertical culling will be disabled by default until 3.0
* Improved emu checks and naming
* Comment changes
* Small typo fix
* Start work on envmap rotation stuff
* n64graphic envmap rotation working
* Add comment to rotation function
* Fix DLs of non 32x32 env maps, fix envmap rotation
* fix metal flying vanish cap
* fix metal mario's medium poly butt
* new asset version for flipped env maps
* added missing env textures to extract script
* restore asset_needs_update
* Skip asset_needs_update calls if local version matches new version
* removed the goddard textures from envmap rotation
---------
Co-authored-by: mineqwerty <mineqwerty25@gmail.com>
Co-authored-by: thecozies <79979276+thecozies@users.noreply.github.com>
* Add functional changes to inertia to support only specific directions specified in the config (needs cleanup)
* Reduce number of inertia defines
* Update Platform Displacement 2 define description
* comment adjustments
* Improved transitions
Code quality improvements.
Shape transitions now all scale down to 0 instead of 16 (mario and bowser).
Ease in was added which leads to far smoother transitions.
HD_TRANSITIONS define added, makes use of the tex edge render mode to deliver smooth transition textures.
lerpf was added to math utils.
* Cleaner textures, rounding only during vertex creation
* Another attempt
* cozies naming suggestion
* Improvements and suggestions
SHARP_TRANSITION_TEXTURES is now off by default (I still think the textures for it could be improved).
lerpf, to_smoothstop, smoothstart, smoothstop and smoothstep have all been added.
make_vertex has been inlined.
make_simple_vertex has been added (colourless vertex).
Transition colors (and canon colors) are now defined using primative colour instead of setting individual vertices color´s.
Transition´s now use smoothstep (ease-in-out) instead of ease out only.
Naming has been improved.
* Proper function inling and removal of GBI_FLOATS variant of make_vertex and make_simple_vertex
* More requested changes
* Accidental final new line removal fixed
* Comment about pop in fix.
* Comment fix
The issue with writing comments for stuff is when you want to change code later on.
* Added emulator detection
* Fixed missing assignments
* Disable interrupts around the count factor test
* Added more comments to emutest
* Changed PJ64 enum values so the versions work as a bitfield
* Updated README
* Fixed comments
* Updated enum values so you can safely AND and OR all emulator version flags together
* Remove redundant gIsConsole, gIsVC, and gCacheEmulated global variables
* Changed console check to be more future proof against Ares
* Use assembly file instead of casting to a function pointer
* Moved round_double_to_float back to its own compilation unit
* Moved the ParallelN64 check before the Ares check for better future-proofing
* Align pj64_get_count_factor_asm with cache lines... not that it actually matters for pj64
* Adjusted some comments
* Made emulator check thread-safe on emulators that emulate PI timings
* Added gIsConsole macro for backwards compatibility
* Added cen64 to INSTANT_INPUT_BLACKLIST
* Updated comment
* Add SET_ECHO level script command + minor BETTER_REVERB refactoring
* Add Puppyprint debug page for trying out different BETTER_REVERB presets and configurations
Also fix a missing Puppyprint enum that was causing issues
* Modify Puppyprint BETTER_REVERB page + other minor improvements
* Swap order of RSP commands to allow reverb downsampling to sound more similar to that of without downsampling
* yeet undefined_syms; IPL3 documentation; theoretical addition of checksum skip and initial DMA length/location change
* another comment about how to set dma len
* comment is now correct in ultratypes
* do the rename
* remove insinuations that ipl3 can be modified
---------
Co-authored-by: someone2639 <someone2639@gmail.com>
* Culling improvements + earlier GRAPH_RENDER_INVISIBLE check
GRAPH_RENDER_INVISIBLE is now checked during geo_process_object before any uncessesary transformation is applied to
the object, translation is still calculated for sound even if the object is invisible.
Half fov is now computed during geo_process_perspective.
Vertical culling has been added (only when bellow the screen to prevent shadow´s being culled).
Emulators have basically infinite culling aspect ratio to prevent early culling with widescreen viewport hacks.
Default culling radius is now a define.
This was written by both me and Kaze Emanuar, he provided the suggestion to use absf and informed me of
integer division being remarkably slow (although it´s only used once during geo_process_perspective).
* Badly placed new line (major fix)
* integer
Co-authored-by: thecozies <79979276+thecozies@users.noreply.github.com>
* parenthesis
doesn´t affect order of operation, just for code quality
Co-authored-by: thecozies <79979276+thecozies@users.noreply.github.com>
* uncessary whitespace
Co-authored-by: thecozies <79979276+thecozies@users.noreply.github.com>
---------
Co-authored-by: thecozies <79979276+thecozies@users.noreply.github.com>
* Disable stereoheadseteffects and stub out all known code references via define
By effect this also completely removes Headset sound options from the game config, as it serves no purpose whatsoever compared to stereo.
Because it's stubbed out everywhere rather than only the necessary locations to prevent it, this should boost audio runtime slightly for everything, not just the stuff that actively used it.
* Rename DISABLE_HEADSET_STEREO_EFFECTS to ENABLE_HEADSET_STEREO_EFFECTS
* Reorganize and reduce audio Note struct
* Add performance to define description
* Rename ENABLE_HEADSET_STEREO_EFFECTS to ENABLE_STEREO_HEADSET_EFFECTS
This allows sounds to start instantly without any fade-in. Using new soundbanks with delay values of 0 will not compile with base decomp, but old decomp-compliant soundbanks will work with this commit.