Commit Graph

305 Commits (cd4705d2ae16ebafe41a6537e0f30abec7e2b941)

Author SHA1 Message Date
fgsfds eef5f499ef 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 6bb331eee2 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 9fd2477ea0 add apply button to display settings 2020-06-11 22:24:46 +03:00
fgsfds 1559d03293 add D3D12 headers because they're missing in mingw 2020-06-11 22:24:46 +03:00
fgsfds 1cf90a7cec form window title in pc_main; show correct RAPI in it 2020-06-11 22:24:46 +03:00
fgsfds 0493d12839 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 549fac1415 fix GLEW include on OSX 2020-06-10 04:16:46 +03:00
fgsfds 2d9f31bfb8 use SDL_opengles2.h only when USE_GLES is defined 2020-06-10 01:01:34 +03:00
fgsfds 61709d94bd don't scale the noise to 240 height 2020-06-10 01:00:20 +03:00
fgsfds c551ba9fdd don't use the noise shader on GLES 2020-06-10 00:58:44 +03:00
fgsfds 0f1e132d5c use #version 120 on desktop GL 2020-06-10 00:56:10 +03:00
MaikelChan 322b3d412f Implemented noise effects in OpenGL. (#6) 2020-06-10 00:30:59 +03:00
fgsfds 8dd6286a1b check GL version in the GL2.1 backend; check GLEW errors 2020-06-09 23:28:26 +03:00
fgsfds d5f434dc1f clean up discord rpc a bit 2020-06-09 20:46:26 +03:00
fgsfds 86e1ed76cf use snprintf() instead of itoa() 2020-06-09 20:26:00 +03:00
fgsfds c778c39ad0 move the discord-rpc libs to lib/ 2020-06-09 20:19:22 +03:00
Jan200101 ab23b71ed4 remove explicit dereference 2020-06-09 19:02:00 +02:00
Jan 26914435a9 Merge branch 'nightly' into feature/discordrpc 2020-06-09 17:16:42 +02:00
Jan200101 928835bfef replace static linking with dynamically loaded libraries 2020-06-09 17:15:49 +02:00
Jan200101 55f543f1cc add discord rpc support 2020-06-09 12:01:31 +02:00
fgsfds f9c9c0a9cd properly check for basepacks 2020-06-08 08:49:06 +03:00
fgsfds d11fdc2713 fix sys_file_extension for folders that start with dot 2020-06-08 07:45:22 +03:00
fgsfds 34e85d90ae updated usage text 2020-06-08 06:38:41 +03:00
fgsfds 630b3a9fcf restore --savepath and replace --datapath with --gamedir 2020-06-07 23:54:39 +03:00
fgsfds 5770a364c6 fix sys_fatal() warnings in gfx 2020-06-07 22:00:49 +03:00
fgsfds 8e70c7c9b0 fix text saves 2020-06-07 22:00:23 +03:00
fgsfds 5c4d895fec 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
Zerocker 6fea0079ba Fix a couple of warnings 2020-06-07 22:19:47 +09:00
Zerocker d047176da7 Fix parsing for bonus and cap data 2020-06-07 21:44:00 +09:00
Zerocker 57d63dd3e4 Remove some braindead comments 2020-06-07 21:38:14 +09:00
fgsfds 4d90fc2f45 32 chars is too small for this shit 2020-06-05 20:26:43 +03:00
fgsfds 994d9737aa text saves now utilize the save path 2020-06-05 20:23:18 +03:00
Zerocker c23ce629ad Fix missed collected stars after gameover 2020-06-05 15:15:40 +09:00
fgsfds 44f0fc2cf9 unfuck keyboard API; actually use seconds for rumble time 2020-06-04 23:58:18 +03:00
fgsfds 1654b5d057 move rumble functions to controller API 2020-06-04 23:39:57 +03:00
Zerocker 1004ab6a22 Merge remote-tracking branch 'upstream/nightly' into rumble_back 2020-06-04 19:13:41 +09:00
fgsfds 71db1904e4 load external gamecontrollerdb file if it's present 2020-06-03 00:10:42 +03:00
fgsfds 4ade5a8654 precache is now turned on by default 2020-06-03 00:10:20 +03:00
fgsfds ddb4977e68 Merge pull request #287 from GateGuy/NoDrawFishFix
Fixed fish constantly respawning with NODRAWINGDISTANCE=1
2020-06-02 02:41:14 +03:00
GateGuy 99b28635c1 Fixed constant fish respawning 2020-06-01 17:33:22 -04:00
fgsfds eed9db79a7 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 07d9283e81 allow binding stick directions to controller buttons 2020-06-01 00:03:53 +03:00
Zerocker bd9130f101 Added backup for slot 0 to slot 1 2020-06-01 00:02:47 +09:00
Zerocker 61da468325 Removed "Disable BLJ" from branch 2020-05-31 14:23:28 +09:00
Zerocker 71de5a7d00 Revert "Secret Cheat was added"
This reverts commit 4d7bbe7f42.
2020-05-31 14:18:17 +09:00
Zerocker d8514a69bd Merge remote-tracking branch 'upstream/nightly' into textsaves_fix 2020-05-30 21:00:11 +09:00
Zerocker 8c802f03c4 Added rumble strength option 2020-05-30 20:50:12 +09:00
Zerocker a664cf7b53 Added haptic implementation 2020-05-30 20:37:37 +09:00
Zerocker 594e524fdd Merge remote-tracking branch 'upstream/nightly' into rumble_back 2020-05-30 17:34:56 +09:00
fgsfds 4727164d5c read in all config line tokens (fixes the binds not saving) 2020-05-29 20:10:38 +03:00
fgsfds d7260b5a6a don't die after encountering a NULL texture 2020-05-29 19:35:35 +03:00
fgsfds f07fe288c7 fix build 2020-05-29 18:08:00 +03:00
Zerocker 2a9fa45393 Returned back OS functions in the commented state 2020-05-29 23:23:45 +09:00
Zerocker 66e69a219f Merge remote-tracking branch 'upstream/nightly' into rumble_back 2020-05-29 23:19:09 +09:00
fgsfds e0ef4d65bf Merge pull request #278 from GateGuy/DeadzoneOption
Added joystick deadzone setting to Controls
2020-05-29 08:22:00 +03:00
GateGuy 517e151c56 Fixed typo in comment 2020-05-28 18:42:45 -04:00
GateGuy 7cc1539df3 Added deadzone option 2020-05-28 18:40:36 -04:00
fgsfds 1e8d33f453 Merge pull request #269 from coltongit/patch-31
Fix a minor error with bettercamera
2020-05-27 03:18:02 +03:00
fgsfds fa05fe5acc fix crashes with EXTERNAL_TEXTURES on JP/EU and Bowser
related to two huge textures and fonts
2020-05-27 02:51:21 +03:00
Colton G. Rushton 57fbcc8b83 Fix a minor error with bettercamera
The bettercamera code set when the player goes to THI is actually supposed to be set when the player goes to TTM. This small PR fixes this minor bug.
2020-05-26 15:28:36 -03:00
fgsfds 8e0e7730d3 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
Zerocker 3b12400c57 Removed ifndefs from main 2020-05-25 17:06:50 +09:00
fgsfds 5524af2855 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 f4252e311e 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 17de13cc33 Enabled rumble for all versions. 2020-05-24 23:52:03 +09:00
Zerocker 4d7bbe7f42 Secret Cheat was added 2020-05-24 23:50:55 +09:00
Zerocker c0c1942138 Added blank SDL functions for rumble support. 2020-05-24 23:49:49 +09:00
fgsfds 314cb348c4 this ain't const anymore 2020-05-22 01:42:07 +03:00
fgsfds d7331f176b separate options menu strings and add JP strings 2020-05-22 01:36:49 +03:00
fgsfds ad47b7e7f1 unfuck BSWAP16 macro, replace it with BE_TO_HOST16() in audio 2020-05-22 01:36:49 +03:00
fgsfds 3d86e957a5 fix text rendering on JP and (maybe) EU
also cache converted IA1 characters so it wouldn't reconvert them every goddamn time they're rendered
2020-05-22 01:36:49 +03:00
IvanDSM 82500919c7 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
Colton G. Rushton cbb99b573d Unrevert the bettercamera update but this time actually fix it 2020-05-21 13:40:02 -03:00
Colton G. Rushton 8720a1fa8a Undo the bettercamera update
This screwed up the bettercamera for whatever reason. Urgent hotfix. Please test
2020-05-21 12:52:40 -03:00
Zerocker 88cb9ddcf2 Merge remote-tracking branch 'upstream/nightly' into textsaves_fix 2020-05-21 16:54:06 +09:00
V. R. Miguel 7ecb888ac7 Merge pull request #226 from coltongit/puppycam-fixes
Updating Bettercamera (also fixes cannons)
Thanks for the contribution, @coltongit, @porcino  :)
2020-05-20 23:18:43 -03:00
IvanDSM 1962dcf35d Merge branch 'nightly' of github.com:sm64pc/sm64pc into nightly 2020-05-20 22:39:27 -03:00
IvanDSM f6b9db43cb Quick fix for NODRAWINGDISTANCE=1 hanging fix 2020-05-20 22:39:07 -03:00
IvanDSM a67f640c29 Merge pull request #236 from coltongit/sparkle-texture-fix
Add minor sparkle texture fixes
2020-05-20 21:34:06 -03:00
fgsfds a144f89472 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
Colton Rushton 3547c25df2 Minor fix to updated bettercamera 2020-05-20 21:10:00 -03:00
Colton G. Rushton 2eaa7edb80 Added info that sparkle texture 5 was fixed 2020-05-20 20:59:16 -03:00
Colton G. Rushton 577d81e4a1 Add minor sparkle texture fixes
Controlled by TEXTURE_FIX as mandated by the Koopa shorts issues/PRs
2020-05-20 20:54:25 -03:00
Colton Rushton 2105a36be4 Resolve a few errors with the new additions. 2020-05-20 16:52:52 -03:00
fgsfds 602409bc60 avoid redefining CLOCK_MONOTONIC and shit 2020-05-20 17:56:35 +03:00
Mario Reder 2ba8891448 fix non mingw builds
resolves #230
2020-05-20 16:50:05 +02:00
Zerocker 1f250255d3 Added appropriate flags for sound mode and cap level. Documentation has been updated. 2020-05-20 23:28:04 +09:00
fgsfds bcfc1160db 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
Colton Rushton f1403ac2c2 Formatting fixes. 2020-05-19 22:10:47 -03:00
Colton Rushton 5026b8da7a Another minor fix 2020-05-19 22:08:45 -03:00
Colton Rushton 4d5a7468c9 Minor fix 2020-05-19 22:05:35 -03:00
Colton Rushton 43a3d74a08 Updating Bettercamera 2020-05-19 21:58:15 -03:00
IvanDSM 8b1e8f8a68 CLI improvements 2020-05-19 21:22:05 -03:00
fgsfds 4fdaa3475f clean up some toolchain compatibility fixes
also rename the abs() macro to not cause any fucking conflicts ever again
2020-05-19 22:22:52 +03:00
fgsfds 946ac7ccde separate text saves; fix build without TEXTSAVE 2020-05-19 21:56:23 +03:00
Leon422 1cab9faa12 Fixed spacing, added brackets. Ready to merge 2020-05-19 19:15:20 +01:00
Leon422 3f5176ac6a Cheats can be enabled by pressing the L trigger 3 times while in the options menu.
Also plays a sound to confirm the user that it worked.
2020-05-19 18:31:01 +01:00
Zerocker 219ca905f9 Merge remote-tracking branch 'upstream/nightly' into nightly 2020-05-20 00:02:29 +09:00
zerocloude fc4b8d303a Merge pull request #205 from porcino/nightly
Option to hide the hud
2020-05-19 23:46:19 +09:00
zerocloude 6d449d21a5 Merge pull request #93 from yksoft1/mingw.org-compatible
Making code MinGW.org and MSYS1 compatible
2020-05-19 23:45:44 +09:00