alexey.lysiuk
036307927a
- refactored video part of Cocoa backend
...
Window related functionality is moved to framebuffer class
Video settings are now applied properly on startup
2018-06-24 14:20:20 +03:00
alexey.lysiuk
3936e3018d
- added window position and size restoration to SDL backend
2018-06-23 16:22:29 +03:00
alexey.lysiuk
663ac919bd
- removed unused header file
2018-06-23 16:21:35 +03:00
alexey.lysiuk
009acf3fb2
- added window position and size restoration to Cocoa backend
2018-06-23 12:45:44 +03:00
alexey.lysiuk
573758bc55
- removed obsolete code from Cocoa backend
2018-06-23 12:44:48 +03:00
Christoph Oelckers
b106f72741
- don't route calls to FMaterial::FlushAll through the framebuffer interface.
2018-06-20 22:18:31 +02:00
Christoph Oelckers
d2309af3d5
Merge remote-tracking branch 'remotes/origin/master' into modern
...
# Conflicts:
# src/d_main.cpp
# src/hwrenderer/scene/hw_weapon.cpp
2018-06-19 19:40:52 +02:00
Christoph Oelckers
548ccb1df4
- removed some references to r_viewpoint in game code
...
Mainly to reduce number of search results.
2018-06-19 11:20:36 +02:00
alexey.lysiuk
c6e4d6a333
- implemented fullscreen toggle in SDL backend
...
Made window resizable but its size and position are not saved yet
2018-06-18 22:53:19 +03:00
alexey.lysiuk
37a0c1d6c1
- implemented fullscreen toggle in Cocoa backend
...
Window size and position are not saved yet
2018-06-18 22:52:37 +03:00
Christoph Oelckers
bac435333b
Merge remote-tracking branch 'remotes/origin/master' into modern
2018-06-18 00:24:49 +02:00
Christoph Oelckers
babe55819e
- fullscreen toggle and some cleanup. Not fully working yet.
2018-06-17 22:11:35 +02:00
alexey.lysiuk
89ce74443b
- adapted SDL backend to new video mode handling
2018-06-17 22:41:05 +03:00
alexey.lysiuk
42587761c7
- adapted Cocoa backend to new video mode handling
2018-06-17 22:35:50 +03:00
Christoph Oelckers
b65b83edb3
- removed the hard screen resolution switch that still was present on Windows and cleaned up the entire video backend code from the remaining support code for this.
...
Like Linux and macOS this will only support borderless fullscreen in the active desktop resolution now, which is what modern systems need.
The list of discrete resolutions has been removed as it makes no sense anymore with a fixed video mode - all the other scaling options remain active, though.
2018-06-17 20:08:35 +02:00
alexey.lysiuk
5cf3dbfd5b
- fixed compilation of SDL backend
...
src/posix/sdl/sdlglvideo.cpp:200:4: error: use of undeclared identifier 'I_ClosestResolution'
2018-06-17 14:51:04 +03:00
alexey.lysiuk
f2918b748f
- deleted leftover declaration in Cocoa backend
2018-06-17 14:39:05 +03:00
Christoph Oelckers
dc2a5b0cc9
- consolidated the 3 identical versions of I_CheckResolution and I_ClosestResolution.
2018-06-17 12:30:01 +02:00
Rachael Alexanderson
77956fc485
- remove ARM specific gl_es definition since it's not even really much different from the main line definition, anyhow
2018-06-09 13:40:39 -04:00
alexey.lysiuk
352f93c066
- deleted now useless code from Cocoa backend
...
Let's rely on cross-platform code to manage window dimensions and screen resolution
2018-06-03 17:48:58 +03:00
alexey.lysiuk
f8f1148c59
- fixed mouse cursor positioning in menu for Cocoa backend
...
With video resolution scaling enabled engine coordinates of mouse cursor were wrong
2018-06-03 17:48:58 +03:00
Christoph Oelckers
3f56e02352
Revert "- fix compile on non-Windows targets"
...
This reverts commit 781cc62f89
.
This gets in the way of a real fix.
2018-05-18 00:03:58 +02:00
Rachael Alexanderson
781cc62f89
- fix compile on non-Windows targets
2018-05-17 17:47:42 -04:00
Christoph Oelckers
c0837f42bd
- gl_system.h as well, in particular this has no place in hw_* files.
2018-05-16 23:34:52 +02:00
alexey.lysiuk
fd5df6e8d1
- Cocoa: ability to use drag and drop with custom IWADs
2018-05-09 12:47:11 +03:00
alexey.lysiuk
23dcc27542
- Cocoa: proper defaults in .plist
2018-05-09 12:33:19 +03:00
David Carlier
1b68b69ed8
Needed headers for time and WIF*
2018-05-08 22:04:20 +03:00
alexey.lysiuk
78c06554af
- proper handle pixel format creation errors in Cocoa backend
2018-05-06 17:53:53 +03:00
alexey.lysiuk
7fcefa2ed1
- SDL: clear button state when switching from/to GUI input
...
https://forum.zdoom.org/viewtopic.php?t=60451
2018-05-06 14:37:04 +03:00
alexey.lysiuk
2be84dc636
- skip rendering when application is not active
...
Use vid_activeinbackground CVAR to override this behavior
2018-05-04 11:24:37 +03:00
Christoph Oelckers
06d20e13b8
- cleaned up the gamma correction code.
...
This had accumulated quite a bit of cruft by now and parts of it should be in non OpenGL code.
2018-04-29 13:45:53 +02:00
alexey.lysiuk
8dfd1e6490
Removed unsupported versions of macOS from detection list
2018-04-27 11:04:19 +03:00
alexey.lysiuk
2ae8d39441
Removed all superfluous #include's
...
Automatically optimized by CLion IDE with manual corrections
2018-04-24 14:30:35 +03:00
alexey.lysiuk
03ffb30c39
Enabled custom window title in SDL backend
2018-04-09 20:47:49 +02:00
alexey.lysiuk
e6e2b11167
Set common name for system-specific framebuffer class
...
Implementation details are hidden as much as possible in platform-specific source files
Reduced number of included header files
2018-04-09 20:47:49 +02:00
alexey.lysiuk
5a4307160e
Fixed compilation of SDL backend
2018-04-08 13:55:46 +03:00
alexey.lysiuk
1c89de25dd
Fixed compilation of Cocoa backend
2018-04-08 13:55:46 +03:00
Christoph Oelckers
df4f435952
- merged vid_renderer, swtruecolor and r_polyrender into one CVAR to reduce menu clutter.
...
- with renderers freely switchable, some shortcuts in the 3D floor code had to be removed, because now the hardware renderer can get FF_THISINSIDE-flagged 3D floors.
- changed handling of attenuated lights in the legacy renderer to be adjusted when being rendered instead of when being spawned. For the software renderer the light needs to retain its original values.
2018-04-07 23:30:28 +02:00
Christoph Oelckers
5fbc723842
- live switching of the renderer works.
2018-04-07 12:59:04 +02:00
Christoph Oelckers
221beec979
- added palette shader and fixed a few things.
2018-04-07 12:17:23 +02:00
Christoph Oelckers
d474b849a5
- removed the remaining calls from the FRenderer interface from the main game code.
...
This does not work with a setup where the same backend is driving both renderers.
Most of this is now routed through 'screen', and the decision between renderers has to be made inside the actual render functions.
The software renderer is still driven by a thin opaque interface to keep it mostly an isolated module.
2018-04-04 00:21:25 +02:00
Christoph Oelckers
9ba32cb994
- with the new order of things we need the software renderer to be always available.
2018-04-03 20:14:26 +02:00
Christoph Oelckers
248a29bf06
- resorted portal render data.
...
Compiles but does not work...
2018-04-01 22:26:57 +02:00
Christoph Oelckers
711a88bab3
- consolidated cycle_t and glcycle_t because aside from glcycle_t's ability to be deactivated when no profiling takes place they did exactly the same thing.
2018-04-01 13:24:03 +02:00
Christoph Oelckers
1461059dae
- moved contents of gl_templates.h to files outside of gl/
2018-04-01 11:59:12 +02:00
Christoph Oelckers
6d6196388e
- made SPROFS a more usable feature.
...
This was originally invented to fix the sprite offsets for the hardware renderer.
Changed it so that it doesn't override the original offsets but acts as a second set.
A new CVAR has been added to allow controlling the behavior per renderer.
2018-03-31 10:37:46 +02:00
Christoph Oelckers
6cd26dec01
- remove some dead code.
2018-03-31 00:25:15 +02:00
Christoph Oelckers
a001a5304d
- removed the old software renderer framebuffers for Windows
...
This cannot be refactored with the old code still present and done properly both renderers should share what they can.
2018-03-30 23:18:25 +02:00
Christoph Oelckers
1e5fbc1423
Merge remote-tracking branch 'remotes/origin/master' into 2D_Refactor
...
# Conflicts:
# src/posix/cocoa/i_video.mm
2018-03-30 22:06:17 +02:00
alexey.lysiuk
fdd93d704d
Merged list of video modes for Cocoa and SDL backends
...
https://forum.zdoom.org/viewtopic.php?t=59990
2018-03-28 15:12:07 +03:00
Christoph Oelckers
29ad081368
- removed remaining DirectDraw code and a few other things that are no longer being used.
2018-03-27 21:04:01 +02:00
Christoph Oelckers
62f073ef60
- removed Accel2D variable and a little bit of locking cruft.
2018-03-27 17:13:10 +02:00
Christoph Oelckers
377aa95e34
- removed empty header.
2018-03-27 12:01:15 +02:00
Christoph Oelckers
e0f1abdf81
- removed SDLFB and cleaned things up a bit.
2018-03-27 11:59:43 +02:00
Christoph Oelckers
1a28644d83
- cleaned out unused stuff from DCanvas.
...
- removed CocoaFrameBuffer because it is a software fallback which is no longer supported.
2018-03-27 11:25:06 +02:00
Christoph Oelckers
ba799aebbd
- moved locking logic from DCanvas to DFrameBuffer.
...
The software canvases used for rendering camera textures and save pictures in the software renderer do not need this.
2018-03-27 11:12:13 +02:00
Christoph Oelckers
40bbe5cd8a
- removed DirectDraw backend.
2018-03-26 22:03:32 +02:00
Christoph Oelckers
e89a598b31
- renamed FTexture's UseType flags and gave them a dedicated type.
...
This was done mainly to reduce the amount of occurences of the word FTexture but it immediately helped detect two small and mostly harmless bugs that were found due to the stricter type checks.
2018-03-25 20:26:16 +02:00
Rachael Alexanderson
fbc4831072
- remove empty Mac I_HTTPRequest prototype since it's not used
2018-03-12 19:33:49 +01:00
Christoph Oelckers
f2f649bf77
- put all stats related code into one file.
2018-03-12 19:33:48 +01:00
Rachael Alexanderson
033a11a028
- fix compile on clang
...
- implement TCP connections in Linux
- fix passing of request string to a thread
- implement OS stats for ARM and PPC on Linux
2018-03-12 19:33:48 +01:00
Christoph Oelckers
d2fa4d0ff9
- most stat stuff done.
2018-03-12 19:33:48 +01:00
alexey.lysiuk
61979f63c1
Removed last remnants of PowerPC Mac support
2018-02-11 16:35:34 +02:00
Alexander Wilms
55c6a14059
Added simple fatal error window for Linux
...
There are three variants: KDE dialog, GTK+ window, SDL message box
https://forum.zdoom.org/viewtopic.php?t=57880
2018-01-28 17:03:10 +02:00
Neil McPhail
ded0c7805d
Fix failure to write under ~/ in confinement
...
When running in a confined environment (such as a snap) it may not be
possible to write to directories such as ~/.config. By using the $HOME
variable instead of the '~' shortcut, the confined environment can pass
an alternative 'home' directory with write privelges.
I have only changed this for posix/unix and haven't touched code for
MacOS, as I don't know if that behaves differently
2018-01-21 10:52:42 +01:00
alexey.lysiuk
f28914d1b6
Simplified handling of command line arguments in Cocoa backend
...
Empty arguments are no longer ignored
2018-01-14 11:29:45 +02:00
alexey.lysiuk
2eb51e5f79
Disabled modifier keys processing in UI by Cocoa backend
...
Modifier keys no longer trigger bound actions in menu/console/chat
2017-12-25 18:14:56 +02:00
Rachael Alexanderson
000037dbf6
- implemented 'i_soundinbackground' to continue playing sounds and music while in the background.
...
- OpenGL rendering continues now even when losing focus while in windowed mode.
2017-12-24 18:01:45 -05:00
Christoph Oelckers
a945418ba6
- added M_GetDocumentsPath function.
2017-12-03 21:03:44 +01:00
Christoph Oelckers
7cbcbe66c0
- sanitization of temporary file stuff for Timidity++.
...
* do not use the global temp directory. Instead create one in the AppData folder.
* removed lots of unneeded code from tmpfileplus.
* use C++ strings in there.
2017-12-02 17:33:43 +01:00
Christoph Oelckers
8627a48b34
- consolidation of 'stat' calls.
...
Since this is a non-standard function it's better kept to as few places as possible, so now DirEntryExists returns an additional flag to say what type an entry is and is being used nearly everywhere where stat was used, excluding a few low level parts in the POSIX code.
2017-12-02 16:07:09 +01:00
Christoph Oelckers
838e52001c
- got rid of M_ReadFile(Malloc) which werew each used only once in the entire code. These were still using the low level POSIX-style file interface which shouldn't really be used anymore.
...
- let FScanner::OpenFile return an error instead of throwing an exception. The exception was never used anyway aside from being caught right away to be ignored.
2017-12-02 13:09:59 +01:00
alexey.lysiuk
0f5ff5a5de
Removed obsolete files after timer code refactoring
2017-11-25 11:48:22 +02:00
Rachael Alexanderson
6d43c5cdc6
Merge remote-tracking branch 'origin/friendly_window_title'
2017-11-24 14:41:25 -05:00
Rachael Alexanderson
f1405f68a7
Merge remote-tracking branch 'origin/master' into friendly_window_title
2017-11-18 14:08:33 -05:00
raa-eruanna
28d47d463f
- fix linux compile
...
# Conflicts:
# src/posix/sdl/sdlvideo.cpp
2017-11-18 08:20:58 -05:00
alexey.lysiuk
35bb9ba9d3
Implemented setting of window title in Cocoa backend
...
# Conflicts:
# src/posix/cocoa/i_video.mm
2017-11-18 08:19:15 -05:00
Christoph Oelckers
0323f54384
- rename I_FPSTime function.
...
- now that the frame buffer stores its render time, the 'ms' return from I_GetTimeFrac is not needed anymore, we may just as well use the globally stored value instead.
The only feature this value was ever used for was texture warping.
2017-11-13 00:54:32 +01:00
Christoph Oelckers
2c65f08011
- more timer cleanup
...
* store the frame time in the current screen buffer from where all render code can access it.
* replace some uses of I_MSTime with I_FPSTime, because they should not use a per-frame timer. The only one left is the wipe code but even this doesn't look like it needs either a per-frame timer or a timer counting from the start of the playsim.
2017-11-13 00:28:43 +01:00
Christoph Oelckers
0db0f2f7b9
- removed redundant POSIX version of I_WaitVBL
2017-11-12 12:12:51 +01:00
Christoph Oelckers
d9808e6d68
- there were still some old definitions left...
2017-11-12 10:02:29 +01:00
Christoph Oelckers
6bd76d6b5a
- fixed compilation in debug mode.
...
- moved timer definitions into their own header/source files. d_main is not the right place for this.
- removed some leftover cruft from the old timer code.
2017-11-12 09:06:40 +01:00
Magnus Norddahl
7d63c3324d
- Fix macOS compile errors
2017-11-12 03:51:37 +01:00
Magnus Norddahl
307d8931d8
- Switch to C++11 steady clock
...
- Move the C++11 implementation to d_main
- Remove the platform specific timer implementations
2017-11-12 03:12:22 +01:00
Chris Robinson
f353f8b5aa
Improved OpenGL profile selection in SDL backend
...
https://forum.zdoom.org/viewtopic.php?t=56852
2017-11-07 11:05:06 +02:00
alexey.lysiuk
587f6f0f91
Added wait for debugger feature to Cocoa backend
...
Use -wait_for_debugger command line switch to display message box on startup
It's available in Debug configuration only
2017-11-02 14:49:08 +02:00
raa-eruanna
7d4f8af245
- fixed compile on Linux and (maybe?) Mac
2017-11-01 04:13:10 -04:00
Rachael Alexanderson
d16ad3dcb5
- added I_FriendlyWindowTitle cvar, which takes the current game/mod name and uses it as a default window title.
2017-10-31 19:47:56 -04:00
alexey.lysiuk
5f7a06c66e
Fixed non-portable usage of __solaris__ preprocessor definition
...
GCC: this use of "defined" may not be portable [-Wexpansion-to-defined]
Clang: macro expansion producing 'defined' has undefined behavior [-Wexpansion-to-defined]
2017-10-24 15:32:43 +03:00
alexey.lysiuk
57ecc4ce30
Removed the last deprecated method in Cocoa backend
...
src/posix/cocoa/i_input.mm:482:36: warning: 'convertScreenToBase:' is deprecated: first deprecated in macOS 10.7 - Use -convertRectFromScreen: instead [-Wdeprecated-declarations]
2017-10-07 15:13:59 +03:00
alexey.lysiuk
7a43fa6ed7
Cocoa window uses OpenGL 2.1 for software renderer
2017-10-07 15:13:41 +03:00
alexey.lysiuk
557958577b
Removed all code needed to support macOS earlier than 10.7 Lion
2017-10-07 15:11:30 +03:00
JimmyZD
abc8e4deac
Added four text colors: ice, fire, sapphire, teal
...
https://forum.zdoom.org/viewtopic.php?t=57942
2017-09-23 11:56:16 +02:00
Rachael Alexanderson
76f805062a
- updated icon for linux/unix
2017-09-09 13:18:47 -04:00
alexey.lysiuk
8a37356c33
New .icns macOS icon from the same images as Window .ico
2017-09-09 11:28:33 +03:00
Rachael Alexanderson
6f98c5e8fb
- replace potentially infringing static EXE assets (including icons) with ones from GZDoom-GPL
2017-09-07 04:13:30 -04:00
alexey.lysiuk
2375823055
Adapted Cocoa IWAD picker to recent changes in IWAD loading
2017-08-20 12:35:40 +03:00
alexey.lysiuk
cafd1ca26e
Fixed compilation of non-Windows targets
2017-08-20 09:50:51 +03:00
Christoph Oelckers
9878477612
Revert "- fix linux compile"
...
This reverts commit b8c0e78c91
et al.
Instead, use the already provided access function I_FindName to get the file name from findstate_t.
Also made the contents of findstate_t private so that use of the access functions is required to retrieve the information and direct access triggers a compile error.
2017-08-20 08:01:41 +02:00
Rachael Alexanderson
b7d26b3fa1
- fixed Linux IWAD search thanks to a suggestion by Chris on the forum. Moved the search macros to i_system.h for both platforms. Neither are compatible with the other. This can be improved upon later, but for now, at least the major compile issue is fixed.
2017-08-19 22:10:45 -04:00