Commit Graph

66 Commits

Author SHA1 Message Date
Christoph Oelckers 9b9fd35107 - hooked up the colorization feature.
It can now be used from UDMF and ZScript.
To avoid clutter it doesn't allow setting the values individually but requires definition of a data record in TEXTURES.

colorization
{
    DesaturationFactor <float>
    Invert
    AddColor <color>
    ModulateColor <color>
    BlendColor <color>, <mode> [, <alpha>]
}

Mode for BlendColor can be Alpha (normal translucent blending), as well as 3 special values taken from Build engine games: Screen, Overlay and HardLight.
2019-12-29 11:30:37 +01:00
Christoph Oelckers bb8db9422f - scaled down the texture colorization feature for easier usability.
It makes little sense exposing every minute detail of this through UDMF.
Setting it up that way is far too complicated. Using virtual textures that map to a real texture plus a colorization record should be far easier to use by mappers.
This also doesn't piggyback on the Doom64 color feature anymore and is completely separate, despite some redundancies.
This is still missing the texture definition part, though.
2019-12-20 22:25:10 +01:00
Christoph Oelckers 3a249cb06f - added high level interface to the new properties, i.e. UDMF and ZScript. 2019-12-20 18:02:42 +01:00
Christoph Oelckers 393f708248 - some clarification on plane equations in the UDMF spec. 2019-06-13 10:36:22 +02:00
Christoph Oelckers 9dca095d08 - updated UFMF-spec for UTF-8. 2019-04-26 10:24:45 +02:00
Kevin Caccamo e04fc026ff Expand UDMF and ZScript API for side's own additive colors
Add 'useowncoloradd_{top,mid,bottom}' sidedef properties to the UDMF 
spec
Only use side's additive colors if 'useowncoloradd_(top|mid|bottom)' is 
set.
Rename UseOwnColors flag to UseOwnSpecialColors
Add UseOwnAdditiveColor flag to side_t::part
Add EnableAdditiveColor to side_t
Add Side.EnableAdditiveColor to ZScript API
2018-12-26 16:58:27 +01:00
Kevin Caccamo 60696c91a2 Change some of the names of the additive color properties 2018-12-26 16:58:27 +01:00
Kevin Caccamo 141a60b93d Update additive colour info in GZDoom UDMF specs 2018-12-26 16:58:27 +01:00
Kevin Caccamo c165d0dc03 Add info about additive material colors to udmf_zdoom.txt 2018-12-26 16:58:27 +01:00
Kevin Caccamo 9520a3c640 Fix swapped horizontal/vertical scale
The UDMF specs for things had the descriptions for horizontal and vertical scale swapped.
2018-11-12 23:09:59 +01:00
Christoph Oelckers f2dcff4386 - more options for Doom 64 style gradients on walls:
* Colors can npw be defined per sidedef, not only per sector.
* Gradients can be selectively disabled or vertically flipped per wall tier.
* Gradients can be clamped to their respective tier, i.e top and bottom of the tier, not the front sector defines where it starts.

The per-wall colors are implemented for hardware and softpoly renderer only, but not for the classic software renderer, because its code is far too scattered to do this efficiently.
2018-11-11 16:04:36 +01:00
ZZYZX b911bbc424 Single commit - destructible geometry feature 2018-10-31 17:22:09 +01:00
alexey.lysiuk ad31da20e5 - added new linedef properties to UDMF spec
https://forum.zdoom.org/viewtopic.php?t=59808
2018-05-20 14:48:44 +03:00
alexey.lysiuk 526711f5d8 - replaced tabs with spaces in UDMF spec 2018-05-20 13:08:29 +03:00
Christoph Oelckers 364ce773e3 - Update to UDMF spec. 2018-02-04 08:49:41 +01:00
Gaerzi bbea0ee4a1 Fix spelling mistake in documentation
Unfortunately I can't change the spelling mistake in the specs, so the property name will still evoke a 3D midtex that doesn't betray any emotion.
2017-05-14 18:12:21 +02:00
Christoph Oelckers 76d3ae5ba2 made the sector's color_* properties work in the software renderer.
With no 3D floors this appears to be ok, but there are so many places where colormaps are being set in the software renderer that I cannot guarantee that I got all of them correct. This will need some testing.
2017-03-15 23:24:53 +01:00
Christoph Oelckers 4a87a598fb - do floatification of the UDMF Health property as it should have been. 2017-02-28 00:59:09 +01:00
Christoph Oelckers 3700dea336 Revert "- the UDMF health key for actors was not correctly implemented. This addresses the problem by adding a second one and documenting 'Health' as implemented."
This reverts commit e4e023e59a.

(This was nonsense.)
2017-02-27 22:05:20 +01:00
Christoph Oelckers e4e023e59a - the UDMF health key for actors was not correctly implemented. This addresses the problem by adding a second one and documenting 'Health' as implemented.
- fixed: Several ZDoom-exclusive actor keys did not check the current namespace.
2017-02-26 23:21:56 +01:00
Christoph Oelckers 8cac2d8c84 - added a NOATTACK sector flag which prevents monsters from going to their attack states if present. 2017-02-26 20:27:02 +01:00
Christoph Oelckers 95afc97d48 - ok, that color_absolute option was pretty much redundant, considering that it is already possible to explicitly set a fog density per sector - it was only necessary to give that priority over standard depth fade calculations for fog-less sectors. 2017-01-28 21:42:58 +01:00
Christoph Oelckers 476aceb5d7 - added new properties to UDMF spec.
- implemented color_absolute flag,
2017-01-28 21:22:48 +01:00
Christoph Oelckers 125a30307a Merge branch 'master' of https://github.com/rheit/zdoom 2016-12-29 14:34:13 +01:00
Christoph Oelckers 4f21ff275c - removed duplicate portal_ceil_alpha and portal_floor_alpha UDMF properties.
These already existed as 'alphafloor' and 'alphaceiling' and got accidentally duplicated by Eternity.
2016-12-29 11:44:07 +01:00
Christoph Oelckers d748b6ad70 - added explicit fog density as a sector property, accessible through UDMF and ACS.
- allow changing sector glow information through ACS.
2016-12-29 01:12:17 +01:00
Christoph Oelckers 02c3b3613f - added UDMF properties to set glows per sector.
- for explicitly defined glows, use the one for the current animation frame, if an animated texture is active. For default glows it will still use the base texture's to avoid inconsistencies.
2016-12-28 21:35:42 +01:00
Christoph Oelckers 6322c81719 - added UDMF_fields for sector plane reflectiveness. 2016-12-28 01:09:42 +01:00
Christoph Oelckers 7624973ef3 - updated list of render styles in UDMF spec. 2016-12-05 11:50:41 +01:00
Christoph Oelckers ff0b879323 - added UDMF portal flags. Names are identical with Eternity for compatibility reasons. 2016-10-02 00:31:25 +02:00
Christoph Oelckers 71c7f2b42c - added 'floorterrain' and 'ceilingterrain' sector properties for UDMF. These will take precedence over texture based terrain if used.
'ceilingterrain' is needed because the top of 3D-floors refers to the model sector's ceiling, so in order to give a 3D floor a terrain it must be assignable to the sector's ceiling.
Note that although it is basically the same property, its actual function bears no relevance to its use in Eternity.
2016-01-09 12:10:36 +01:00
Christoph Oelckers 5474e01de8 - removed FraggleScript's 'sectortype' function. This was GZDoom exclusive and never documented so it got no public exposure. Since this is incompatible with the damage related changes, it has no more use.
- major overhaul of the static sector damage system:

* consolidated special based damage, Sector_SetDamage and UDMF properties into one set of damage properties. The parallel handling that could lead to double damage infliction was removed. This also means that damage through sector specials can be retroactively changed through Sector_SetDamage.
* all special cases were turned into flags. The new system can switch between Strife's delayed damage and regular damage, and it can also set whether terrain splashes are used or not. It also has access to the special properties of the end-level type (i.e. switching off god mode and ending the level.)
* the damage related flags are accessible through Sector_ChangeFlags, not the damage functions themselves.
2016-01-06 12:12:47 +01:00
Christoph Oelckers 2b519a92b1 - allow setting the sector's damage properties through UDMF. 2016-01-05 16:19:55 +01:00
Christoph Oelckers 0cb64dd464 - made character encoding for UFMF/ZDoom namespaces explicit. 2015-12-06 20:55:05 +01:00
Christoph Oelckers 9bfd676783 - allow setting the FloatbobPhase through UDMF. 2015-11-29 11:28:26 +01:00
Christoph Oelckers db61c1cb57 - allow multiple line IDs as well using the same method as for sector tags. 2015-04-19 17:51:34 +02:00
Teemu Piippo 770547e661 - added udmf key midtex3dimpassible which causes the midtex to behave like a finite-height impassible line; practically this means the mid texture lets projectiles pass through it. 2014-09-28 17:17:19 +03:00
Christoph Oelckers 47a9dab56d - allow setting sector planes' plane equations directly from UDMF. 2014-05-14 12:16:33 +02:00
Gaerzi 101107b1e5 Updated documentation 2014-04-12 10:55:10 +02:00
Christoph Oelckers 6a07118ea4 - added ML_BLOCKHITSCAN line flag. 2013-08-09 20:35:10 +02:00
Christoph Oelckers 0a258f95ea - added gravity property to UDMF things. Positive values are multiplied with the class's gravity property, negative values are used as their absolute. 2013-08-09 16:25:16 +02:00
Christoph Oelckers e6c880c93a - fixed: The sector's 'hidden' UDMF property did not properly clear the corresponding flag if the value was 'false'.
- added UDMF 'waterzone' property for sectors.
2013-08-09 11:47:25 +02:00
Randy Heit 0f0dcc08a2 - Added a new UDMF sidedef flag: lightfog.
SVN r3933 (trunk)
2012-11-03 02:02:42 +00:00
Randy Heit 3fae0e3906 - Enable arg0str for UDMF things and named scripts.
SVN r3390 (trunk)
2012-02-26 02:32:45 +00:00
Randy Heit cf0f0b964a SVN r3387 (trunk) 2012-02-26 00:13:59 +00:00
Randy Heit d9b8b344ff - Added support for using named scripts with UDMF maps. On lines with ACS specials
(i.e. ACS_Execute, etc.), set the arg0str property to the name of the script to execute. The
  standard numeric arg0 property will be ignored in this case.

SVN r3372 (trunk)
2012-02-18 02:39:01 +00:00
Christoph Oelckers 1806e47e43 - fixed: Sector_SetLink did incorrect checks for the returned control sector
- added Sector_SetTranslucent special so set translucency of portal planes at run time.
- added 'additive' information for portal planes. This is no-op at the moment because the flat drawers can't handle additive translucency yet though.


SVN r3149 (trunk)
2011-02-12 09:53:40 +00:00
Christoph Oelckers a2acc382df - added a 'block sight' line flag.
- updated UDMF spec for player class and skill amount because the old menu limits no longer apply.
- fixed: FloorAndCeiling_LowerRaise needs to consider 4 args in maps to account for the Boom compatibility hack parameter.


SVN r3121 (trunk)
2011-01-23 10:52:18 +00:00
Christoph Oelckers 79c5080dda - added DavidPH's submission for specifying vertex heights directly in UDMF.
SVN r3037 (trunk)
2010-12-14 00:56:44 +00:00
Christoph Oelckers 9278375064 - added 'flooralpha' and 'ceilingalpha' sector properties. They only have meaning if a sector stack portal is defined in this sector. If set to anything less than 1.0 these will override the alpha set by a portal. This is mostly for Sector_SetPortal to avoid defining multiple portals that only differ by their plane translucency.
SVN r2995 (trunk)
2010-11-07 22:12:38 +00:00