Commit graph

92 commits

Author SHA1 Message Date
ZZYZX
30548f1765 Fixed crash on AMD hardware (resolves #820 reported by AlexMax) 2022-11-23 18:43:51 +02:00
biwa
d597c11e1f Added "-debugrenderdevice" command line argument to write a logfile for the render device 2022-08-18 10:18:16 +02:00
volte
7fbd07e586
New feature: classic lighting renderer for visual mode (#680)
Added classic rendering mode to closer emulate software renderer visuals in visual mode
2022-01-04 20:17:12 +01:00
Magnus Norddahl
c98ed6575b Throw away 6 mb of memory at 1920x1080 to support AMD cards with awful drivers 2020-09-20 11:07:20 +02:00
Magnus Norddahl
2998fc514a Rewrite the OpenGL context creation to use exactly the same steps as GZDoom uses:
- dummy window destroyed immediately after getting the OpenGL 3 function pointers (debatable if that's even legal)
- calling the OpenGL 3 creation functions without an active opengl context (debatable if that's even legal)
- use wglChoosePixelFormatEXT even if it should be completely pointless
2020-09-19 17:43:03 +02:00
Magnus Norddahl
e3208f989c Add version info to the log file 2020-09-19 15:49:19 +02:00
Magnus Norddahl
77fd7da6c7 Don't create a depth/stencil buffer for the default frame buffer 2020-09-19 15:01:10 +02:00
Magnus Norddahl
dbafb36abf Add command line for launching builder from the BuilderNative project (this makes it easier to setup breakpoints in the native code) 2020-09-19 15:00:00 +02:00
Magnus Norddahl
90831bd630 Fix cursor visible on Linux when in 3D mode 2020-09-13 23:43:11 +02:00
Magnus Norddahl
e62c8bdad4 Fallback C# implementation for when rawmouse is not present 2020-09-11 22:22:36 +02:00
Magnus Norddahl
7af52a9bf7 Fix BuilderNative.vcxproj to work in both Visual Studio 2017 and 2019 at the same time 2020-07-29 04:09:44 +02:00
Magnus Norddahl
8eb522c873 Move vpo native code into BuilderNative as it is easier to manage. The plugins folder doesn't support including native dlls properly anyway.
Fix visplane explorer busy looping when waiting for data and reduce the used core count to 75% of the total available
Made vpo native code thread safe, removing the need for ungodly DLL patching hacks
2020-04-19 15:56:24 +02:00
alexey.lysiuk
127aff5cc4
Fixes for non-Windows platforms (#371 by alexey-lysiuk) 2020-03-17 21:37:58 +02:00
Magnus Norddahl
6e4a02fb2b Add texture format to the Texture class so that render target textures do not have to be in the bgra8 format 2020-01-15 23:28:17 +01:00
Magnus Norddahl
5363fe0717 Produce release build
Disable devil
Support mac build (which is useless as mono doesn't support winforms on modern macOS)
2020-01-06 08:52:59 +01:00
Magnus Norddahl
20f5f01b84 Unix build fixes 2020-01-06 08:07:52 +01:00
ZZYZX
044dbbcfd0 Rewrote dynamic light support. Resolves #319. Resolves #318. Resolves #233. 2020-01-03 03:22:33 +02:00
Magnus Norddahl
54fb563a9a Merge branch 'master' of https://github.com/jewalky/UltimateDoomBuilder 2020-01-02 20:35:20 +01:00
Magnus Norddahl
c10f70d595 Fix glError returning a null pointer 2020-01-02 20:34:55 +01:00
ZZYZX
7b5d4a03e9 Write uniform data into separate structures 2020-01-02 21:32:08 +02:00
Magnus Norddahl
10702928ae Only call seterror if the context creation fails 2020-01-02 20:21:38 +01:00
Magnus Norddahl
6450bdcc67 Improve error message if OpenGL context creation fails 2020-01-02 19:45:45 +01:00
ZZYZX
0ba5870dfc Merge branch 'shadercompiler' 2020-01-02 20:22:49 +02:00
Magnus Norddahl
d71da60c40 Lower depth bits requirement 2020-01-02 19:07:31 +01:00
Magnus Norddahl
82db74b17a Fix profile not being used 2020-01-02 18:55:53 +01:00
Magnus Norddahl
d49a6e228b Work a little harder to find an usable OpenGL version 2020-01-02 18:53:37 +01:00
ZZYZX
6374b498ab Added GLSL shader preprocessor 2020-01-01 22:41:04 +02:00
Magnus Norddahl
ca3fa76e32 Rename the sampler filters so that they use the same naming convention as modern graphics APIs 2019-12-29 18:54:22 +01:00
Magnus Norddahl
b466035bc8 Fix wrong mipmapping filtering and missing anisotropy 2019-12-26 02:02:53 +01:00
Magnus Norddahl
459742c840 Fix double delete bug 2019-12-26 01:09:31 +01:00
Magnus Norddahl
e68da4331a Also clean up textures not created by SetPixels 2019-12-26 00:46:05 +01:00
Magnus Norddahl
994eda4852 Fix shutdown crash caused by C# finalizers deleting texture objects after renderdevice already left the building 2019-12-26 00:37:47 +01:00
ZZYZX
734157256e Improved memory usage by loading textures directly into OpenGL 2019-12-25 19:08:57 +02:00
ZZYZX
a34055a0d3 Fixed: do a bit less radical deallocation in cube textures 2019-12-25 13:43:55 +02:00
ZZYZX
d57d73ce78 Fixed: memory buffer was not cleared after successfully transferring texture data to OpenGL (resolves #327) 2019-12-25 13:39:55 +02:00
ZZYZX
054a30dd1b Fixed: textures of null size should not be allowed (resolves #324) 2019-12-25 13:32:11 +02:00
Magnus Norddahl
ef6d217623 Rearrange the code slightly so it is easier to add other backends 2019-12-23 20:09:38 +01:00
Magnus Norddahl
84efdad49e Add the license that applies to BuilderNative 2019-12-23 00:13:09 +01:00
Magnus Norddahl
e1ff5fc0da Implement resource cleanup for all resource types 2019-12-22 23:44:58 +01:00
Magnus Norddahl
848ff8e771 Fix typo 2019-12-21 03:32:59 +01:00
Magnus Norddahl
b0538ac3c8 Move matrix functions to its own file 2019-12-21 03:31:44 +01:00
Magnus Norddahl
28406cf1a7 Declare the uniform variables in C# 2019-12-21 02:14:42 +01:00
Magnus Norddahl
a21edf78da Misc adjustments to make the cherry-picked 'C# shader resources' commit work 2019-12-21 01:47:27 +01:00
Magnus Norddahl
236ddd14eb Remove shader references from BuilderNative.vcxproj 2019-12-21 01:36:31 +01:00
Magnus Norddahl
7f6ff8929d Move the shaders to C# resources 2019-12-21 01:26:58 +01:00
Magnus Norddahl
5c5633c1e7 Clearing the current active OpenGL context is apparently very expensive. Only do it if we're destroying an OpenGL context. 2019-12-20 05:30:27 +01:00
Magnus Norddahl
80f815cad9 Fix the error handling: only create one call unless there's an error and only check for errors in functions that can fail 2019-12-20 03:39:06 +01:00
Magnus Norddahl
4274ee2893 Use C++ and SSE code to do matrix math
Avoid copying by passing matrices by reference to RenderDevice
Use fasttrig from GZDoom for faster cos/sin
Don't set matrices unless they changed. Even though the memcmp prevents it from being pushed to OpenGL it is still a waste.
2019-12-19 03:12:44 +01:00
Magnus Norddahl
b19ce39abc Only set uniforms if they changed 2019-12-18 04:22:47 +01:00
Magnus Norddahl
de2e336cb1 Use OpenGL sampler objects 2019-12-18 03:24:09 +01:00