Christoph Oelckers
4937848123
- refactoring of fixed colormap stuff to have it better organized and to reduce the number of uniforms in the main shader.
...
This removes 3 uniforms, consisting of 9 floats. Those were merged into other values that never get used at the same time.
It also moves the costly setup of the fixed colormap out of the render state into the 2D processing code.
Since 3D forces use of render buffers now, it is no longer necessary to draw the entire scene with the colormap active, meaning it can be handled more efficiently.
2018-06-16 22:40:44 +02:00
Christoph Oelckers
612fb40f3a
- don't use uniforms related to fixed colormaps for other things.
...
The fixed colormap is a per-scene global setting that normally does not need to change ever during rendering of a scene so it's easily shoved aside into a static uniform buffer.
Having to change this buffer for inconsequential stuff should be avoided, especially when there's other uniforms that are just as good to hold these values.
2018-06-14 21:28:03 +02:00
Christoph Oelckers
ce50b0e46b
- read sampler bindings from the shader instead of tagging along a large amount of support data.
...
Works for most shaders, except SSAO.
2018-06-13 17:44:49 +02:00
Christoph Oelckers
d2dea17e81
- specify vertex attributes in the shader source for Vulkan compatibility.
2018-06-13 08:40:04 +02:00
Christoph Oelckers
ad7aaa8f2a
- specify fragment output locations in the shader source.
...
OpenGL has been supporting this since version 3.3 and Vulkan requires it so it's the way to go.
2018-06-12 23:52:33 +02:00
Magnus Norddahl
832e7818c8
- rewrote the blur shader so that it works the same way as the rest
2018-06-12 22:14:44 +02:00
Magnus Norddahl
49073489e5
- uniform buffers for the fxaa, blur and bloom shaders
2018-06-11 22:06:46 +02:00
Magnus Norddahl
48f753061a
- uniform buffers for the present and shadowmap shaders
2018-06-11 21:42:09 +02:00
Magnus Norddahl
6fcc79d72a
- uniform buffers for the tonemap shaders
2018-06-11 21:18:20 +02:00
Magnus Norddahl
2bde741a7e
- Uniform buffer for colormap shader
2018-06-11 21:03:55 +02:00
Magnus Norddahl
d22fb24e28
- Uniform buffers for lens shader
2018-06-11 20:58:20 +02:00
Magnus Norddahl
763c5c9769
- change ssao pass to use an uniform block
2018-06-11 20:48:43 +02:00
Magnus Norddahl
85f5f897d7
- enable model rendering in the software renderer
2018-06-09 12:29:33 +02:00
Rachael Alexanderson
512082b222
- fixed: 'empty function OnGiveSecret' - this was my fault, giving bad advice to Marisa in her PR. I fixed it.
2018-06-05 10:20:02 -04:00
Marisa Kirisame
477cf23fd2
Adds "OnGiveSecret" virtual function on Actor for customizing behavior of secret finding.
2018-06-05 10:06:53 -04:00
Christoph Oelckers
a851a5d151
- fixed: For melee attacks with a short attack range P_AimLineAttack must check for hits from above and below.
...
This is necessary to be in line with P_LineAttack which does check for those.
2018-06-03 17:49:00 +02:00
Christoph Oelckers
cce6c9a085
- fixed precision issue with dot product.
...
Apparently the shader math is not precise enough to ensure that two supposedly orthogonal vectors are truly orthogonal, resulting in a non-zero dot product
2018-05-24 20:31:44 +02:00
Christoph Oelckers
1266339c0f
- fixed shader compilation.
2018-05-19 21:17:58 +02:00
Christoph Oelckers
3dc6ddbcc3
- check light direction in the shader.
...
There are situations where lights on the wrong side of a linedef may be passed and those need to be skipped in the shader code.
2018-05-19 19:20:45 +02:00
Christoph Oelckers
b197bfc964
- avoid checking for vr_enable_quadbuffered directly.
...
This option only exists on Windows, so on the other platforms it should not be in the menu and not affect the setup of the VR mode.
2018-05-18 00:12:45 +02:00
Jonathan Russell
e9050a38b3
- added LevelLocals vec2/3Offset(Z) functions for portal-aware offsetting without needing actors
2018-05-16 20:47:43 +02:00
Christoph Oelckers
72c7a05ba8
- added compatibility fix for bad sector reference in Plutonia MAP11.
2018-05-05 19:58:34 +02:00
alexey.lysiuk
6d308ca67e
Fixed walkthrough blocker in Sin City 2 via compatibility entry
...
It was impossible to complete Sin City 2 The Satan Complex without cheating since ZDoom 2.6.0
Change in applying of DeHackEd patches from 77a4b9a29b
broke triggering of important linedef that pushes friendly marine to exit switch
https://www.doomworld.com/idgames/levels/doom2/Ports/s-u/satanx
2018-04-28 17:45:15 +02:00
Christoph Oelckers
59477362d9
Merge branch 'wallwork'
2018-04-27 20:37:54 +02:00
alexey.lysiuk
c8eefd84fa
Enabled playing of *gasp sound by default
...
https://forum.zdoom.org/viewtopic.php?t=60361
2018-04-27 11:04:21 +03:00
Christoph Oelckers
286846a8ec
2D must consider brightmaps.
2018-04-27 08:59:59 +02:00
Christoph Oelckers
557c8b480b
- missed the menu part.
2018-04-25 20:34:28 +02:00
ZZYZX
da089b09b1
Added missing commented enum entry for ETraceFlags on ZScript side
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
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
Kevin Caccamo
1c58093fc8
Add info about UseSpecial flag feature conflict above Actor.Used
2018-04-24 05:56:07 -04:00
alexey.lysiuk
ee9fa7c33e
Made 100% kills possible on Altar of Evil, easy skill
...
https://www.doomworld.com/idgames/levels/doom2/Ports/a-c/altar666
2018-04-22 17:49:13 +03:00
alexey.lysiuk
df634539a0
Made 100% kills possible and unstuck imp on Valhalla map
...
https://www.doomworld.com/idgames/levels/doom2/Ports/m-o/ma_val
2018-04-16 14:34:07 +03:00
alexey.lysiuk
87d164ee59
Added ability to set thing position in compatibility layer
2018-04-16 14:30:21 +03:00
Christoph Oelckers
8a2e52d651
Removed gl_lights_checkside which essentially was just a pointless piece of cruft inherited from ZDoomGL.
2018-04-16 08:45:50 +02:00
alexey.lysiuk
bb037635a8
Fixed missing textures on Valhalla with hardware renderer
...
It works fine with software renderer regardless of this compatibility entry because of texture bleeding
https://www.doomworld.com/idgames/levels/doom2/Ports/m-o/ma_val
-iwad doom2 -file ma_val.pk3 -nomonsters +map map01 "+warp -450 -2300"
2018-04-15 16:41:24 +03:00
Christoph Oelckers
8b4c74fad8
- the global portal data table also needs to be protected.
2018-04-15 12:16:46 +02:00
Christoph Oelckers
cf8447d19c
-protected critical portal data from getting written to by user code.
...
This data is game critical and may only be altered by code that knows what is allowed and what not. It must never be altered by any user code ever.
However, since the SkyViewpoint actors need to set up some relations between themselves and the default sky portals the previously purely internal 'internal' flag has been exported as a new keyword.
2018-04-15 12:13:02 +02:00
alexey.lysiuk
ba4cc1a6ca
Added activation type to WorldLine(Pre)Activated events
...
https://forum.zdoom.org/viewtopic.php?t=60232
2018-04-14 11:52:09 +03:00
Christoph Oelckers
13567f2505
- added a compatibility handler for Kama Sutra MAP01's ending area.
2018-04-13 20:27:21 +02:00
Christoph Oelckers
ac98e5a4f8
- fixed last change of compatibility branch.
2018-04-13 19:28:35 +02:00
Christoph Oelckers
71a6cc4625
Merge branch '2D_Refactor'
2018-04-13 17:52:58 +02:00
Christoph Oelckers
387827555f
- added compatibility handler for Alien Vendetta MAP01 to properly display the deep water hack and avoid problems with a node rebuild.
2018-04-11 23:08:59 +02:00
Christoph Oelckers
3988e27059
- scriptified the last remaining definition (BTSX MAP12 beta)
...
- Changes to map geometry must force a node rebuild (SetVertex, SetLineSectorRef.)
- fixed incorrect use of scaling constant in SetWallYScale.
2018-04-11 19:10:15 +02:00
alexey.lysiuk
6631f208b1
Scriptified remaining compatibility entries
2018-04-11 17:01:57 +03:00
alexey.lysiuk
6480946d40
Scriptified more compatibility entries
2018-04-11 15:57:27 +03:00
alexey.lysiuk
5f5adbe161
Scriptified compatibility of Strife level along with needed functions
2018-04-11 13:02:26 +03:00
alexey.lysiuk
950443683b
Scriptified compatibility of more Heretic levels
2018-04-11 12:35:45 +03:00
alexey.lysiuk
69222c3c36
Fixed missing texture with hardware renderer on Jenesis MAP16
...
https://forum.drdteam.org/viewtopic.php?t=7337
2018-04-11 11:54:27 +03:00
alexey.lysiuk
05dcd30838
Made 100% secrets possible on The Realm of Parthoris E1M5
...
https://forum.zdoom.org/viewtopic.php?t=60181#p1049393
2018-04-11 11:52:07 +03:00
Christoph Oelckers
0ecbf07769
-ported a large part of compatibility.txt
2018-04-10 23:19:22 +02:00
Christoph Oelckers
65a219eecc
- sorted compatibility.txt so that levels which only have flags set are at the top of the file.
2018-04-10 20:02:41 +02:00
Christoph Oelckers
9daad477c3
- some improvements to compatibility scripts:
...
* use names, not strings, to allow use of switch/case.
* avoid creating the checksum a second time per level.
* do an early-out check for maps that do not have scripted compatibility.
2018-04-09 22:09:28 +02:00
alexey.lysiuk
640948703f
Level compatibility via ZScript -- PoC
2018-04-09 17:54:12 +03:00
drfrag666
80f57dfaf0
- Increased size of the savegame comment area.
2018-04-08 21:56:35 +02:00
Marisa Kirisame
08f3afab0b
Separated P_ActivateLine ZScript export into two functions, one with and one without a vector parameter.
2018-04-08 21:53:20 +02:00
Marisa Kirisame
5d0ff4c8ba
Exports P_ActivateLine to ZScript (along with constants for activation type)
2018-04-08 21:53:20 +02:00
Christoph Oelckers
94e8d59dde
- implemented shader support for rendering the SW renderer canvas with legacy OpenGL.
2018-04-08 13:05:20 +02:00
Christoph Oelckers
5eb898107f
- now that all 2D is guaranteed to be drawn in true color, the Heretic E2 end pic can be handled with less hacks.
...
This removes the entire palette switch and all the special checks to ensure that no menu can be drawn over this image.
Instead it gives this texture its special palette in the texture manager so that the proper image is created right away.
I decided against exposing this as an editing feature because it is far too specific to this particular image and the raw page format it uses.
A quick check of /idgames shows no project ever replacing it - especially no ZDoom-based project - so no extended handling is needed to make this work with other texture formats.
2018-04-08 10:10:26 +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
adbeb3f251
Merge remote-tracking branch 'remotes/origin/master' into 2D_Refactor
2018-04-07 18:50:24 +02:00
Christoph Oelckers
221beec979
- added palette shader and fixed a few things.
2018-04-07 12:17:23 +02:00
Christoph Oelckers
b34d7f9e08
- added a software scene drawer to the GL renderer.
...
It still looks like shit and only works on the modern render path but at least the basics are working.
2018-04-07 10:20:59 +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
alexey.lysiuk
d3cacbf246
Fixed potential crash on usage of Mystic Ambit Incant
...
https://forum.zdoom.org/viewtopic.php?t=60080
2018-04-03 12:41:51 +03:00
Christoph Oelckers
3671fd7f97
Merge branch 'master' into 2D_Refactor
2018-04-01 08:44:39 +02:00
Christoph Oelckers
23146c9b18
- made all elements of DehInfo and State read-only.
...
This data must be immutable, if any mod plays loose here, very bad things can happen, so this hole got plugged, even at the expense risking to break some badly behaving mods.
2018-04-01 08:41:06 +02:00
Simon
4afc538f88
Localize the word “for” in Strife’s trading dialogs
...
This deals with what seems to be the only hardcoded piece of text in Strife. Also added a translation to the French file and removed a few superfluous line breaks in the English one.
2018-03-31 18:57:00 +02:00
ZippeyKeys12
0441994106
Default newradius in A_SetSize
2018-03-30 18:06:46 -05: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
Christoph Oelckers
832df6d43a
- implemented desaturation for the legacy GL renderer's 2D.
...
A lot of work that's only needed to be able to use the hardware renderer's 2D code with the software renderer.
2018-03-30 18:14:42 +02:00
alexey.lysiuk
84e9017a5f
Fixed infinite loop with zero height fast projectile
...
https://forum.zdoom.org/viewtopic.php?t=60019
2018-03-30 12:49:35 +03:00
alexey.lysiuk
a6738fd139
Fixed infinite loop with None class in random spawner
...
actor NoneSpawner : RandomSpawner
{
DropItem "None"
}
https://forum.zdoom.org/viewtopic.php?t=60027
2018-03-30 10:44:42 +03:00
Christoph Oelckers
811d96e07e
D3D 2D code refactored but not tested yet.
2018-03-29 23:21:25 +02:00
Christoph Oelckers
a40e085a46
- 2D drawer implementation complete for hardware renderer.
...
This also replaces DTA_ColormapStyle with proper implementations of its components. As implemented it was a very awkward mixture of various effects that already existed in a separate form. As a result of its implementation it required additional but completely redundant shader support which could be removed now. As a side effect of this change a new DTA_Desaturate option was added.
2018-03-29 16:21:21 +02:00
Christoph Oelckers
70b6754299
- implemented the 2D drawer for the hardware renderer. Not tested yet.
2018-03-28 21:38:00 +02:00
Christoph Oelckers
25999c1c6a
- looks like the 2D drawer sources did not get committed...
...
- This also adds the missing draw modes to the GLSL shader.
2018-03-28 19:07:43 +02:00
Christoph Oelckers
16480a3f4b
- it compiles again.
...
This won't work, though, because no backend for the new 2D code exists yet.
2018-03-28 16:40:09 +02:00
Christoph Oelckers
e0f1abdf81
- removed SDLFB and cleaned things up a bit.
2018-03-27 11:59:43 +02:00
Christoph Oelckers
d9f6546c16
- removed Shader Model 1.4 support.
...
The only hardware ever to support this is ATI's R200 which has been deprecated by ATI before Vista got released, and is no longer a relevant target.
2018-03-26 22:03:33 +02:00
Magnus Norddahl
4ffa344f7d
- Fix black pixels when subtractive lights are in range for PBR materials
2018-03-26 00:01:52 +02:00
Christoph Oelckers
98c7118a3a
- fixed: A sidedef's sector and linedef references were writable.
...
This cannot be allowed under any circumstances because this is what links the map geometry together.
Yes, it will break any mod that tries to play with these variables, but any such mod has to be considered broken by design and must be stopped.
2018-03-25 22:39:10 +02:00
Vitaly Novichkov
27b9b67d68
ADL&OPN: More setup: Chips count and Volume model!
...
Notes:
* ADL: The DMX volume model was set as default to unify volumes on all bank. Otherwise, if you will use 'Generic' or 'Win9x', the sound will became too loud than wanted. Each bank has own default volume model which is used when 'Auto' is set.
* ADL: 6 chips is optimal to work with default banks
* OPN: 8 chips are set to provide 48 polyphony channels. (each OPN2 chip has 6 channels only)
* Text files: junk spaces from end of lines are was auto-removed.
2018-03-25 08:14:35 +02:00
Christoph Oelckers
4e012e3765
- fill in the ADL bank menu from the internal table. Some of the names had to be shortened to prevent it from getting too confusing.
2018-03-24 21:19:10 +01:00
Christoph Oelckers
4e8588815b
- split up the advanced sound menu because it became a bit too confusing with all the different MIDI players' options lumped together.
...
There is now a separate MIDI player options menu which is a list of submenus, one for each player (except for OPNMIDI which does not have any options yet.
2018-03-24 20:29:48 +01:00
Christoph Oelckers
49ab99a383
Merge branch 'master' of https://github.com/coelckers/gzdoom
2018-03-24 19:40:52 +01:00
Christoph Oelckers
4978d979e8
- fixed Windows version of snd_mididevice.
...
- removed mus2mis and xmi2mid converters from OPNMidi, because they are not needed.
- moved the data file for OPNMidi into gzdoom.pk3.
2018-03-24 18:29:12 +01:00
Marisa Kirisame
0656916bf2
Add WorldLinePreActivated to override line activation, as a counterpart to WorldLineActivated.
2018-03-24 16:30:49 +01:00
Marisa Kirisame
3072c9bf7c
Add PostUiTick(). Happens after all other tickers. Useful for handling changes in the play side within the same tic.
2018-03-24 10:24:13 +01:00
Marisa Kirisame
69c6e95b08
Add worldlineactivated event, triggered after successful line activation.
2018-03-24 10:23:31 +01:00
Marisa Kirisame
634a10db52
Adds "DI_MIRROR" flag to statusbar image drawing. Useful for rearview mirror camera textures, for example.
2018-03-24 00:29:50 +01:00
Christoph Oelckers
d586d774cf
- adjusted GL renderer to the new rules for alpha textures. This means that the translation fallback is only needed for the legacy renderer now. Modern GL can use the regular texture and will apply a grayscale mapping instead of merely using the red channel.
2018-03-22 20:42:17 +01:00
alexey.lysiuk
75782e6b34
Exported Inventory.AltHUDIcon field to ZScript
...
https://forum.zdoom.org/viewtopic.php?t=59842
2018-03-18 11:02:21 +02:00
alexey.lysiuk
b4d3715345
Fixed status bar chain wiggling when paused
...
Made ZScript implementation of chain wiggling in Heretic status bar as close as possible to C++ SBARINFO one
https://forum.zdoom.org/viewtopic.php?t=59840
2018-03-17 12:29:55 +02:00
Magnus Norddahl
9b7bef59d2
- fixed Intel rendering glitch with uDynLightColor
2018-03-12 21:44:55 +01:00
Rachael Alexanderson
9600cfde3c
- put unexplored secret color picker in the menu
2018-03-10 10:55:24 -05:00
alexey.lysiuk
e51a1867df
Added default values for BaseStatusBar.AttachMessage() arguments
2018-03-07 16:00:08 +02:00
alexey.lysiuk
4f1f989049
Exposed HUDMSGLayer_... constants to ZScript
2018-03-07 15:58:43 +02:00
Marisa Kirisame
c9613b2fd1
Make sidedef vertex and secplane height functions callable from ui
2018-03-03 17:10:32 +01:00