Commit Graph

14542 Commits

Author SHA1 Message Date
Christoph Oelckers 90a1614ac8 The intermission drawer doesn't need to check the return of Begin2D anymore 2018-04-27 09:34:43 +02:00
Christoph Oelckers fbcf2033c6 Corrected render style definition 2018-04-27 09:34:02 +02:00
Christoph Oelckers 286846a8ec 2D must consider brightmaps. 2018-04-27 08:59:59 +02:00
Christoph Oelckers 0dc82fe755 - header cleanup for gl_swscene. 2018-04-27 00:53:58 +02:00
Christoph Oelckers 9d13e6b7ec - gl_colormap.h is no longer needed. 2018-04-27 00:31:00 +02:00
Christoph Oelckers fc0d673935 - moved the files 2018-04-27 00:28:30 +02:00
Christoph Oelckers dd524b046e - GLWall is mostly clean, except some smaller things in gl_sky.cpp 2018-04-27 00:22:00 +02:00
Christoph Oelckers 937a2cf69f - abstracted the vertex allocator. 2018-04-26 20:07:56 +02:00
Christoph Oelckers 9a1603b246 - made GLWall ready for multithreaded processing.
* to do this efficiently the amount of required vertices needs to be calculated up-front
* always create the vertices in the data generation pass, not the render pass.
* added synchronisation code to the vertex buffer allocator.

Without multithreading this causes a slight slowdown, due to added processing cost. (Frozen Time bridge scene drops from 47 fps to 44 fps on my test machine.
2018-04-26 19:25:11 +02:00
alexey.lysiuk 3111ec97bb Fixed crash during line tracing when enter sector is null
https://forum.zdoom.org/viewtopic.php?t=60371
2018-04-26 17:33:05 +02:00
alexey.lysiuk 10b869ba11 Made AppVeyor configuration closer to stable builds
Use Windows XP compatible toolchain for 32-bit Release targets only
2018-04-26 10:40:09 +03:00
alexey.lysiuk 86232df5ee Fixed rendering of walls and flats
With high resolution textures enabled (gl_texture_usehires CVAR set to true) and without hires textures loaded walls and flats were black
2018-04-26 10:37:27 +03:00
Christoph Oelckers 6e58f72329 - continued reorganization of GLWall. 2018-04-26 07:07:46 +02:00
Christoph Oelckers 1ae6ad2a82 - moved the legacy member functions of GLWall to FDrawInfo. 2018-04-25 22:58:56 +02:00
Christoph Oelckers 41d5bd76d4 - moved decal rendering from GLWall to FDrawInfo.
First step of turning GLWall into a pure data container.
2018-04-25 22:09:12 +02:00
Christoph Oelckers 306b630de2 - merged the remains of gl_texture.cpp into hw_cvars.cpp.
- eliminated hqresize.cpp's dependency on GL headers.
- cleaned up the logic for CreateTexBuffer so that hqresize.cpp does not need to check for software warped textures anymore.
2018-04-25 21:02:50 +02:00
Christoph Oelckers 557c8b480b - missed the menu part. 2018-04-25 20:34:28 +02:00
Christoph Oelckers ceeb479261 - moved the CVAR definitions from gl/ to hwrenderer/.
- disabled gl_texture_format because in its existing form it is mostly a useless feature.
2018-04-25 20:33:55 +02:00
ZZYZX 3129840a04 Only call additional LineCheck if there are 3D floors 2018-04-25 19:38:29 +02:00
ZZYZX da089b09b1 Added missing commented enum entry for ETraceFlags on ZScript side 2018-04-25 19:38:29 +02:00
ZZYZX 3eef3d7845 Implemented workaround for ZScript LineTrace with 3D floors 2018-04-25 19:38:29 +02:00
Christoph Oelckers 85300993af - replaced gl_PatchMenu with an MMX 'ifoption' check. 2018-04-25 19:36:48 +02:00
Christoph Oelckers cf8ee3130b - gl_clock moved to hwrenderer. 2018-04-25 18:39:54 +02:00
Christoph Oelckers 982776d48d - removed dependencies on GL-API related classes from gl_walls.cpp and gl_sky.cpp
Not complete yet, but at least the GLWall memberes no longer reference GLSceneDrawer and the implementation dependent parts of FDrawInfo.
2018-04-25 14:58:13 +02:00
Christoph Oelckers bf81799701 - typo 2018-04-25 13:59:27 +02:00
Christoph Oelckers 81341ac6c5 - Moved all static variables in hw_renderhacks into HWDrawInfo
- removed the profiling code from hw_renderhacks because it was broken in its current state and if still needed needs to be redone differently.
2018-04-25 13:59:14 +02:00
Christoph Oelckers 1648fc6a07 Fixed initialization issues with dynamic lights.
Actors get initialized from their defaults so anything done in the constructor or some explicit member initialization will be overwritten.
They must use their properties for setting up configurable fields and do the rest in BeginPlay.
2018-04-25 09:14:01 +02:00
Christoph Oelckers f4e139485a - fixed return value of hw_CheckViewArea. 2018-04-25 00:30:35 +02:00
Christoph Oelckers bc8f47444f - texture precaching also moved to hwrenderer/. 2018-04-25 00:07:46 +02:00
Christoph Oelckers e24b597ae4 - got rid of the gl_info substructure in FTexture and moved all elements into the main class. 2018-04-24 23:51:19 +02:00
Christoph Oelckers 1a024a9f54 - moved gl_material into hwrenderer/. 2018-04-24 23:39:58 +02:00
Christoph Oelckers 0675315b41 - made FHardwareTexture inherit from an abstract interface to remove all GL dependencies from gl_material.cpp. 2018-04-24 23:06:34 +02:00
Christoph Oelckers f9a82e66e4 - removed all GL dependencies from gl_material.h. 2018-04-24 22:37:52 +02:00
Christoph Oelckers 5e8a4b96fe - make sure that warping textures never create a warped true color image.
This replaces the old redirection hackery that had to work differently for the legacy render path.
Overriding CopyTrueColorTranslated is far more robust and ensures that no edge cases can reach the GetPixels function, which wasn't the case before.
2018-04-24 21:58:26 +02:00
Christoph Oelckers c37ff22a05 - removed the intermediate FGLTexture class.
This wasn't serving any real purpose anymore, and all its remaining functionality could be moved to FHardwareTexture
2018-04-24 20:41:52 +02:00
Christoph Oelckers 8d62ebd2f4 - renamed the functions in hw_fakeflat.cpp 2018-04-24 17:52:35 +02:00
Christoph Oelckers 0dcc6ec6d3 Merge branch 'master' of https://github.com/coelckers/gzdoom
# Conflicts:
#	src/CMakeLists.txt
#	src/gl/renderer/gl_renderer.h
#	src/gl/scene/gl_portal.cpp
#	src/gl/scene/gl_scene.cpp
2018-04-24 17:39:03 +02: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
Christoph Oelckers d976ce92e2 Merge branch 'master' of https://github.com/coelckers/gzdoom 2018-04-24 12:12:36 +02:00
Christoph Oelckers e55b52f356 Moving the files to hwrenderer/ 2018-04-24 11:58:04 +02:00
Kevin Caccamo 1c58093fc8 Add info about UseSpecial flag feature conflict above Actor.Used 2018-04-24 05:56:07 -04:00
Christoph Oelckers dbb1492bf9 Fully separated HWDrawInfo from GL dependencies.
This also required temoporarily moving one small function because in the current state this cannot be done in the API independent part.
2018-04-24 11:52:15 +02:00
Christoph Oelckers a803b3d393 Split FDrawInfo in two
Done so that the entire gl_renderhacks.cpp file can be moved out of the GL folder.
Not cleaned up yet
2018-04-24 10:30:26 +02:00
Magnus Norddahl 45625399dc - fix softpoly line portals 2018-04-23 23:09:11 +02:00
Christoph Oelckers a93799b21f - moved the "unused" folder to the repo's top level. 2018-04-23 22:25:29 +02:00
Christoph Oelckers 5ca1fca8d1 - moved gl_clipper and gl_fakeflat to the hwrenderer folder because both files do not contain anything API specific. 2018-04-23 22:18:13 +02:00
Christoph Oelckers 60567f207c - made CheckViewArea a global function.
This can be put into the common hwrenderer folder but for that it shouldn't be part of the scene drawer.
2018-04-23 22:10:11 +02:00
alexey.lysiuk c264ff05da All platform-specific headers are referenced by generated projects
This was already the case on Windows anyway
2018-04-23 22:15:11 +03:00
alexey.lysiuk 6ac0c2f569 Excluded unused .cpp file from compilation 2018-04-23 18:42:59 +03:00
Magnus Norddahl 2aee68d215 - slightly improve sector portal handling in softpoly 2018-04-23 01:03:37 +02:00