Commit Graph

210 Commits

Author SHA1 Message Date
NoHomoBoi 66923e05af Changed configfile variable value
*Changed from configMasterVolume to configMusicVolume
2020-06-12 00:55:21 -05:00
NoHomoBoi a632ee21ff Changed configfile variable name
*Changed from music_enabled to music_volume
2020-06-12 00:53:40 -05:00
NoHomoBoi 2fa7e4f4ba Merge branch 'nightly' of https://github.com/KiritoDv/sm64pc into nightly 2020-06-11 22:40:55 -05:00
NoHomoBoi 49dc1e3495 Added music volume config 2020-06-11 22:39:13 -05:00
fgsfds aa5dfaa7c2 'properly' disable noise effect scaling 2020-06-12 00:23:47 +03:00
fgsfds 36bdb54d5e remove precision specifiers from the three-point shader
gives better compatibility on desktop GL

probably shouldn't be used on GLES anyway
2020-06-11 22:24:46 +03:00
fgsfds 8788cfa3ad d3d11 renderer now uses the configWindow values
d3d12 renderer still doesn't because I can't test it
2020-06-11 22:24:46 +03:00
fgsfds 3dff608c7b add D3D12 headers because they're missing in mingw 2020-06-11 22:24:46 +03:00
fgsfds 383983ef9d form window title in pc_main; show correct RAPI in it 2020-06-11 22:24:46 +03:00
fgsfds a81a8e6ef1 added D3D11 and D3D12 renderers from Emil/n64-fast3d-engine
along with options to select backends for windowing, rendering, audio and controls in the Makefile

use RENDER_API=D3D11 or D3D12 for the D3D renderers, that will also automatically enable using DXGI for windowing; SDL2 will still be used for input and audio for the time being

also adds three-point filtering to the OpenGL backend and an option for it in the menu
2020-06-11 22:24:46 +03:00
fgsfds ca4986e82d fix GLEW include on OSX 2020-06-10 04:16:46 +03:00
fgsfds 457189bb13 use SDL_opengles2.h only when USE_GLES is defined 2020-06-10 01:01:34 +03:00
fgsfds fca5ed8846 don't scale the noise to 240 height 2020-06-10 01:00:20 +03:00
fgsfds 33b4bd7f8d don't use the noise shader on GLES 2020-06-10 00:58:44 +03:00
fgsfds 735d032bdd use #version 120 on desktop GL 2020-06-10 00:56:10 +03:00
MaikelChan fbbb3cba5c Implemented noise effects in OpenGL. (#6) 2020-06-10 00:30:59 +03:00
fgsfds 8d05d2b7e2 check GL version in the GL2.1 backend; check GLEW errors 2020-06-09 23:28:26 +03:00
fgsfds 01e6061276 clean up discord rpc a bit 2020-06-09 20:46:26 +03:00
fgsfds dc17d19cd1 use snprintf() instead of itoa() 2020-06-09 20:26:00 +03:00
fgsfds c04c315410 move the discord-rpc libs to lib/ 2020-06-09 20:19:22 +03:00
Jan200101 80e674cc21
remove explicit dereference 2020-06-09 19:02:00 +02:00
Jan 233c2d8f72
Merge branch 'nightly' into feature/discordrpc 2020-06-09 17:16:42 +02:00
Jan200101 5933742f82
replace static linking with dynamically loaded libraries 2020-06-09 17:15:49 +02:00
Jan200101 f1ba90d25b
add discord rpc support 2020-06-09 12:01:31 +02:00
fgsfds 326f8ed071 properly check for basepacks 2020-06-08 08:49:06 +03:00
fgsfds ef5eab2263 fix sys_file_extension for folders that start with dot 2020-06-08 07:45:22 +03:00
fgsfds 585c24a282 updated usage text 2020-06-08 06:38:41 +03:00
fgsfds 51651d52d0 restore --savepath and replace --datapath with --gamedir 2020-06-07 23:54:39 +03:00
fgsfds 0bf5a192f4 fix sys_fatal() warnings in gfx 2020-06-07 22:00:49 +03:00
fgsfds b9c94ad57d fix text saves 2020-06-07 22:00:23 +03:00
fgsfds 4feacc0065 add virtual filesystem thing w/ ZIP support
similar to Quake 3: all the archives and folders get mounted to the same mountpoint in the VFS, read access to files in the VFS is transparent
2020-06-07 21:06:25 +03:00
fgsfds aff081080b unfuck keyboard API; actually use seconds for rumble time 2020-06-04 23:58:18 +03:00
fgsfds bd68d6cb67 move rumble functions to controller API 2020-06-04 23:39:57 +03:00
Zerocker 77217baf13 Merge remote-tracking branch 'upstream/nightly' into rumble_back 2020-06-04 19:13:41 +09:00
fgsfds 88b044bd76 load external gamecontrollerdb file if it's present 2020-06-03 00:10:42 +03:00
fgsfds 5b14bf3b5e precache is now turned on by default 2020-06-03 00:10:20 +03:00
fgsfds 6cee636382 change EXTERNAL_TEXTURES to EXTERNAL_DATA; load sound data from external files
no separation tho, just binary blobs o shit
2020-06-01 12:13:05 +03:00
fgsfds 8b386a2175 allow binding stick directions to controller buttons 2020-06-01 00:03:53 +03:00
Zerocker 9917188ec8 Revert "Secret Cheat was added"
This reverts commit 19990cde38.
2020-05-31 14:18:17 +09:00
Zerocker 709a049ab6 Added rumble strength option 2020-05-30 20:50:12 +09:00
Zerocker 2bc577bc3c Added haptic implementation 2020-05-30 20:37:37 +09:00
Zerocker cf122ee6e8 Merge remote-tracking branch 'upstream/nightly' into rumble_back 2020-05-30 17:34:56 +09:00
fgsfds f6c54e95b2 read in all config line tokens (fixes the binds not saving) 2020-05-29 20:10:38 +03:00
fgsfds 93030b02a3 don't die after encountering a NULL texture 2020-05-29 19:35:35 +03:00
fgsfds 540a0387c9 fix build 2020-05-29 18:08:00 +03:00
Zerocker 3f1fd3aba8 Merge remote-tracking branch 'upstream/nightly' into rumble_back 2020-05-29 23:19:09 +09:00
GateGuy 875d7a9b3c Added deadzone option 2020-05-28 18:40:36 -04:00
fgsfds 655c381d6f add texture preloading
when EXTERNAL_TEXTURES is defined, the texture hashmap in gfx_pc.c uses texture names as keys

all textures are precached on startup if EXTERNAL_TEXTURES is defined and 'precache' is true in the config
2020-05-26 00:54:51 +03:00
fgsfds 1873f7aba5 game now uses non-working directory paths by default
saves by default go into XDG_DATA_HOME/sm64pc

external data is read from the executable directory, if it's not found there on Unix systems the game will attempt to read it from some paths like /usr/local/share/sm64pc

both save data and readonly data fall back to other options in case of a problem

behavior can be overridden by specifying --datapath and --savepath on the CLI

both of those will expand the exclamation point ('!') to the executable path, e. g. --savepath '!/save'
2020-05-25 07:19:35 +03:00
fgsfds 9825b02f50 add option to load textures from external files
this stores the null terminated texture name instead of the texture data

activated with EXTERNAL_TEXTURES=1
2020-05-25 04:22:03 +03:00
Zerocker ce864043c1 Enabled rumble for all versions. 2020-05-24 23:52:03 +09:00
Zerocker 19990cde38 Secret Cheat was added 2020-05-24 23:50:55 +09:00
Zerocker 37ff33b0a2 Added blank SDL functions for rumble support. 2020-05-24 23:49:49 +09:00
fgsfds 4bbde37464 this ain't const anymore 2020-05-22 01:42:07 +03:00
IvanDSM 1298cd6017 Add commit hash to window title for nightly builds.
This also adds a flag for detecting nightly builds in the code.
2020-05-21 14:19:20 -03:00
fgsfds 0724f0ed09 add fog to GL1.3 renderer
uses two different methods, with the first one taking priority if it's available:

a) use the fog factor supplied in the fog colors as a GL_FOG_COORD; GL_FOG_COORD is only available in GL1.4+ or when GL_EXT_fog_coord is present

just blend the same triangles a second time, but replace the color with fog color and multiply the alpha by fog alpha
2020-05-21 03:12:51 +03:00
fgsfds 2714708ca9 avoid redefining CLOCK_MONOTONIC and shit 2020-05-20 17:56:35 +03:00
Mario Reder f99298943c fix non mingw builds
resolves #230
2020-05-20 16:50:05 +02:00
fgsfds c540712154 add GL1.3 (or 1.2 with some extensions) rendering backend
there are still some graphical glitches and no fog
2020-05-20 07:00:04 +03:00
IvanDSM fb706c42f6 CLI improvements 2020-05-19 21:22:05 -03:00
Zerocker 6a628322ba Merge remote-tracking branch 'upstream/nightly' into nightly 2020-05-20 00:02:29 +09:00
zerocloude f1698b9081
Merge pull request #205 from porcino/nightly
Option to hide the hud
2020-05-19 23:46:19 +09:00
zerocloude 0c03280516
Merge pull request #93 from yksoft1/mingw.org-compatible
Making code MinGW.org and MSYS1 compatible
2020-05-19 23:45:44 +09:00
Colton Rushton 08ad740b1c Refactor PR #176 2020-05-19 10:51:49 -03:00
yksoft1 ee795fa7af My hacks to cliopts.h is not necessary anymore. 2020-05-19 20:15:25 +08:00
U-ALTTP-PC\ALTTP e97d25c2c6 option to hide the hud 2020-05-19 03:24:51 -03:00
V. R. Miguel 29bfb1b9b8
Merge branch 'nightly' into master 2020-05-18 23:00:42 -03:00
fgsfds c18e70f44e Revert "Merge branch 'nightly' into master"
This reverts commit 2e8a821fa3, reversing
changes made to d499f55402.
2020-05-19 02:38:59 +03:00
fgsfds 2e8a821fa3
Merge branch 'nightly' into master 2020-05-19 02:33:30 +03:00
fgsfds 26705aed7a disable cheats by default; use --cheats CLI option to enable for now 2020-05-19 01:59:29 +03:00
fgsfds 6a79a9af99 bring back the old frame timing method (if vsync != 2) 2020-05-19 01:32:49 +03:00
fgsfds 59913a9beb Revert "Revert "(hopefully) fix the timing crap; add vsync option""
This reverts commit c6961b8606.
2020-05-19 01:25:59 +03:00
fgsfds c6961b8606 Revert "(hopefully) fix the timing crap; add vsync option"
This reverts commit 2bd840a299.
2020-05-18 18:48:11 -03:00
fgsfds c3c2451c6a Revert "(hopefully) fix the timing crap; add vsync option"
This reverts commit 2bd840a299.
2020-05-18 18:44:35 -03:00
fgsfds 952495ae08 clean up cliopts 2020-05-18 23:31:19 +03:00
fgsfds 2bd840a299 (hopefully) fix the timing crap; add vsync option 2020-05-18 23:03:04 +03:00
Daniel 8586c7657a Added "Exit course at any time", "Huge Mario" and "Tiny Mario" cheats
The exit course at any time cheat clears up one of the TODO items while keeping purists happy since it's optional :)
2020-05-18 17:51:53 +01:00
Zerocker e24473ee17 Support for text-based savefiles 2020-05-18 17:44:21 +09:00
Vinícius R. Miguel bd186569de Fixes --fullscreen and --windowed problems 2020-05-18 00:28:05 -03:00
V. R. Miguel cd2e6c0774
Merge pull request #165 from HeavenVolkoff/save_win_dimensions
Implement save/restore of window dimensions/position

Thanks for the contribution, @HeavenVolkoff!
2020-05-18 00:10:42 -03:00
Vinícius R. Miguel 4246242138 Still about #172 2020-05-17 23:58:22 -03:00
Vinícius R. Miguel ba04643b61 Potential fix for #172
Adds a null-terminator to gCLIOpts.ConfigFile
2020-05-17 23:55:17 -03:00
Heaven Volkoff 98efed7c51 Reset Window now exit fullscreen
Change configFullscreen to configWindow.fullscreen
2020-05-17 23:31:31 -03:00
Heaven Volkoff 9927b3555d Fix fullscreen exit resulting in a slightly lower Y position 2020-05-17 23:31:31 -03:00
Heaven Volkoff 0fa331d961 Implement save/restore window dimensions/position
- Add an entry in options menu to reset window
2020-05-17 23:31:31 -03:00
IvanDSM d6495550f5 Release mouse when paused 2020-05-17 22:37:52 -03:00
V. R. Miguel 6811d9e01c
Fixed a dumb thing 2020-05-17 21:17:27 -03:00
Vinícius R. Miguel 15c7670ce8 Merge remote-tracking branch 'origin/nightly' into nightly 2020-05-17 21:06:59 -03:00
Vinícius R. Miguel 262963bf88 Restructuring some of the cheat code 2020-05-17 21:06:38 -03:00
fgsfds eaba9656d6
Merge pull request #169 from kurethedead/nightly
Implemented LoadTile f3d command, I4/I8/RGBA32 texture formats.
2020-05-18 02:45:11 +03:00
V. R. Miguel 2287fcce9f
Merge pull request #170 from Leon422/nightly
Added a "responsive controls" cheat
2020-05-17 20:08:13 -03:00
Daniel 17c6e56907 Added a "super responsive controls" cheat
Added a "super responsive controls" cheat. When enabled, Mario will look straight into the direction the user inputs when changing directions, with no interpolation at all. (you can still slide / side jump / etc )

The change is especially noticeable when playing with keyboard.
2020-05-18 00:05:26 +01:00
kurethedead 181e18dfea Implemented LoadTile f3d command, I4/I8/RGBA32 texture formats. 2020-05-17 15:48:06 -07:00
V. R. Miguel 15dabb7c22
Merge pull request #166 from Leon422/nightly
Enabled a Cheat menu

Thanks for the contribution, @Leon422!
2020-05-17 19:32:44 -03:00
Leon422 1a9c8dbe47
Fixed tabs/spaces 2020-05-17 23:27:40 +01:00
Daniel 28fc53c207 Enabled a Cheat menu
Enabled a cheat menu. It includes 4 cheats, and all of them rely on the global "Enable cheats" option so the user can quickly turn all the selected cheats off and back on.
2020-05-17 22:56:06 +01:00
Andrew Bobulsky fcc4cbb51d
Fix TARGET_WEB builds 2020-05-17 15:22:50 -04:00
fgsfds 094f3ebb33
Merge branch 'nightly' into master 2020-05-17 20:19:42 +03:00
fgsfds ece7649b4b use a wrapper for exiting instead of just calling exit()
this might also fix the webgl build issue
2020-05-17 19:56:56 +03:00
fgsfds 62cc4620ec no need for that, window resize events happen when fullscreen state changes 2020-05-17 19:56:33 +03:00