Commit graph

192 commits

Author SHA1 Message Date
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
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
8d62ebd2f4 - renamed the functions in hw_fakeflat.cpp 2018-04-24 17:52:35 +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
alexey.lysiuk
9398d602f8 Fixed applying of dymanic lights to models
https://forum.zdoom.org/viewtopic.php?t=60301
2018-04-19 12:50:07 +03:00
Christoph Oelckers
dcefa3cd12 - GLSprite done, too. 2018-04-15 19:57:28 +02: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
5d94af913a - no, we do not want to use global variables to pass parameters around... 2018-04-02 18:13:18 +02:00
Christoph Oelckers
60aebff4a1 - starting separation of hardware dependent and hardware independent code, starting with aabbtree, because it was easy. 2018-04-02 15:58:28 +02:00
Christoph Oelckers
52c5328412 - made the glow getter functions members of sector_t. 2018-04-02 13:36:28 +02:00
Christoph Oelckers
d01bc452ba - moved all variables not related to the hardware renderer's texture state out of gl_info. 2018-04-02 13:00:33 +02:00
Christoph Oelckers
8080e039e0 - moved most of gl_setup.cpp to r_data as this is only some data setup in the main map data structures.
- made currentmapsections array something nicer to look at and made it a member of the scene drawer class.
2018-04-02 09:27:40 +02:00
Christoph Oelckers
248a29bf06 - resorted portal render data.
Compiles but does not work...
2018-04-01 22:26:57 +02:00
Christoph Oelckers
8be788a9b3 - moved portal data into FLevelLocals. 2018-04-01 20:17:39 +02:00
Christoph Oelckers
8b79eedfea - moved CreateTexBuffer out of the GL code.
This is merely a buffer creation function with no dependencies on the renderer.
2018-04-01 14:38:48 +02:00
Christoph Oelckers
755cbd341b - fixed: A sprite having a picnum was not animating its image in the hardware renderer. 2018-03-25 22:01:18 +02:00
Magnus Norddahl
48e534bf19 - Add per-pixel model light to the OpenGL 3.3 render path 2018-03-01 01:27:12 +01:00
Magnus Norddahl
6652df40c1 Merge remote-tracking branch 'gzdoom/master' into materials 2018-02-28 22:12:12 +01:00
Rachael Alexanderson
07f168a58b - additional check for tween-tic particle rendering, prevents jitter with timefreeze powerup 2018-02-24 16:04:20 -05:00
Magnus Norddahl
4e7ca68bd6 Merge remote-tracking branch 'gzdoom/master' into materials 2018-02-20 00:22:06 +01:00
Christoph Oelckers
ef55386d9f - let the texture manager handle the special OpenGL textures so that they get deleted and recreated when needed. 2018-02-15 17:56:04 +01:00
Magnus Norddahl
94fbcacf22 Merge branch 'gzdoom' into materials 2018-02-10 00:08:17 +01:00
Christoph Oelckers
64921ea968 - use a more consistent setting for rendering fuzzy sprites with enhanced nightvision on. 2018-01-28 20:46:16 +01:00
Magnus Norddahl
0855418475 Merge branch 'gzdoom' into materials
# Conflicts:
#	src/gl/shaders/gl_shader.cpp
#	src/gl/shaders/gl_shader.h
2018-01-25 19:21:19 +01:00
Magnus Norddahl
0f69778e23 - Add new material shader entries for specular and PBR light modes 2018-01-21 01:53:44 +01:00
Magnus Norddahl
a23e5f49f6 - Add "fuzz software" to GL that renders fuzz like the scaled fuzz mode in the software renderer 2018-01-07 02:29:55 +01:00
Rachael Alexanderson
a441cea350 - interpolate particles 2017-12-28 11:36:36 -05:00
alexey.lysiuk
0afc09678f Fixed bright sprites in sectors with Doom 64 lighting
https://forum.zdoom.org/viewtopic.php?t=58703
2017-12-16 17:37:03 +02:00
Magnus Norddahl
d4ebe51e83 - Place the HUD model correctly in the world so that shader light calculations work 2017-11-05 15:35:03 +01:00
Christoph Oelckers
e424ef63f2 - fixed: Sprites drawn in the opaque pass still need to set their texture mode so that they can be drawn with STYLE_Stencil. 2017-08-27 09:58:25 +02:00
Magnus Norddahl
c3562fead2 Merge branch 'dynlightmodels' 2017-08-15 00:27:26 +02:00
alexey.lysiuk
eb52088487 Fixed compilation warnings reported by Clang
src/gl/scene/gl_sprite.cpp:685:34: warning: '&&' within '||' [-Wlogical-op-parentheses]
src/polyrenderer/scene/poly_sprite.cpp:297:34: warning: '&&' within '||' [-Wlogical-op-parentheses]
src/swrenderer/scene/r_opaque_pass.cpp:975:35: warning: '&&' within '||' [-Wlogical-op-parentheses]
src/sound/mididevices/music_timiditypp_mididevice.cpp:548:30: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
2017-08-13 16:42:08 +03:00
Magnus Norddahl
aaa00cbcb9 - Include all lights touching a model actor's render radius 2017-08-01 00:43:58 +02:00
Rachael Alexanderson
b6c15b997a - added 'r_debug_disable_vis_filter' cvar for debug purposes, to show all objects regardless of their actor filter fields. 2017-07-29 17:03:43 -04:00
Rachael Alexanderson
91ff447a90 - fixed compile from last commit
- refactored the zscript hookup a bit, made it actually work
2017-07-29 17:03:43 -04:00
Rachael Alexanderson
712d21e26a - implement per-renderer sprite hiding based on the actor's render feature flags
- hook the thing up to zscript (does not currently compile)
2017-07-29 17:03:43 -04:00
Magnus Norddahl
0c0f0789c2 - Improved dynamic lights on models 2017-07-25 23:00:09 +02:00
Christoph Oelckers
f909b82074 - fixed: Blood translations did not properly treat color 0 as transparent. 2017-06-20 09:10:19 +02:00
Rachael Alexanderson
c18134dbd3 - r_vanillatrans: Cache the cache! Transform the function into a global variable and recheck at the start of D_Display 2017-06-04 12:30:35 +02:00
Rachael Alexanderson
68b6f922f7 - Added auto-detection scheme for r_vanillatrans
It now works the following way:
(0) - Force off (ZDoom defaults)
(1) - Force on (Doom defaults)
(2) - Auto off (Prefer ZDoom defaults - if DEHACKED is detected with no ZSCRIPT it will turn on) (default)
(3) - Auto on (Prefer Doom defaults - if DECORATE is detected with no ZSCRIPT it will turn off)
2017-06-04 12:30:35 +02:00
Rachael Alexanderson
2997f31f9f - removed ZDOOMADD and updated actors in question with ZDOOMTRANS 2017-06-04 12:30:35 +02:00
Rachael Alexanderson
89b372cb01 - Changed MF7_SPRITEFLIP, MF8_ZDOOMTRANS to RenderFlags
- Added RF_ZDOOMADD
- renamed r_canontrans to r_vanillatrans
- this developer's insanity level has increased by 231%.
2017-06-04 12:30:35 +02:00
Rachael Alexanderson
01f88cfb16 - Added 'canonical transparency' cvar r_canontrans - this simply turns off transparency for Doom objects that were marked as transparent sometime in ZDoom's development cycle 2017-06-04 12:30:35 +02:00
Christoph Oelckers
fc0855fac7 - fixed size of particles in the hardware renderer.
From the look of it the scale was changed in the software renderer several years back but the hardware renderer never got adjusted for it.
This also adds a bit of compensation to round particles so that they get rendered a bit larger than square ones.
2017-05-21 12:36:34 +02:00
Rachael Alexanderson
5a450b5eaa - fixed: +FLIPSPRITE works in mirrors in OpenGL now. 2017-05-03 15:56:33 -04:00
Rachael Alexanderson
00a4993654 - forgot to implement +SPRITEFLIP for OpenGL 2017-05-03 21:13:31 +02:00
Major Cooke
d3ef3b585b - fixed: Flat sprites did not rotate their sprite angles when given the FLATSPRITE flag. 2017-04-03 17:06:33 +02:00
Christoph Oelckers
b529b1e3a7 - removed several unneeded GL headers from the software renderer's sources.
- consolidated the code to calculate a sprite's display angle for all 3 renderers.

As it turned out, they all differed in their feature support because they had always been updated independently by different people.
2017-03-16 13:49:34 +01:00
Christoph Oelckers
3aa7687d91 - made 'nocoloredspritelighting' a global option and also implemented it in the software renderer. 2017-03-16 00:56:03 +01:00
Christoph Oelckers
9a24771a7d - refactored FDynamicColormap out of sector_t.
This has increasingly become an obstacle with the hardware renderer, so now the values are being stored as plain data in the sector, with the software renderer getting the actual color tables when needed. While this is a bit slower than storing the pregenerated colormap, in realistic situations the added time is mostly negligible in the microseconds range.
2017-03-15 22:04:59 +01:00