Commit Graph
15 Commits
Author SHA1 Message Date
asarium 2f3f061e75 Add Vulkan instance and surface creation code
This adds a new graphics type for the Vulkan graphics API. All this does
is to create a vulkan instance and a presentation surface with the help
of SDL.
2020-02-09 17:06:21 +01:00
asarium ad1ede7b74 Add new options system
This is a system for storing arbitrary data in the config file and then
easily retrieving it later on. This has full Lua support for exposing
the available options in a custom UI and changing the values of the
options. This ported some of the existing command line options over to
the new system which is opt-in for the moment by using a mod_table flag.
2019-03-02 14:02:21 +01:00
asarium 39ab45dc7c Add macro for marking unreachable code
This can be used for mark parts of the code which should be unreachable
in normal execution. In debug mode, if such a statement is reached an
Error dialog is shown which aborts the execution. In release mode the
macro is replaced with a compiler specific expression that lets the
compiler know that this part is unreachable which allows it to optimize
the code better.
2018-06-09 17:38:17 +02:00
asarium f1c79c2ca7 Fix override warnings produced by clang-tidy 2018-04-13 12:08:06 +02:00
asarium 4d7324dddf Fix rendering on high DPI displays on Mac
I added the "allow high DPI windows" SDL-flag while investigating #998
but since that flag isn't used on Windows we can safely remove it again
without causing issues.
2017-03-02 16:15:53 +01:00
asarium 6b62146388 Add a Windows executable manifest to FreeSpace2
This sets the dpiAware flag which should improve the compatibility with
High-DPI displays. It also sets a few values for specfying what Windows
versions we support and it also enabled the nicer dialog boxes which
makes the error and warning dialogs look a bit nicer.
2017-02-27 17:27:02 +01:00
asarium 6c1d5263f1 Create main window at 0,0 if its the same size as the display
This fixes #1051 by explicity telling SDL to create the window in the
display corner instead of centering the window. This has caused some
problems because the window borders aren't visible anymore in this case
which lead to some confusion.
2017-02-12 15:42:19 +01:00
asarium 25fa3543f2 Fix a few minor issues with the new debug window
This makes the debug window resizable and also reduces the default size
to ~80% of the used display. This also makes sure that the main window
has input focus after the debug window was created.
2017-01-21 11:48:09 +01:00
niffiwan 00948ec261 Minimal disable, leave infrastructure intact 2016-10-09 21:01:54 +10:00
niffiwan c6c4f54f79 Remove MSAA
Reasons being; it's incompatible with FXAA, it's slow, and it's causing
OGL init to fail on certain systems. Oh, and it probably doesn't work
anyway :)
2016-10-09 20:00:06 +10:00
asarium beb9288c73 Merge branch 'opengl_core_materials' of https://github.com/SamuelCho/fs2open.github.com into ogl_core/merge
Conflicts:
	code/graphics/gropengl.cpp
	code/io/cursor.cpp
	freespace2/SDLGraphicsOperations.cpp
2016-08-23 16:05:28 +02:00
asarium a03452eaf1 Fix OpenGL Context creation code 2016-08-20 13:39:23 +02:00
asarium efdd4fae68 Add interface for viewport management
This separates OpenGL context creation from window creation and also
allows to implement multiple viewports in the future.
2016-08-19 17:44:17 +02:00
SamuelCho a481999a24 OpenGL Core support. Introduction of material based draw system. Rewrote geometry batcher. 2016-08-17 00:13:19 -07:00
asarium 0bf5ba092b Add interface for creating an OpenGL context
This allows to use a different method of creating and managing the
OpenGL context. This is needed of wxFRED where the OpenGL context is
created by wxWidgets. This will probably also fix #753 since it uses the
old wgl based method of creating an OpenGL context in FRED.
2016-08-07 21:38:36 +02:00