Commit graph

130 commits

Author SHA1 Message Date
Magnus Norddahl
9d5f8ec7c1 Rewrite VisualBlockMap to use a quad tree 2019-12-26 00:39:15 +01:00
ZZYZX
d995f983fc Rebranding 2019-12-24 09:14:28 +02:00
biwa
2516b97cee - Added option to enable additive paint selecting without holding shift independently from regular additive selecting 2019-06-20 15:38:41 +02:00
ZZYZX
a2a6004a61 Fixed (?): The new .NET 4.6.x JIT method inlining was fucking with GetCallingAssembly-based plugin detection 2018-04-15 01:59:58 +03:00
Mistranger
7168ad2095 Add "Mouse selection threshold" option (#141 by Mistranger)
* Mouse selection threshold

* Cleanup

* Fix selection bug
2017-08-24 16:24:03 +03:00
ZZYZX
b80c8febff Internal: Oops: removed debug leftovers 2017-04-03 20:42:34 +03:00
ZZYZX
a2c9de393e Fixed: changing flat names around is wrong... (reported by Lud) 2017-04-03 20:40:51 +03:00
davidxn
3013723e91 Improve MakeDoor form - options for line special and tag (PR #91 by davidxn) 2017-04-03 04:20:40 -04:00
Xabis
a886a53e75 * A direct tag-to-tag relationship can now be established between two things, which allows event lines to be properly setup between them. This is intended for interpolation and patrol specials which are linked via a shared tag, instead of an argument. A POSITIVE value represents the parent thing, where a NEGATIVE value represents the child thing.
* Added interpolation and patrol point specials to the persistent event line processing
2017-02-14 12:33:50 -05:00
ZZYZX
db1db76b4b Fixed: Doom64 lighting was not displayed in 2D modes 2017-02-13 02:06:29 +02:00
ZZYZX
f4947a20be Added: more magic to the autoalign/select neighbours logic; These functions should not anymore wrap around to the opposite side of two-sided linedefs, allowing you to select back and front sides separately using shift+click, and reducing infinite broken autoalign loops. 2017-01-26 15:33:07 +02:00
ZZYZX
ebd7fb1a57 Upgrade to VS2015 (14.0) 2017-01-15 00:35:40 +02:00
MaxED
21cab1d134 Added, Game configurations, ZDoom: Ambient sound things (14001 - 14064) were missing arguments definitions.
Fixed, Make Sectors mode: in some cases sector shape detection logic returned incorrect shape, or no shape at all.
2016-11-21 13:03:19 +00:00
MaxED
8349392829 Fixed: copied sidedef settings were not applied when using "Paste properties" and "Paste properties special" actions in Doom/Hexen map formats. 2016-11-11 12:54:38 +00:00
MaxED
437fe9ce86 Updated, GLDEFS parser: updated glowing texture parsing logic to better match GZDoom logic.
Removed, GLDEFS parser: removed GLOOME glow definitions support code.
2016-11-09 10:07:21 +00:00
MaxED
e776952433 Updated, Curve Linedefs mode: distance/angle are now changed using bigger increments when being modified by mouse-dragging. You can hold Shift to enable increments by 1 unit.
Updated, Curve Linedefs mode: changing angle by mouse-dragging when "Fixed circular curve" option is enabled is now performed in a more predictable way.
Updated, Curve Linedefs mode: generated geometry is now merged with existing geometry.
Added, Curve Linedefs mode: a hint label is now displayed when modifying settings using mouse-dragging.
Added, Curve Linedefs mode: number of curve vertices can now be changed using LMB+RMB-drag.
2016-11-01 20:44:40 +00:00
MaxED
3e132f1cf2 Changed, Curve Linedefs mode: re-designed the mode UI. Alternative control options are now available (check Help tab while the mode is active).
Changed, Curve Linedefs mode: changed curve generation logic. Setting Distance to 0 will now divide selected linedefs into equal parts.
Changed, Curve Linedefs mode: curve vertices are now drawn.
Updated ZDoom_DECORATE.cfg.
2016-10-26 22:33:36 +00:00
MaxED
70d35bf1d6 Added, Edit Sectors window: added UI for floor/ceiling portals.
Updated ZDoom_DECORATE.cfg.
Updated documentation ("Game Configuration - Sectors Settings" page).
2016-10-11 12:58:35 +00:00
MaxED
07db2506c5 Added, Things mode: minimum/maximum sound radii can now be displayed for ZDoom's Ambient Sound things.
Added, Things mode: added "Show Light Radii" and "Show Sound Radii" main toolbar and View menu buttons.
Fixed, Action arguments control: invisible splitter between args1-3 and args4-5 is no longer draggable.
Updated ZDoom ACC (SetTranslation).
Updated ZDoom_ACS.cfg (SetTranslation).
2016-10-03 11:42:12 +00:00
MaxED
af4f40389f Added, Automap mode: added "Show hidden lines" top menu button.
Added, Automap mode: added "Show secrets" top menu button.
Added, Automap mode: added "Color preset" top menu drop-down.
2016-06-18 00:10:35 +00:00
MaxED
8f446bbcd3 Fixed, "Select Similar" action: in some cases map elements flags were incorrectly compared resulting in map elements not being selected when they should have been. 2016-06-15 22:57:39 +00:00
MaxED
a852719062 Added, Visual mode: added "Toggle Alpha-based Texture Highlighting" action. When enabled, 3d floor textures and middle textures on double-sided lines will be highlighted only when the crosshair points at a non-transparent pixel.
Changed: multi-part sectors are now better preserved after drawing new lines.
Changed, TEXTURES parser: patch loading errors are now ignored for textures with "NullTexture" option.
Changed, Game configurations: changed default door action arguments to better match vanilla ones.
Fixed, Actions: in some cases keyboard shortcuts involving Ctrl/Alt/Shift modifier keys were displayed incorrectly.
Fixed(?): probably fixed inability to save map wad in Slade 3.
Updated ZDoom_ACS.cfg.
Updated ZDoom_DECORATE.cfg.
Updated ZDoom ACC.
2016-06-13 23:37:55 +00:00
MaxED
2458ea3d32 Changed, internal, UDMF: local texture offsets and scale are now copied when merging sidedefs.
Changed, internal: made TextLabel and IRenderer2D public properties compatible with DB2 implementation.
Fixed some more cases when sidedefs belonging to linedefs, which were moved on top of existing linedefs, were incorrectly reassigned when applying Edit Selection and Drag Geometry modes.
Fixed, Map Analysis mode: error checks must be updated after switching map format.
2016-05-19 21:44:39 +00:00
MaxED
ecb650259b Added "safeboundary" game configuration property. The value determines the maximum map bounding box size considered to be safe by "Check map size" error check.
Changed, Map Analysis mode: some checks are now available only under certain conditions (for example, "Check polyobjects" is now available only when the map is in Hexen or UDMF map format).
Updated documentation ("Game Configuration - Basic Settings" page).
2016-05-18 23:31:12 +00:00
MaxED
b1e5d8b5be Added, Sound Environments mode: sound environments of the same type are now colored using the same color.
Added, Sound Environments mode: current sound environment is now highlighted (can be toggled using "Toggle Highlight" action).
Added: Tag selectors now have up/down buttons.
Fixed, Sound Environments mode: sound environments were not updated after performing Undo/Redo actions.
Fixed, Sound Propagation mode: sound zones were not updated after performing Undo/Redo actions.
Internal: moved "Toggle Highlight" action to the core, also changed it's category to "View".
Internal: "Toggle Highlight" action state is now saved in the Program configuration.
Updated ZDoom_DECORATE.cfg (GetZAt).
Updated ZDoom_linedefs.cfg (Sector_SetPortal args).
2016-05-12 22:35:11 +00:00
MaxED
b67ecc63ce Changed, Visual mode: "Auto-align textures" and "Paste Textures Floodfill" actions now use visual mode geometry to determine whether a sidedef part should be processed. This fixes inability to apply said actions to sidedef parts only visible because of slopes.
Fixed, Visual mode: both "With same texture" and "With same height" Select modifiers are now checked when both of them are used at once (previously a sidedef part/floor/ceiling was selected when any of those matched).
2016-05-12 11:32:10 +00:00
MaxED
6b25086795 Internal: did some refactoring. 2016-04-27 09:13:07 +00:00
MaxED
13aabd4257 Added, Drag Vertices\Linedefs\Sectors\Edit Selection modes: sidedefs facing outside of current selection are now reattached/added/removed after moving the selection.
Currently this will work as intended only if the selection ends up either completely inside a single sector or completely outside of any sector. Also this logic won't be applied if the selection contains the lines with only start or end vertex selected.
Internal: some TextLabel refactoring.
2016-04-25 14:48:39 +00:00
MaxED
3eb05509af Added, Visual mode: "Increase/Decrease Scale", "Reset Texture Offsets" and "Reset Local Texture Offsets" actions now work when used on 3d floor sides.
Fixed: CVARINFO parser was unable to parse negative int/float values.
Fixed: in some cases TextLabel text size was checked before it was calculated. 
Internal, Visual mode: reduced the number of unnecessary geometry updates when changing map geometry.
Updated ZDoom_DECORATE.cfg (atan2 and VectorAngle).
2016-04-19 20:40:42 +00:00
MaxED
da3fde9a00 Fixed, Tag Statistics window: fixed a crash when applying changes after deleting a tag label.
Fixed, Script Editor: fixed infinite loop when trying to search for empty string.
Changed, Linedefs mode: selection labels are now positioned in a less line angle obscuring way.
Changed, Draw Lines mode: text label background alpha didn't match the alpha of the labels used in other classic modes.
Updated ZDoom_ACS.cfg (SetMusicVolume).
Updated ZDoom ACC (SetMusicVolume).
2016-04-17 22:52:03 +00:00
MaxED
580f7d4461 Classic modes: further text label rendering optimization.
MODELDEF parser: rewrote most of the parser logic. Now it picks actor model(s) based on Frame / FrameName properties.
2016-04-06 11:44:38 +00:00
MaxED
a9c64fe521 Changed, Texture Browser window: "All" textures group is now saved/reselected like the rest of the texture groups when closing/opening the window.
Changed, Classic modes: bigger Thing arrows are now rendered when thing sprite rendering is skipped.
Changed, Classic modes: when "Fixed Things Scale" option is enabled, thing size stays at 2x scale instead of 1x when extra bounding box is rendered.
Added Preferences -> Appearance -> "Things transparency (Things mode)" slider.
Renamed Preferences -> Appearance -> "Things transparency" to "Things transparency (other modes)".
Externalized thing bounding box and arrow texture, used to render things in Classic modes (Textures/ThingTexture2D.png).
Updated ZDoom_DECORATE.cfg (A_SetUserVarFloat, A_SetUserArrayFloat).
2016-04-01 10:49:19 +00:00
MaxED
f646dd7a57 Classic modes: rewritten and optimized some parts of text label rendering logic.
Internal, API: TextLabels can now display multi-line text, their font can be changed, they can have a background.
2016-03-30 23:25:03 +00:00
MaxED
0e78e6d39f Changed, Select Similar Sectors action: when "Effect" option is enabled, all sectors with at least one matching generalized/predefined effect will be selected.
Added, Tag Explorer plugin: a separate category for each generalized/predefined effect is now created when "Sort by action special" sort mode is used.
Added, Edit Effect window: normal and generalized effects can now be set at the same time.
Fixed, Edit Action window: in some cases Generalized actions were incorrectly processed.
Fixed, Edit Effect window: in some cases Generalized effects were incorrectly processed.
Fixed, Select Similar window: Tab control was incorrectly anchored.
Fixed, Nodes Viewer mode, cosmetic: segs angles were calculated incorrectly when showing nodes in classic format.
Fixed: HiRes textures, which didn't override any texture or flat were not loaded. 
Fixed, Tag Explorer plugin: linedef action categories were missing title when "Sort by action special" sort mode was used.
Cosmetic: renamed "Grid Setup" action to "Grid and Backdrop Setup".
2016-03-21 15:19:14 +00:00
MaxED
49525177e3 Cosmetic: changed ' to " in some more Error and Warning messages. 2016-03-08 20:41:06 +00:00
MaxED
f9a7c22e03 Added, Visual mode: "Raise/Lower Floor/Ceiling to adjacent Sector" actions now take surrounding 3d floors into account.
Added, Visual mode: highlight/selection based on texture alpha now works on 3d floors.
Changed, Game configurations, TranslucentLine:208 action: renamed the second argument from "Translucency Amount" to "Opacity".
Internal, documentation: updated udmf_zdoom.txt.
2016-01-26 22:29:12 +00:00
MaxED
a1c290d49c Fixed a crash when trying to parse an empty TEXTURES lump (probably covers some other empty text lumps as well).
Added strict revision checking to BuilderModes.dll (this plugin must always stay in sync with the core).
2016-01-20 17:54:56 +00:00
MaxED
998ec3bccc Added "Sector Floor Flat" and "Sector Ceiling Flat" Find and Replace modes.
Updated skybox model to better match GZDoom's skybox. Also the sky texture was flipped horizontally.
Fixed, Visual mode: "Select with the same texture" action is now able to select sidedef parts only visible because of slopes.
Fixed, Visual mode: skybox texture was not updated after using "Open map in current wad" action.
Fixed, Visual mode: in some cases Visual camera was placed below sector's floor when "Sync camera position between 2D and 3D modes" setting was enabled.
Fixed: numeric thing flags with inverted UDMF flag defined in "thingflagstranslation" Game configuration block were lost when copy-pasting a thing.
Fixed, command line arguments: fixed a crash when loading a map from a wad with existing .dbs file.
2016-01-15 18:20:47 +00:00
MaxED
3a35b7603a Fixed, Map Analysis mode, "Check stuck things" check: rewritten parts of the flags checking logic to allow more accurate flag checks.
Fixed, Map Analysis mode: fixed a crash when trying to dissolve an invalid sector when one of it's linedefs referenced it on the both sides.
Fixed, Sectors mode: fixed incorrect undo description when deleting sectors.
Internal: joined declaration and assignment of some more variables.
2015-12-28 15:01:53 +00:00
MaxED
e44b918b52 Changed, "Select Similar", "Paste Properties Special" actions properties windows, Linedefs: removed "Sidedef Properties" from Linedef flags tab.
Fixed several issues with "Synchronized Things Selection" setting:
- Things were not deselected after dragging a single sector.
- Things were not deselected after editing properties of a single sector.
- Things sector references were not updated after using "Join Sectors" and "Merge Sectors" actions.
- Things (de)selection is now applied to all things, instead of only the ones visible using current Things Filter.
2015-12-13 19:18:09 +00:00
MaxED
56baafe194 Fixed, "Select Similar Map Elements" action: Sector/Linedef tag matching logic was inverted. 2015-12-10 18:07:02 +00:00
MaxED
2ea51d237b Cosmetic, actions: renamed "Lower Floor/Ceiling by 8 mp" to "Lower Floor/Ceiling/Thing by 8 mp", "Raise Floor/Ceiling by 8 mp" to "Raise Floor/Ceiling/Thing by 8 mp", "Lower Floor/Ceiling by 1 mp" to "Lower Floor/Ceiling/Thing by 1 mp", "Raise Floor/Ceiling by 1 mp" to "Raise Floor/Ceiling/Thing by 1 mp", "Lower Floor/Ceiling to adjacent sector" to "Lower Floor/Ceiling/Thing to adjacent Sector/Thing", "Raise Floor/Ceiling to adjacent sector" to "Raise Floor/Ceiling/Thing to adjacent Sector/Thing".
Updated, Visual mode, "Raise Floor/Ceiling/Thing to adjacent Sector/Thing" / "Lower Floor/Ceiling/Thing to adjacent Sector/Thing" actions: sectors across targeted sectors are now taken into account when determining target height.
Updated, Visual mode, "Raise Floor/Ceiling/Thing to adjacent Sector/Thing" / "Lower Floor/Ceiling/Thing to adjacent Sector/Thing" actions: the actions can now stack things on top of other things when their bounding boxes intersect. 
Internal: cosmetic changes to shader update logic.
Internal: thing bounding box is now used when adding a thing to VisualBlockMap.
2015-12-10 14:34:34 +00:00
MaxED
17ac1c6db5 Sectors/Linedefs modes: removed "Select Things in Selected Sectors" action.
Sectors mode: removed "Move Things in Selected Sectors" toolbar button.
Sectors mode: added "Synchronized Things Editing" menu item, action and toolbar button. When enabled, things dragging will be synchronized to sector dragging. Regular, Paint and Rectangular selection will also select things (holding Alt while selecting inverts this behavior). Deleting sectors will also delete selected things.
Linedefs mode: added "Synchronized Things Editing" menu item, action and toolbar button. When enabled, selected things will be dragged when dragging linedefs. Rectangular selection will also select things (holding Alt while selecting inverts this behavior).
Changed: selection info now always displays info about all types of map elements.
Fixed: .dbs containing only current map settings was created when trying to save unchanged map. 
Fixed, Visual mode, "Copy Texture" action: when "Use long texture names" option is disabled, texture name as stored in Sidedef should be used, not the 8-char texture name.
Updated documentation.
2015-11-03 08:54:56 +00:00
MaxED
a182a5098d Game Configurations: added Vanilla Strife, Vanilla Heretic and Vanilla Hexen game configurations.
Added "makedoorceil" game configuration property. Works the same way as "makedoortrack" and "makedoordoor", but for ceilings of door sectors. 
Changed, Game configurations: the editor no longer tries to load DECORATE/MODELDEF/VOXELDEF/GLDEFS/REVERBS lumps when "decorategames" setting is not specified / is set to empty string.
Changed, General interface: "Tools -> Reload MODELDEF/VOXELDEF" and "Tools -> Reload GLDEFS" menu items are no longer shown when current game configuration doesn't support DECORATE. 
Fixed a crash when pasting linedef/thing properties in Hexen map format.
Fixed, Visual mode: Visual Thing resources were not fully unloaded when resetting D3D device leading to crash when switching to the editor from a DX-using game engine (like ZDoom) running in fullscreen.
Fixed: in some cases, when current game configuration supported multiple script compilers, it was possible to open/create a map or change map options without selecting any script compiler.
Fixed, New Map Options window: default map name was not updated when switching game configurations.
Fixed: copied map element properties were not reset after switching to another map.
Fixed: stored textures for "Make Door" action were not reset after switching to another map.
Fixed, Game Configurations window: currently selected test engine name was not updated when pasting test engines from another configuration. 
Fixed, Game Configurations: all "Heretic in Doom map format" configurations were using Doom sector effects list.
Fixed, Game Configurations: all "Strife in Doom map format" configurations were using Doom sector effects list.
2015-10-21 13:35:42 +00:00
MaxED
77d2a15f7f Changed: when entering Visual mode, the camera is no longer positioned at "Visual Mode camera" thing when "Sync camera position between 2D and 3D mode" setting is enabled.
Changed: Visplane Explorer plugin is now initialized only in Doom/Hexen map formats.
Fixed, Visual mode: thing cages were not rendered when things didn't have a sprite.
Fixed, Internal, DB2 bug: Plug.Dispose() was never called.
2015-10-09 21:57:32 +00:00
MaxED
13c3155db5 Removed "Paste Properties Options" action.
Added "Paste Properties Special" actions in "Classic" and "Visual" categories. They work the same way as "Paste Special" action.
Added: "Copy Properties", "Paste Properties" and "Paste Properties Special" options are now shown in the Edit menu if current classic mode supports them.
Changed, Paste Properties Special window: only options relevant to current map format are now displayed.
Changed, Paste Properties Special window, UDMF: all UI-managed options are now available.
Fixed: MAPINFO parser was unable to process "include" directives.
Fixed, General interface: selection info was reset to "Nothing selected" after few seconds regardless of current selection.
Fixed, Visual mode: thing bounding boxes were not updated when changing things positions using Randomize mode.
Fixed, Visual mode: event lines were displayed at incorrect height when entering Visual mode for the first time.
Fixed, Texture Browser window: when MixTexturesFlats Game Configuration option is disabled, textures/flats are no longer shown in the Used group when flats/textures with the same names are used in the map. 
Fixed(?): probably fixed an exception some users reported when trying to initialize a Classic mode after switching from Visual mode with "Sync cameras" option enabled.
Changed, Game configurations, Thing Categories: a block must have at least one thing category property to be recognized as a thing category.
Changed, Visplane Explorer: the plugin now outputs more info when it fails to initialize vpo.dll.
Cosmetic, Thing Edit window, Doom/Hexen map format: adjusted UI layout so thing flags control no longer displays scrollbars in Hexen map format.
Internal: merged methods from UDMFTools into UniFields, removed UDMFTools. 
Updated Inno Setup script (added VC++ 2008 SP1 distributive). 
Updated ZDoom_DECORATE.cfg (A_CheckBlock).
Updated documentation (added "System Requirements" page).
2015-10-09 12:38:12 +00:00
MaxED
ff265d87f9 Added some boilerplate to the rendering system. It's now impossible to start new rendering cycle if the previous one hasn't finished yet.
Changed: OS name, GPU name and GZDB revision info are now added to the exception text and GZCrash.log.
Fixed, cosmetic: toolstrip separators visibility must be updated when resizing the main window.
Internal: removed Plug.DisplaySize, Plug.DisplayLocationAbs and Renderer.ViewportSize. The same data can be accessed from anywhere using General.Interface.Display.Size and General.Interface.Display.LocationAbs. Also Plug.DisplayLocationAbs returned incorrect coordinates...
2015-09-17 12:02:39 +00:00
MaxED
25b3bf2287 Added, Texture Browser: added "Show textures in subdirectories" checkbox (enabled by default). When enabled, textures from current PK3/PK7/Directory resource directory and it's subdirectories will be shown. Otherwise, only textures from current directory will be shown.
Removed, Texture Browser: removed "Show image sizes" checkbox. "Show texture and flat sizes in browsers" preferences setting is now used instead.
Fixed, Things mode: event line between pre-last and the last PatrolPoint was not drawn.
Fixed, Things mode: highlight range for sizeless things (things with "fixedsize" game configuration property) was calculated incorrectly.
Fixed: fixed a crash when opening Script Editor after using "Open map in current wad" command to switch to UDMF map with SCRIPTS lump when current script configuration was not saved in the wad's .dbs file.
Fixed: map closing events were not triggered when using "Open map in current wad" command, which could potentially result in plugin crashes/incorrect behavior.
Fixed: Sector Drawing overrides panel could trigger an exception when closing the map during resource loading.
Internal: added "Debug + Profiler" solution configuration, added 2 profiling methods to DebugConsole.
Internal: rewrote MainForm.DisplayStatus() / StatusInfo to handle selection info in a more structured way.
Fixed, internal: some destructors could potentially be executed more than once potentially leading to exceptions. Other destructors were not called at all.
Updated ZDoom_DECORATE.cfg.
2015-09-16 12:10:43 +00:00
MaxED
6ac256eb4f Fixed: map file lock check was performed in incorrect place leading to always reporting the map file as locked on Windows XP.
Fixed, DB2 bug (partially): 4 settings were reset to the state saved in the program configuration after applying the changes made in the Preferences window.
Fixed: several Brushes were not disposed in ImageBrowserItem (DB2 bug) and ColoredComboBox, resulting in a very slow memory leak.
Fixed, Linedefs Mode, cosmetic: incorrect distance was used when calculating vertex insert preview opacity.
Changed, Script Editor: disabled indentation guides.
2015-09-12 21:05:01 +00:00
MaxED
fe38d59169 Added, Classic modes: default thing arguments are now taken into account when highlighting related map elements.
Probably fixed an exception when trying to check which program(s) lock the map file on Windows XP.
Changed: added an option to try to close all programs, which lock the map file when saving the map and the map file is locked (requires Windows Vista or newer).
Fixed, Preferences window: some trackbars had incorrect background color.
Fixed, General interface: in some cases status messages were almost immediately replaced by selection info messages.
2015-09-08 14:54:53 +00:00