Commit Graph

60 Commits

Author SHA1 Message Date
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 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 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 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 93030b02a3 don't die after encountering a NULL texture 2020-05-29 19:35:35 +03: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
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
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
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 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 2bd840a299 (hopefully) fix the timing crap; add vsync option 2020-05-18 23:03:04 +03:00
Vinícius R. Miguel bd186569de Fixes --fullscreen and --windowed problems 2020-05-18 00:28:05 -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
kurethedead 181e18dfea Implemented LoadTile f3d command, I4/I8/RGBA32 texture formats. 2020-05-17 15:48:06 -07:00
fgsfds 62cc4620ec no need for that, window resize events happen when fullscreen state changes 2020-05-17 19:56:33 +03:00
fgsfds 58dbb04f97 update gfx_sdl2.c with the latest stuff from Emill/n64-fast3d-engine 2020-05-17 19:49:36 +03:00
yksoft1 753be9e1b7 Merge remote-tracking branch 'upstream/master' into mingw.org-compatible 2020-05-17 18:33:17 +08:00
fgsfds 54f986a528
Merge branch 'master' into osx_build_clean 2020-05-17 01:27:51 +03:00
fgsfds f6642e9a9d tabs begone 2020-05-16 22:39:37 +03:00
fgsfds f5e73a099b
Merge pull request #126 from HeavenVolkoff/gfx_use_second_light_color
Consider second color column of Light_t when calculating vertex colors
2020-05-16 22:38:36 +03:00
Hyenadae 5dd43ad674 OSX_BUILD cleaned commit 2020-05-16 15:30:27 -04:00
Vinícius R. Miguel 9e8290773b Shutdown subsystems on exit
Porting from testing, originally by @fgsfdsfgs
2020-05-16 16:23:23 -03:00
fgsfds 9ae444d2b5 move filtering check to gfx_pc.c for those sweet realtime updates 2020-05-16 16:15:45 +03:00
fgsfds dbca0c413d add fullscreen and filtering settings to options
filtering only applies to newly loaded textures
2020-05-16 16:15:27 +03:00
Heaven Volkoff 1a3034898c Consider second color column of Light_t when calculating vertex colors 2020-05-16 04:48:11 -03:00
Vinícius R. Miguel fd74e20373 Add a `--fullscreen` CLI option 2020-05-15 12:51:06 -03:00
yksoft1 1b03e251bb Better way to detect mingw-w64; fix bettercamera for mingw.org; close
.assets-local.txt before deleting it.
2020-05-15 00:26:56 +08:00
yksoft1 fa9af3227e Make the code buildable on MinGW.org (not mingw-w64) and MSYS1. 2020-05-14 23:47:00 +08:00
vanfanel d59c081905 Hide mouse cursor when in fullscreen mode. 2020-05-11 13:37:48 +02:00
vanfanel f24d44c9c7 Remove redundant code. Make GLES and GL modes respect DESIRED_WIDTH and DESIRED_HEIGHT in windowed mode, but in fullscreen mode just use the system video mode. 2020-05-10 18:23:34 +02:00
vanfanel 16a4495bf2 Do not call gfx_sdl_set_fullscreen() just after creating the game window: create window fullscreen or not directly. 2020-05-10 18:07:26 +02:00
vanfanel fd02d88b59 Fix for GLES on windowed rendering contexts (X11) 2020-05-10 17:52:01 +02:00
vanfanel f70ebeb2b3 Use the system video mode in GLES platforms instead of setting a new one. 2020-05-10 15:41:46 +02:00
Colton G. Rushton ad89f663f3
More fixes ported from fdsfgsfds' fork 2020-05-10 00:05:33 -03:00