Commit graph

121 commits

Author SHA1 Message Date
Magnus Norddahl
e3740033fc - rename classes with D3D in them 2019-08-09 23:22:16 +02:00
Magnus Norddahl
407cc703b8 - implement enough of BuilderNative for GZDB to successfully run without crashing 2019-08-09 23:15:48 +02:00
Magnus Norddahl
690a4d2e83 - remove DataStream class 2019-08-08 20:06:35 +02:00
Magnus Norddahl
c665bfca86 - remove SlimDX namespace 2019-08-08 18:24:33 +02:00
Magnus Norddahl
8f15e8d5e7 - Simplify code 2019-08-08 07:10:35 +02:00
Magnus Norddahl
3cff90d716 - remove SlimDX.Direct3D9 namespace 2019-08-08 03:51:21 +02:00
Magnus Norddahl
1be047d316 - Simplify D3DDevice 2019-08-08 03:19:11 +02:00
volte
821016760b Fix for rotated grid algorithm causing a freeze in some circumstances (PR#255 by Volte) 2019-01-28 01:27:14 +02:00
ZZYZX
5c42035731 Fixed unused variable warnings; fixed compilation error in Renderer2D 2019-01-19 10:02:54 +02:00
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