Commit graph

253 commits

Author SHA1 Message Date
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
fd0e1c754a Visual mode: added support for DistanceCheck DECORATE property.
Updated ZDoom_DECORATE.cfg.
2016-04-13 10:07:46 +00:00
MaxED
c3392f8399 Added, Visual mode: thing sprites are now angle-dependent. 2016-04-11 23:05:16 +00:00
MaxED
42607f704f Added, Classic modes: thing sprites are now angle-dependent. 2016-04-08 14:02:08 +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
ee12da96a1 Sectors, Linedefs, Things modes: optimized text label rendering.
Fixed, Things mode: in some cases selection labels were not updated after editing a thing.
Fixed, Things mode: selection labels were positioned incorrectly on things with FixedSize setting.
Fixed, Sectors mode: fixed a crash when selecting self-referencing sector when selection labels were enabled.
Fixed, Visual mode: in some cases Auto-align texture actions were not working when "use long texture names" Map Options setting was enabled.
Fixed, MD2/MD3 loader: available animation frames upper bound check was performed incorrectly, which would cause a crash in some very special cases.
Fixed, Game configurations: most Hexen/ZDoom teleport actions use TeleportDests as teleport targets, not MapSpots.
2016-04-05 22:24:36 +00:00
MaxED
a4428cf244 Added, Linedefs mode, Things mode: selection numbers can now be displayed and can be toggled using the "View Selection Numbering" mode toolbar button.
Added, Linedefs mode, Things mode: sector tags can now be displayed and can be toggled using the "View Sector Tags" mode toolbar button.
Fixed, Classic modes, DB2 bug: in some cases text label size was queried before it was calculated, resulting in text labels being rendered when they shouldn't.
Updated ZDoom_DECORATE.cfg (A_LogFloat).
2016-04-04 22:20:49 +00:00
MaxED
dddb1bbfa8 Added, Game configurations: added "targetclasses" argument property. Can be used with argument type 14 (Thing Tag). When set, only things of given classes will be shown in the argument dropdown list in Edit Things window.
Changed, Classic modes: when "Fixed Things Scale" option is enabled, things will now switch to fixed size rendering mode when their visible size is less than 48 pixels.
Changed, Classic modes: changed the fixed size of things with FixedSize setting to 28 pixels.
Updated documentation ("targetclasses" argument property).
2016-04-04 12:09:38 +00:00
MaxED
6cb9f96a46 Fixed, Classic modes: thing sprite should always be rendered when it's size is affected by "Fixed Things Scale" option or FixedSize setting.
MAPINFO parser: removed a misleading warning.
2016-04-01 22:23:05 +00:00
MaxED
f6b444a4f1 Added text label font settings (Preferences -> Interface tab).
Rearranged some settings in the Preferences window.
2016-04-01 14:32:56 +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
a5fffa9c3a Added Preferences -> Appearance -> "Things transparency" slider. It controls Things transparency in all classic modes except Things mode.
Added Preferences -> Appearance -> "Hidden Things transparency" slider. It controls transparency of Things hidden by Things filter in Things mode, of all things :)
2016-03-30 11:29:39 +00:00
MaxED
002d6e9c89 Fixed inability to disable bilinear filtering in Visual mode some users experienced.
Fixed occasional TreeView flickering in Edit Things window, Browse Action window and Tag Explorer panel.
Updated Thing category icons in the Edit Things window. They now have "opened" and "closed" states.
Internal: added BufferedTreeView to the core controls.
Updated ZDoom game configurations (sector crush mode).
Updated ZDoom ACC.
2016-03-29 14:38:07 +00:00
MaxED
abfcd8e53b Added, Preferences -> Appearance: added "Anisotropic filtering" and "Edge Antialiasing" settings. Also regrouped some settings.
Added, "Check polyobjects" error check: added a check for matching Polyobject and Mirror Polyobject numbers of Polyobj_StartLine action.
Changed, Visual mode: anisotropic filtering is now always applied (previously it was applied only when bilinear filtering was enabled).
Fixed, Visual mode: in some cases light values were incorrectly transferred between 3d floors and regular floors/ceilings.
Fixed, ACS parser: includes for each library must be stored separately (fixes inability to compile a script with an included library, which in turn includes files already included by the script).
2016-03-25 14:06:00 +00:00
MaxED
cc9d118f5b Changed, Visual mode: adjusted fog density calculation to better match with GZDoom.
Fixed, Visual mode: alpha-based texture picking didn't work correctly on HiRes images.
Fixed, Visual mode: fog density was calculated incorrectly for things lit by dynamic lights.
Fixed, Edit Sector window, UDMF: "Fade" and "Light" color pickers initial values were incorrect when displaying mixed values.
Fixed, Edit Thing window, UDMF: "Color" color picker initial value was incorrect when displaying mixed values.
2016-03-23 21:26:26 +00:00
MaxED
dd26c3ded2 Internal: removed some duplicate casts, marked some classes is IDisposable, some streams were disposed more than once. 2016-03-18 12:52:12 +00:00
MaxED
5fde78a2c9 Added, Tag Explorer plugin, UDMF: added multiple tags support.
Changed, cosmetic: elapsed time is now displayed after resources loading finishes.
Changed, internal: changed Clock.CurrentTime type to long.
Fixed, Tag Statistics window: in some cases the map view was not updated after selecting items in Sectors/Linedefs/Things columns. 
Fixed, cosmetic: Draw Curve mode icon was missing a shadow.
2016-03-14 00:01:21 +00:00
MaxED
09b32eba42 Fixed, Visual mode: GLDEFS glow color was incorrectly interpolated on sidedefs.
Fixed, Visual mode: in some cases GLDEFS glow effect was not updated after changing floor/ceiling texture.
Fixed, Draw Rectangle and Draw Ellipse modes: in some cases pressing "Reset" button did not update the shape preview.
Fixed, DB2 bug: sector geometry was not updated after undoing "Flip Sidedefs" action.
2016-03-08 20:37:44 +00:00
MaxED
b5577ed423 Changed the way filtering in the Edit Things, Browse Action and Browse Effect windows work: items, which names start with filter text are now displayed first.
Cosmetic tweaks to the way thing bounding boxes are rendered in Things mode when "Fixed Things Scale" option is enabled (bounding boxes of highlighted/selected things are now more opaque than the ones of unselected things).
Changed, Preferences form: action selected in the actions list is now stays selected when applying the filtering (unless it's no longer valid).
2016-02-23 13:55:53 +00:00
MaxED
80861be6ab Added "Fixed Things Scale" setting (available in the View menu, as a button on the View toolbar and as the "Toggle Fixed Things Scale" action). When enabled, Things will no longer be scaled based on current zoom level in Classic modes, instead, thing bounding box will be drawn when appropriate (this option mimics DB1 things rendering style).
Internal: removed some remnants of fixed rendering pipeline from Renderer2D and Renderer3D.
2016-02-22 15:20:08 +00:00
MaxED
4c60662374 Script Editor, Script Editor configurations: added additional keywords category for properties/operators. Added a separate color for those as well.
Fixed, Script Editor: auto-completion and syntax highlighting now works for properties with dots (like "Powerup.Color") and colon (like "See:").
Fixed, Linedef info panel, Hexen map format, cosmetic: activation type should be enabled when the line has an action assigned, even if it's default activation.
Updated ZDoom_linedefs.cfg (Line_SetPortal).
2016-02-06 21:23:43 +00:00
MaxED
3b90d100ff Re-fixed, Visual mode: in some cases some D3D textures were not disposed after closing a map, eventually resulting in E_OUTOFMEMORY crash.
Fixed, Preferences window: some folding settings were not applied in the Script Editor preview control.
Changed, Visual mode: increased z-buffer depth to 24 bits. Z-fighting among far away but close to each other surfaces should be less noticeable now.
2016-02-06 00:04:02 +00:00
MaxED
839bb52cb9 Fixed, Things mode: Undo for things cloning by Shift-dragging them was created incorrectly (cloned things were moved to their initial position, but not removed).
Fixed, Visual mode: fixed Classic sky texture generation artifact when Bilinear filtering was enabled in Visual mode.
Fixed, Visual mode: fixed Classic sky texture generation artifact when non-power-of-2 Sky textures were used.
Fixed, Visual mode: dynamic lights flickering on surfaces nearly-perpendicular to lights centers should be much harder to trigger now.
2016-02-02 21:07:15 +00:00
MaxED
139c297161 Fixed, Visual mode: some video memory was not released after closing a map if the Visual mode was enabled at least once during the editing session, eventually resulting in E_OUTOFMEMORY crash.
Fixed, General interface, cosmetic: in some cases the warnings label was disabled in a flashing state (e.g. with red background).
Internal: moved some older GZDB actions form GZGeneral to MapManager. They can no longer be toggled when no map is loaded (which is probably for the best).
Updated ZDoom_ACS.cfg.
Updated ZDoom_DECORATE.cfg.
2016-02-01 22:04:00 +00:00
MaxED
0bb521cc67 Preferences: added 2 Script Editor color presets. 2016-01-29 14:54:55 +00:00
MaxED
e29eef320c Preferences: moved Script Editor settings to a separate page, added a bunch of new Script Editor settings.
Changed: Script Editor no longer converts typed constants to uppercase.
Changed: when "Auto indent" is enabled, Script Editor no longer adds additional indentation to a line after closing brace.
2016-01-29 13:05:28 +00:00
MaxED
5fd02a6080 Updated Scintilla control to ScintillaNET 3.5.6 (https://github.com/jacobslusser/ScintillaNET). Scintilla.dll is no longer used by GZDB and can be safely removed.
Changed, Script Editor: pressing Ctrl-S when fixed compilable script tab (like SCRIPTS tab) is selected now compiles the script.
Fixed, Error Logger: fixed slowdowns when adding lots of errors and "Errors and Warnings" window was opened.
Fixed, Script Editor: text caret was incorrectly positioned after selecting a function in the navigator dropdown.
Fixed, Script Editor: incorrect ACS configuration was used for SCRIPTS lump for maps in Hexen map format for ZDoom-based engines.
Internal, rendering: added more error reporing-related code to D3DShader.LoadEffect().
Updated ZDoom_DECORATE.cfg.
2016-01-27 14:08:15 +00:00
MaxED
5d47e331d8 Fixed, DB2 bug: hlsl effect stream was not rewound when trying to compile it in debug mode, which resulted in always receiving IndexOutOfRangeException when trying to do it.
Fixed, Visual mode: textures on floors, ceilings and single-sided wall parts are now rendered ignoring texture alpha.
Changed, Game configurations, Sector_Set3dFloor:160 action: renamed the fourth argument from "Alpha" to "Opacity".
2016-01-26 08:00:54 +00:00
MaxED
2cbe6640a6 Fixed, Visual mode: in some cases ceiling glow effect was interfering with Transfer Brightness effect resulting in incorrectly lit sidedef geometry.
Fixed, Visual mode: UDMF sidedef brightness should be ignored when a wall section is affected by Transfer Brightness effect.
Fixed, Visual mode: any custom fog should be rendered regardless of sector brightness. 
Fixed, Visual mode: "fogdensity" and "outsidefogdensity" MAPINFO values were processed incorrectly.
Fixed, Visual mode: in some cases Things were rendered twice during a render pass.
Fixed, Visual mode: floor glow effect should affect thing brightness only when applied to floor of the sector thing is in.
Fixed, TEXTURES parser: TEXTURES group was named incorrectly in the Textures Browser window when parsed from a WAD file.
Fixed, MAPINFO, GLDEFS, DECORATE parsers: "//$GZDB_SKIP" special comment was processed incorrectly.
Fixed, MAPINFO parser: "fogdensity" and "outsidefogdensity" properties are now initialized using GZDoom default value (255) instead of 0.
2016-01-25 13:42:53 +00:00
MaxED
ada38c4454 Fixed, Visual mode: fixed D3DERR_INVALIDCALL error caused by a bug in classic skybox texture creation.
Fixed, Visual mode: aspect ratio was not updated when render area was resized.
Fixed, Visual mode: vertex handles were disappearing after using Reload Resources (F8) action.
Changed, internal: removed most of the fixed pipeline rendering code. The editor can no longer be used on a video card without Shader Model 2.0 support.
2016-01-14 22:15:54 +00:00
MaxED
37feaa5de1 Added, Visual mode: sky rendering. Currently classic skies and GLDEFS Skyboxes are supported.
Added "Toggle sky rendering" action and toolbar button.
Added, MAPINFO parser: the editor now recognizes map number from classic map definition format. Hexen MAPINFO is now properly parsed.
Added, MAPINFO support: if current map definition contains map name as a text string, it will be shown in the editor's header.
Changed: "Toggle dynamic lights rendering" now toggles between "Don't show dynamic lights" and "Show dynamic lights" when used in Classic modes. 
Changed, Things mode: lowered the opacity of dynamic light radii.
Changed, (G)ZDoom text parsers: empty include files now trigger a warning instead of an error and no longer abort parsing.
Fixed, Game configurations: moved Stalagmite:5050 thing to Doom block (so the editor no longer tries to load it for non-Doom game configurations).
Fixed(?), Visual mode: probably fixed a hard-to-trigger exception when sorting translucent geometry.
Fixed, Visual mode: floor glow effect was incorrectly applied to walls (was broken in R2452).
Internal: restructured most of MAPINFO and GLDEFS parsers. Should be more maintainable now.  
Updated ZDoom ACC.
Updated zdbsp to 1.19.
Updated documentation.
2016-01-11 13:00:52 +00:00
MaxED
4c794ad028 Fixed, Classic modes: text labels positioning logic was accidentally broken in R2455. 2015-12-28 18:19:09 +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
f6f277065f ACS parser: fixed several cases when #include and #import directives were processed incorrectly.
Internal: joined declaration and assignment of some variables.
2015-12-27 21:54:50 +00:00
MaxED
a35a336527 Added, Things mode: dynamic light things light radii are now rendered (can be disabled by setting "Dynamic light mode" to "Don't show dynamic lights" on the top toolbar).
Internal, Renderer2D.RenderArrows(): only visible lines are now rendered.
Internal, API: renamed public Line3D properties: v1 to Start, v2 to End, color to Color, renderarrowhead to RenderArrowhead.
2015-12-14 12:34:31 +00:00
MaxED
b35684e1c6 Changed, Renderer2D: StartOverlay() now works the same way as StartPlotter() and StartThings() (e.g. returns false when unable to render instead of throwing an Exception. Should prevent crashes for people with slow GPUs / very complex maps). 2015-12-13 22:14:16 +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
e1f7bd9611 Added, Visual mode: "Translucent" / "Additive" renderstyles support for models.
Fixed, Visual mode, fog rendering: things with Bright setting should still be affected by custom fade.
Updated ZDoom_DECORATE.cfg.
2015-12-01 14:51:45 +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
283c6c2272 Visual mode: noticeable performance boost (rendering now works ~40% faster).
Visual mode: fog distance calculation is now much closer to GZDoom one.
Visual mode: thing brightness calculation when a thing is affected by floor glow is now much closer to GZDoom one.
Linedef edit window, UDMF: added "Reset front/back brightness" buttons.
Sector edit window, UDMF: added "Reset ceiling/floor brightness" buttons.
Internal, Visual mode, Things mode: persistent event lines are now updated only when map objects are changed instead of doing it on every display redraw.
Internal: improved Dictionary lookup times when using map objects and textures as keys.
Internal: added "Release + Profiler" solution configuration.
Updated ZDoom_ACS.cfg (Warp).
2015-10-02 14:47:34 +00:00
MaxED
07b4a7a9cd Added, Visual mode, DECORATE: "Alpha" and "DefaultAlpha" properties are now supported.
Added, Visual mode, DECORATE: "RenderStyle" property is now partially supported.
Added, Visual mode, DECORATE: +BRIGHT flag is now supported.
Added, Visual mode, UDMF: "Alpha" thing property is now supported.
Added, Visual mode, UDMF: "RenderStyle" thing property is now partially supported.
Added, Visual mode, Hexen map format and UDMF: "Translucent" and "Invisible" thing flags are now supported.
Added, Game Configurations: added "alpha" and "renderstyle" Thing and Thing Category properties.
Fixed, Visual mode: blockmap was not updated when moving things using "Move Thing Left/Right/Forward/Backward" and "Move Thing to Cursor Location" actions.
DECORATE parser: added a warning when unable to find actor's parent class.
Internal: current map format can now be checked using "General.Map.UDMF", "General.Map.HEXEN" and "General.Map.DOOM" properties.
Updated documentation ("Game Configuration - Things Settings" page).
2015-09-28 14:57:48 +00:00
MaxED
f729c811f5 Added, Visual mode: translucent/additive geometry is now rendered properly.
Fixed: "Open map in current wad" action was accidentally broken in R2403.
2015-09-27 21:09:14 +00:00
MaxED
dc840605aa Added emergency map backup system (EMBS). When the editor crashes, it will try to export a backup copy of the map structures. When the same map is loaded again, it will ask the user if he wants to restore the map.
High-DPI: fixed many issues with incorrect controls size (Tag selector width, Comment Editor size, icons size, tabs size etc.).
Cosmetic: changed map geometry dragging undo messages to more descriptive ones.
Fixed, Textures Browser, cosmetic: "Show textures in subdirectories" checkbox should be repositioned when "Long texture names" one is invisible.
Updated ZDoom_DECORATE.cfg (added A_SetFloatSpeed + a couple of fixes).
2015-09-25 13:20:53 +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
c407c8c351 Fixed, DB2 bug: side panel's tabs were drawn incorrectly when panel's height was lower than cumulative tabs height.
Visual mode, GLOOME: wall/floor/ceiling sprites are now rendered closer to the way it's done in GLOOME.
Sectors mode, UDMF: some cosmetic tweaks to comment icons rendering.
Classic modes: linedef rendering is now skipped when it's visible length is very short.
General interface: fixed a possible crash when clicking on the warnings count label when it was updated from the background thread.
2015-08-31 22:06:44 +00:00
MaxED
deb65258ae Added, Visual mode, GLDEFS, GLOOME: subtractive glow is now supported.
Changed, Visual mode: changed thing fog calculation logic. Should be closer to GZDoom now.
Fixed, GLDEFS parser: "height" texture parameter was not treated as optional.
Fixed, text lump parsers: in some cases incorrect line number was displayed in error and warning messages.
Fixed, Visual mode: glow effect was not applied to sectors with 3 sidedefs.
Fixed, Visual mode: in some cases glow effect was not updated when replacing textures. 
Fixed, general interface: "Full Brightness" button state was not updated during map loading.
Fixed, Drag Linedefs/Vertices/Sectors/Things modes: positions of line length labels were not updated while panning the view.
Cosmetic: added a bunch of new icons.
Cosmetic: changed Visual mode crosshair.
2015-08-27 20:46:49 +00:00
MaxED
c7696b0464 Fixed, Draw Lines/Rectangle/Circle/Curve modes: line length labels displayed incorrect length.
Changed, Drag Linedefs/Vertices/Sectors/Things modes: line length labels are now displayed the same way as in Draw modes.
Changed, Drag Linedefs/Vertices/Sectors/Things modes: "lock movement to cardinal directions" mode (Alt-Shift-Drag) now locks movement in 4 directions instead of 8 and doesn't snap map elements to nearest grid intersections when they are not aligned to it. 
Added, Visual mode, GZDoom, DECORATE: FORCEXYBILLBOARD flag is now supported.
Added, Visual mode, GLOOME, DECORATE: FLOORSPRITE, CEILSPRITE, WALLSPRITE, ROLLSPRITE and STICKTOPLANE flags are now supported (implementation is somewhat broken ATM and probably doesn't work the same way as in GLOOME, because Windows build with most these features is nowhere to be found...).
Fixed, Visual mode: in some cases Thing brightness was calculated incorrectly.
Updated ZDoom_DECORATE.cfg.
2015-08-25 22:05:14 +00:00
MaxED
b37457dbc1 Changed, Draw Lines/Rectangle/Circle/Curve modes: line length labels are now repositioned to stay on screen when line's start or end is not visible.
Added, Map Analysis mode: added "Check map size" check. It will generate a warning when map's width or height is larger than 32767 m.u.
2015-08-24 21:49:15 +00:00
MaxED
980fc2f4c8 Classic modes: added "Dynamic grid size" option (available in the View menu and on the main toolbar). When enabled, grid size will be automatically adjusted based on current zoom level.
Updated ZDoom ACC to rev. 19995bb.
Updated ZDoom_ACS.cfg and ZDoom_DECORATE.cfg.
2015-08-20 14:09:28 +00:00
MaxED
527d3cf5dc Added, Things mode, Visual mode: event lines for InterpolationPoints are now curved when appropriate setting is enabled in the control thing (PathFollower/ActorMover/MovingCamera) [heavily inspired by Xabis' patch].
Added, Things mode: the editor will try to reconnect the path when deleting InterpolationPoints and PatrolPoints.
Internal: RenderArrows method now works the same way in Renderer2D and Renderer3D.
Internal: Line3D now has "renderarrowhead" property.
2015-08-08 21:56:43 +00:00
MaxED
b9b5b00213 Classic modes: added "Toggle Grid" action (default key is Alt-G), new menu item in the View menu and new toolbar button.
Changed, Things mode, cosmetic: tweaked thing sprite/bounding box appearance a bit more...
Fixed, Linedefs mode, cosmetic: fixed event lines and sector highlights flickering when view panning was started while displaying action highlight.
2015-08-04 23:28:02 +00:00
MaxED
ce7510c153 Preferences: removed "Square Things" setting. Square things are now the only option.
Changed, Things mode: things are now rendered with a bit of transparency, so things beneath other things are now visible.
Fixed, Things mode: in some cases it was impossible to highlight a thing beneath other thing when their positions were the same.
Changed, 2D modes: changed thing bounding box and arrow image.
Fixed, cosmetic, 2D modes: in some cases thing arrows were rendered bigger than thing bounding boxes.
2015-08-03 22:02:39 +00:00
MaxED
b3ab923487 UDMF: most of the code now supports multiple sector/linedef tags ('moreids' UDMF property). The only things left out are Tag Explorer and Tag Range plugins. 2015-07-28 15:04:21 +00:00
MaxED
cff3489791 Fixed, Classic modes, Visual mode, UDMF: the last argument of Sector_Set3dFloor (160) action must be ignored in UDMF. 2015-07-26 23:35:34 +00:00
MaxED
1118fd6b98 Changed: "Show Comments" option should also control whether comment tooltips are displayed.
Added some boilerplate to CommentsDocker.
Internal: converted a bunch of if-elses to switches.
2015-07-15 09:09:47 +00:00
MaxED
0d4c2a8f32 UDMF: Added "Comment" tab to Edit Sector / Linedef / Thing forms.
Sectors, Linedefs, Things modes: comment icons for appropriate map elements with comments are now rendered in these modes. This can be disabled using either the new "Toggle Comments" action, "View -> Show Comments" menu item, or "Show Comments" button on the main toolbar.
2015-07-14 23:34:31 +00:00
MaxED
ef5bd3e5c0 Changed, Classic modes: model wireframe is now rendered using Highlight color when corresponding thing is highlighted (and Select color when it's selected).
Sound Environment mode: added "Show nodes with warnings only" checkbox to the panel.
Sound Environment mode: somewhat increased sound environment update speed by updating the list after all sound environments are updated.
Sound Environment mode: the list now scrolls to show highlighted sound environment.
Sound Environment mode: sound environments can now be (de)selected. Selecting a sound environment stops highlighting sound environments / scrolling the list when moving the mouse.
2015-07-05 23:20:18 +00:00
MaxED
414a18ad90 Fixed, Randomize Things window: "Same width and height" scale setting was not applied properly.
Fixed incorrect formatting of changelog messages displayed in the updater window.
Changed, Classic modes: models for things hidden by thing filter are now rendered with much lower alpha than the "regular" ones.
2015-07-02 10:07:43 +00:00
MaxED
d5d375834f Fixed, Visual mode: model visibility filtering was checked incorrectly when using "Show models for current things filter only" model rendering mode. 2015-06-29 08:15:07 +00:00
MaxED
8f2c6e3f60 Classic modes: added "Show models for current things filter only" model rendering mode.
Things Filters: things filters can now be inverted (added "Invert Filter" checkbox to the Things Filters window).
2015-06-27 09:10:24 +00:00
MaxED
540eb2fda8 Classic modes: changed the way event lines are rendered. Should work much faster now. Event lines are now displayed while panning the view. 2015-06-24 21:21:19 +00:00
MaxED
a523f7eb28 Changed, Visual mode: models and lights are much less prone to disappear when near the edges of the screen.
Fixed, Classic modes: MODELDEF model scale was not taken into account when calculating model visibility, which resulted in models with increased scaled disappearing when near screen edges.
2015-06-22 19:52:23 +00:00
MaxED
2945c258d3 Visual mode: looks like things lit by dynamic lights are not affected by light fading in GZDoom. 2015-06-08 09:48:25 +00:00
MaxED
35cd4068ff Game Configurations: added "Thing Radius" (23) and "Thing Height" (24) action argument types. When non-zero, arguments of these types will affect the size of associated thing in Classic and Visual modes.
Game Configurations: updated things in ZDoom "Bridges" category to use argument types 23 and 24.
Documentation: added "Action Argument Settings" page, updated "Basic Settings", "Map Format Settings", "Linedefs Settings" and "Things Settings" pages in Configurations -> Game Configurations group.
Documentation: updated "DECORATE keys" page.
2015-05-30 10:26:16 +00:00
MaxED
1b9f94f3f7 More code sanity changes (constructors of abstract classes should not be public or internal). 2015-05-27 12:38:03 +00:00
MaxED
76559ae881 Added GZDoom's glowing flats (http://www.zdoom.org/wiki/GLDEFS#Glowing_flats) support to Classic and Visual modes.
MAPINFO: added "DoomEdNum" and "SpawnNums" blocks support.
MAPINFO: added "#include" directive support.
MAPINFO: added "$gzdb_skip" special comment support.
DECORATE: "spawnthing" Game Configuration block is now updated using "SpawnID" actor property.
Game configurations: added "class" property to the most of ZDoom things.
Actions: removed "Reload MAPINFO" action.
Documentation: merged "GLDEFS and MODELDEF support", "(Z)MAPINFO support" and "TEXTURES support" topics into "(G)ZDoom text lumps support", added info about the other text lumps GZDB can use.
2015-04-14 11:33:57 +00:00
MaxED
5fe89efc7c Visual mode: added support for "Transfer Brightness Level" (50) effect type parameter (arg 1).
Visual mode: added support for "Transfer Floor Brightness" (210) effect.
Visual mode: added support for "Transfer Ceiling Brightness" (211) effect.
Visual mode: changed the way thing brightness is calculated. Should be closer to GZDoom now.
Sector Edit Form: you can now enter "++" or "--" into "Height Offset" input to raise or lower sectors by their height.
Cosmetic fix in ZDoom_linedefs.cfg.
2015-04-01 12:51:26 +00:00
MaxED
a58f35227e Added, Visual mode, UDMF: added "Change Pitch Clockwise", "Change Pitch Counterclockwise", "Change Roll Clockwise" and "Change Roll Counterclockwise" actions.
Added, Visual mode, UDMF: added "Increase Scale" and "Decrease Scale" actions.
Added, Visual mode, UDMF: "Reset Texture Offsets" action now resets scale when used on things.
Added, Visual mode, UDMF: "Reset Local Texture Offsets" action now resets scale, pitch and roll when used on things.
Changed, Visual mode, UDMF: "Reset Texture Offsets" action now only resets texture offsets (previously it also reset texture scale).
Changed, Visual mode, UDMF: "Reset Local Texture Offsets" action now resets texture offsets, scale and brightness of sidedefs and also rotation of floors/ceilings.
Changed, Visual mode, UDMF: thing box arrow now displays pitch and roll for things, which have attached model and appropriate MODELDEF flags.
Changed, Thing Edit Form, UDMF: negative pitch and roll can now be entered.
Updated documentation.
2015-03-30 21:44:04 +00:00
MaxED
0359974e0f Fixed, Models, Classic and Visual mode: UDMF scale and rotation transforms were applied in incorrect order.
Fixed, Cosmetic, Script Editor: fixed a typo.
Internal, ImageBrowserControl: removed now unused KeyDown event.
Updated documentation.
2015-03-26 11:30:36 +00:00
MaxED
0ba6490b8a Changed, "Make Brightness Gradient" action: MAPINFO FadeColor and OutsideFogColor properties are now used when first or last sector doesn't have "fadecolor" property when making a fade gradient.
Fixed (probably), D3DDevice: looks like CreatePresentParameters() can also throw "D3DERR_DEVICELOST" error in some cases...
2015-02-20 13:22:43 +00:00
MaxED
1c769eec3f Core, internal: added ReverbsParser. Reverbs can be accessed using General.Map.Data.Reverbs.
Sound Environment Mode: sound environments can now be picked by editing sound environment things.
Sound Environment Mode: detected sound environments names are now used as item names in the tree view.
Fixed, Classic modes: incorrect texture was used as unknown floor/ceiling texture (I broke this in r2199).
Fixed, MainForm: reverted MainForm.UpdateToolStripSeparators. By making it look simpler I made it work more buggy...
Updated ZDoom_DECORATE.cfg.
2015-01-25 23:22:42 +00:00
MaxED
43d4f80ba3 Fixed: flats and textures defined in TEXTURES should override regular ones (adding long texture names support broke this).
Removed unused references from all projects.
2015-01-23 21:51:11 +00:00
MaxED
deb43343bb Visual mode: "Fit Textures" action can now fit textures across multiple selected surfaces. A number of times to repeat a texture can now be specified.
Visual mode: removed "Fit Texture's Width" and "Fit Texture's Height" actions.
Visual mode: "Auto-align texture offsets" actions were incorrectly aligning double-sided middle walls in some cases.
Visual mode: "Auto-align texture offsets" actions now align non-wrapped double-sided middle walls to vertical offset closest to their initial vertical offset.
Visual mode: middle parts of double-sided walls were ignored when Shift-selecting walls.
Nodebuilders/Game configurations: GL nodes definitions were missing from game configurations.
Nodebuilders/Game configurations: "~MAP" wildcard can now be a part of a lump name. 
Nodebuilders: GL nodes were not properly handled by the editor.
Main Window: the window is now moved into the view when stored position is ouside of screen bounds. 
Classic and Visual modes: changing thing pitch was ignored in some cases.
Visual mode: raising and lowering a thing with "+SPAWNCEILING" flag now works the same way as when raising/lowering a regular thing.
Visual mode: using "Raise/Lower Floor/Ceiling to adjacent sector" actions on a thing with "+SPAWNCEILING" flag now works the same way as when using them on a regular thing.  
Rendering: even more fixes to MODELDEF and UDMF properties-related model rendering logic.
Internal, ResourceListEditor: rewritten resource validation check in a more OOP-ish way.
Configurations: fixed an infinite loop crash when a file was trying to include() itself.
UDMF thing flags: added Skill 6-8 to the flags list (because there are thing filters for these).
ZDoom_ACS.cfg: added definitions for SetTeleFog and SwapTeleFog.
ZDoom_DECORATE.cfg: added definitions for A_SetTeleFog and A_SwapTeleFog.
Updated ZDoom ACC.
Updated documentation.
2014-12-22 21:36:49 +00:00
MaxED
716d9d26f4 Rendering: MODELDEF "offset" property is now supported.
Rendering: mode fixes to MODELDEF and UDMF properties-related model rendering logic.
2014-12-11 12:55:35 +00:00
MaxED
4d9c551790 Fixed, Rendering: MODELDEF RollOffset, AngleOffset, Scale and ZOffset properties were applied incorrectly.
Fixed, Rendering: VOXELDEF Scale property was applied incorrectly.
2014-12-10 22:50:16 +00:00
MaxED
15b2adfe30 Texture Browser Form: swapped foreground and background colors of texture size labels.
Fixed, Texture Browser Form: well, I broke "Tab" key functionality again (in previous commit)...
Maintenance: changed curly braces style to match DB2 one (hopefully not breaking anything in the process...).
Maintenance: changed private method names casing to match DB2 one.
2014-12-03 23:15:26 +00:00
MaxED
99f3ba2844 Changed long texture names handling. Texture names conversion is no longer required.
Texture browser form: added "Long texture names" check-box. It can be used to toggle between displaying long and short texture names.
Texture browser form: added "Show image size" check-box.
Texture browser form: image size is now shown differently.
Image Selector: added a button to toggle between long and short texture name.
Linedef info panel: long texture names are now displayed properly.
Sector info panel: long texture names are now displayed properly.
Fixed: "Save Screenshot" and "Save Edit Area Screenshot" actions were triggered multiple times when a child window was open.
Fixed: used textures should be always updated after using "Change map in current WAD" action.
Fixed, "Change map in current WAD": fixed a crash when trying to switch from a map with missing game configuration path.
Updated ZDoom_ACS.cfg.
2014-12-03 09:06:05 +00:00
MaxED
c90d10c08c General interface: dynamic lights rendering mode and model rendering mode are now selected via drop-downs.
Renamed "Toggle dynamic lights rendering" action to "Show dynamic lights".
Changed: "Show dynamic lights" action now toggles between available dynamic light rendering modes.
Renamed "Toggle models rendering" action to "Show models".
Changed: "Show models" action now toggles between available model rendering modes.
Removed "Toggle dynamic lights animation" and "Render selected/all models" actions.
Fixed, Randomize Sectors form: selection highlight was not updated after applying the changes when the form was shown in Sectors mode.
Consistency: selection is now cleared after applying changes done in Randomize Things and Randomize Vertices forms.
Fixed, Classic modes: sprites of things with attached models were not rendered when model rendering was disabled.
Updated documentation.
2014-10-20 12:16:51 +00:00
MaxED
88e5e790e7 Textures Browser form: empty texture sets are no longer shown when mixed textures & flats is disabled in the current game configuration.
Textures Browser form: PK3/Directory TEXTURES images are now shown in a separate folder in the resources tree.
Fixed, Textures Browser form: fixed a logic error when trying to select initial flat when mix textures & flats was disabled in the current game configuration (this resulted in the blank textures list after opening the form).
Fixed, Textures Browser form: resources tree showed textures count even when browsing flats.
Fixed, Textures Browser form: PK3/Directory textures took precedence even when browsing flats (this means when there were a flat and a texture with the same name, a texture was displayed when browsing flats).
Fixed, Classic modes: actor's scale set in DECORATE was ignored when rendering models.
Fixed, MODELDEF parser: in some cases, several model definitions were skipped when trying to skip the current one.
Fixed, resource management: flat and sprite TEXTURES definitions were loaded only from TEXTURES files named "TEXTURES".
Fixed/added, PK3/folder resource management: patch locations for sprites defined in TEXTURES are now checked the same way as in ZDoom (previously only the "sprites" folder was checked).
Fixed/added, PK3/folder resource management: patch locations for textures defined in TEXTURES are now checked the same way as in ZDoom (previously only the "textures" folder was checked).
Fixed, PK3/folder resource management: flats defined in TEXTURES were not added to the global Flats image list.
Fixed, PK3/folder resource management: in some cases, the image search algorithm could find flats, textures, patches or sprites in incorrect folders (for example, it could find a flat in "flats_backup" folder).
2014-10-07 00:23:02 +00:00
MaxED
a6e44dc941 Preferences Form: renamed "Scale models in visual modes" to "Stretched view in visual modes". When enabled, this setting now increases vertical scale of the world and sprites in visual mode instead of decreasing vertical scale of models. 2014-09-20 18:34:06 +00:00
MaxED
3c116da322 Reformatted debug output from previous commit so it no longer generates compilation warnings when compiling in Release mode. 2014-09-17 13:16:11 +00:00
MaxED
c6b0f38563 Fixed a crash when trying to update a vertex handle geometry.
The editor will fail more gracefully when no D3D device is detected.
In some cases the editor was constantly checking D3D device availability when minimized.
Added more DX-related debug output (only in Debug builds).
2014-09-17 12:46:47 +00:00
MaxED
2d9c439325 Sidedef texture offsets are now translated when pasting map elements from UDMF to non-UDMF maps.
Fixed: certain UDMF-only properties were not cleared when pasting map elements from UDMF to non-UDMF maps.
Fixed a bug introduced in r2043: helper objects were not updated in some cases.
2014-09-16 20:26:42 +00:00
MaxED
c7252865be Preferences: added "Vertex scale (3D)" preference, renamed "Vertex scale factor" to "Vertex scale (2D)". 2014-09-16 08:51:27 +00:00
MaxED
ad403de812 Classic modes: changed tinting of selected sprites from multiply to modulate.
Internal: more info is now displayed when a shader fails to compile.
2014-09-11 21:53:31 +00:00
MaxED
8555d75cd2 A r1959 change in ImageSelectorControl prevented inherited classes from showing properly in Visual Studio's designer.
Also made a bunch of methods static.
2014-05-20 09:09:28 +00:00
MaxED
98aefb2681 Sectors, Linedefs, Things, Vertices modes: added "Select Similar" action (available in <Mode name> -> "Select Similar..." menu), which lets you select map elements similar to currently selected ones, based on a set of settings.
Some cosmetic fixes in "Filter Selected Things" and "Paste Properties Options" panels.
2014-05-08 09:24:32 +00:00
MaxED
cf4b2d1935 Renamed Jitter mode to Randomize mode.
Randomize mode: randomized pitch, roll and scale can now be applied to things.
Randomize mode: removed "Relative" option, because results with this option enabled were almost the same as without it.
Classic modes, model rendering: selected models are now rendered using highlight color, so they no longer blend with thing rectangle/circle.
Model rendering, UDMF: scale was applied incorrectly to models with pitch or roll.
Updated documentation.
2014-05-03 14:44:59 +00:00
MaxED
9c7b8e4e3c Model rendering (all modes): UDMF scale, pitch and roll are now displayed.
Thing Edit Form, UDMF: added controls for setting pitch, roll, scale, render style, fill color, alpha, health and score.
Visual mode, UDMF: UDMF scale is now applied when rendering sprites.
Added Thing Statistics form (Edit -> View Thing Types...), which shows all loaded thing types with some additional info.
Visual mode: sprites with negative ScaleX and positive ScaleY were not rendered properly.
Classic modes: display was not updated after loading a sprite.
Current testing engine change was not saved on closing the program when no other game configuration settings were changed.
2014-04-30 10:01:22 +00:00
MaxED
9a50b38f78 Added "Full Brightness" toolbar button and "View" menu item. These call "Toggle Full Brightness" action.
Added "Make Door" menu item to "Sectors" menu.
A warning is now displayed when "Make Door" action is called without a selection.
2014-03-03 09:52:55 +00:00
MaxED
3e5f85dc8f Game configurations: added "fixedrotation" property to dynamic lights, which use the angle property as a parameter.
Maintenance: removed a ton of redundant stuff.
2014-02-21 14:42:12 +00:00
MaxED
9ac9b18e2d Hints and Draw Settings panels were not removed during map closing/switching, which resulted in duplicate panels.
The way things were rendered during dragging is now used by default in Things mode.
2014-01-17 13:48:06 +00:00
MaxED
e487a9c80a Added Draw Grid mode.
When Draw Rectangle or Draw Ellipse mode is enabled, it's settings are now shown in side panel.
Draw Ellipse mode: increased maximum number of sides to 512.
Changed the way tags are shown in Tag Selector controls. Tags without labels are now shown as a number (not "Tag N"), and tags with label are now shown as "N (label)", not "label (N)".
Tag labels are now shown in Thing, Sector and Linedef info panels.
Once again changed the way things are rendered while dragged.
Rearranged the label in PairedIntControl and PairedFieldControl (it is now behind numeric controls).
Optimized MapSet.GetSectorByCoordinates().
2014-01-16 09:32:05 +00:00
MaxED
c087d014a1 Selected things are now dragged while dragging vertices, linedefs and sectors.
Error checks: added "Check unused textures" option.
Replaced MissingTexture3D and UnknownTexture3D.
Sectors mode: restored "Lower/Raise Floor/Ceiling by 8 mp" actions.
Visual mode: in some cases sidedefs were rendered as selected when they were not.
Existing linedefs were not split while drawing new lines in some cases.
Texture and height overrides were not applied correctly in some cases.
Preferences form: "Ctrl+Alt+ScrollUp" and "Ctrl+Alt+ScrollDown" dropdown items were setting the shortcut to "Ctrl+Shift+ScrollUp" and "Ctrl+Shift+ScrollDown".
2014-01-13 08:06:56 +00:00
MaxED
c3a12ad137 Full brightness mode is now synchronized between Visual and Classic modes 2014-01-09 13:52:25 +00:00
MaxED
013865e27d Voxels can now be loaded from WAD resources.
Reverted "Delete Item" action to the way it worked in DB2.
Added "Dissolve Item" action, which works the way "Delete Item" worked in previous revisions of GZDB.
Added "Auto Clear Sidedef Textures" action, "Edit" menu and toolbar button, which toggle automatic removal of sidedef textures when floor or ceiling height is changed or when geometry is drawn, copied or pasted.
Draw Settings panel: upper/lower texture overrides can now be used.
Draw Settings panel: added 2 sets of buttons, which allow to quickly set or clear textures in current selection.
Things are now rendered behind AND on top of the grid/linedefs/vertices when they are dragged.
Redesigned hints system. They are now shown in a side panel.
Edit area auto-focusing is now disabled when script editor is open.
Texture Browser form: no texture group was selected when opening the form in some cases.
Fixed several strange/misleading text messages.
2014-01-08 09:46:57 +00:00
MaxED
46feeb422f I keep forgetting that, unlike protected methods, Actions MUST be implemented in derived classes... 2013-12-26 08:07:40 +00:00
MaxED
87ff11cc0f Things are now rendered behind grid and linedefs/vertices when they are dragged.
Added hints for Drag Geometry modes.
2013-12-23 12:02:58 +00:00
MaxED
6a51cc7c01 Classic modes: bilinear filtering was used in full brightness mode regardless of preferences setting.
Classic modes: "Paint Selection" and "Toggle Full Brightness" actions can now be used from any plugin.
Fixed possible crash in DECORATE actor color override logic.
2013-12-23 09:51:52 +00:00