Commit graph

112 commits

Author SHA1 Message Date
volte
5157dafd6a Various fixes for rotated grid functionality (PR#253 by Volte) 2019-01-16 08:44:38 +02:00
volte
a1d28e1e56 Grid rotation and alignment functionality (PR#252 by Volte) 2019-01-14 20:07:08 +02:00
ZZYZX
e91fe94794 Added string support for spotlight colors 2018-02-04 05:16:52 +02:00
ZZYZX
d8bee559dc Did some maxcode refactoring about dynamic lights; added initial spotlight support (at least they are recognized as lights now) 2018-02-03 22:31:43 +02:00
ZZYZX
748fe9e2e5 Fixed: inheritance from game configuration for dynamic lights; Fixed: visual representation of inherited lights (reported by Nash); Fixed: inherited thing arguments from game configuration; Added: //$ClearArgs for clearing inherited arguments. 2017-03-02 00:21:08 +02:00
ZZYZX
ebd7fb1a57 Upgrade to VS2015 (14.0) 2017-01-15 00:35:40 +02:00
MaxED
cd854779e8 Fixed, Classic modes, UDMF: grid size didn't go below 1 mu. when zooming in when "Dynamic grid size" option was enabled.
Internal: restored GridSetup DB2 compatibility.
Updated ZDoom_ACS.cfg (SetFogDensity, SetSectorGlow).
2017-01-06 13:01:59 +03:00
MaxED
be7ba0a05d Added: minimum grid size is now 0.125 instead of 1. 2016-12-27 16:59:20 +03:00
MaxED
94dedf9aa9 Added support for USEACTORPITCH and USEACTORROLL MODELDEF flags.
Changed: LOKCDEFS keys are now sorted alphabetically.
Fixed, MAPINFO parser: blocks inside map definition block were parsed incorrectly when using new MAPINFO format.
Fixed, rendering: custom MODELDEF scale was applied incorrectly when "Stretched view in visual modes" option was enabled.
Updated ZDoom_DECORATE.cfg.
Updated GZDoom_MODELDEF.cfg.
2016-07-17 00:00:29 +00:00
MaxED
ec9c3a71f9 Added: preview sprites are now generated from voxels. Those are used as previews and when model rendering is disabled.
Fixed: voxel support logic was outdated, which in some cases resulted in voxels not being loaded and in some weird behaviour when trying to change pitch/roll of associated things.
Updated sprites lookup logic. Now it correctly handles sprites named like NNNNA0B0.
Fixed: in some cases DECORATE parser was unable to correctly detect sprite name & frame(s) block.
Updated ZDoom_ACS.cfg.
Updated ZDoom_DECORATE.cfg.
2016-07-11 22:13:43 +00:00
MaxED
04de976acf Added, Visual mode: added support for FLATSPRITE, ROLLSPRITE, WALLSPRITE and DONTFLIP sprite rendering flags. Removed the older GLOOME-specific implementation.
Changed, "Align Things to Nearest Linedef" action: the action can now also align things with FLATSPRITE and WALLSPRITE flags (previously only things with attached models were aligned).
Changed, "Align Things to Nearest Linedef" action: the action can now align things to the middle part of double-sided linedef, if it has a middle texture assigned.
2016-07-04 18:25:47 +00:00
MaxED
25947e59f7 Added "Automap Mode" plugin by Boris Iwansky. 2016-06-16 22:05:17 +00:00
MaxED
3d2d9e21ef Changed, Classic modes: displayed mouse map position coordinates are now snapped to current grid size.
Updated model pitch handling to match current GZDoom implementation.
Fixed imprecise vertex coordinates generated by Draw Ellipse mode.
Fixed a resource loading exception when opened map file wad was located in the root of a Directory resource.
Internal: changed output of all InterpolationTools methods from int to float.
Fixed, Internal: InterpolationTools.InterpolateColor() delta usage was inverted.
2016-06-03 20:22:07 +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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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