Commit graph

97 commits

Author SHA1 Message Date
MaxED
698f57b2f1 Fixed: since we are now using Dictionary in WADReader.GetDecorateData, all names should be unique. 2014-10-26 20:11:07 +00:00
MaxED
d4cfdd78c6 Fixed, DECORATE parser: we should use full path when reporting wad DECORATE parse errors. 2014-10-23 13:27:20 +00:00
MaxED
6df641564c DECORATE parser: parse errors are more detailed now.
Fixed, DECORATE parser: error status was not cleared when switching to different resource.
Fixed, DECORATE parser: fixed a parse error when DB2-specific actor properties (like "//$category") were located outside of actor's scope.
2014-10-23 12:48:31 +00:00
MaxED
eb9781b339 Optimization, PK3: approximately 2x performance increase during background resource loading (~7 seconds vs ~16 seconds in r2083, tested on Enjay's Genetech MAP01).
Fixed, PK7: fixed a potential crash when using several PK7 resources with overlapping files.
2014-10-15 08:36:17 +00:00
MaxED
7a9e01c098 Changed, Directory/PK3/PK7: on second thought, we don't need to load textures/flats from all possible locations (does anyone really needs to see sprites and graphics in the texture browser?), so this logic now only works when looking for patches.
Game Configurations: added "Custom Ambient Sound (no gravity)":14067, added a couple of missing parameters to other sound-related things.
2014-10-13 09:32:55 +00:00
MaxED
0cfb0207fb Fixed, Directory/PK3/PK7 image loading: we should use DoomTexture as expected format when loading flats from non-"Flats" folders. 2014-10-12 22:22:36 +00:00
MaxED
10da128475 Changed: both DoomTexture and DoomFlat formats should be checked when determining an image format if "Mix textures and flats" flag is set.
Changed: "imgz" images are now skipped while loading textures.
2014-10-12 21:59:16 +00:00
MaxED
d8df65b2c1 More fixes to PK3/Directory patch and texture search/creation logic. 2014-10-07 09:56:36 +00:00
MaxED
7c048ece38 More fixes to PK3/Directory patch and texture search logic.
Fixed, Textures Browser form: fixed another case of the blank textures list after opening the form.
2014-10-07 08:56:21 +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
e6b997a7da MODELDEF parser: fixed a crash when trying to add a model definition when another one was already created for the same actor.
ZDoom_DECORATE.cfg: added A_SetSpeed definition.
2014-09-22 00:16:42 +00:00
MaxED
c462eb7bfd Fixed a crash introduced in r1972 when trying to add second patch with the same name to a texture.
"Texture 'XXX' is double defined in resource 'YYY'." warning is no longer displayed if a TEXTURE1/2 texture contains a patch with the same name as the texture.
2014-07-15 08:08:57 +00:00
MaxED
a485b40bee "Texture 'XXX' is double defined in resource 'YYY'." warning is no longer displayed if a texture contains a patch with the same name as the texture. 2014-07-11 11:00:24 +00:00
MaxED
755a554964 When "MixTexturesFlats" flag is set in a game configuration, textures defined in TEXTURES or placed between TX_START and TX_END markers must override "regular" flats (ZDoom behavior).
Updated documentation.
2014-07-07 14:48:29 +00:00
MaxED
cee185c757 When "MixTexturesFlats" flag is set in a game configuration, textures defined in TEXTURE[S|x] must override "regular" flats (ZDoom behavior). 2014-07-07 08:42:46 +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
a61bba2536 UDMF map format: increased maximum supported texture name length to 2048.
Preferences: added "Capitalize texture names" option (located in Preferences -> Appearance -> Additional options). When disabled, the casing of displayed texture names will match filenames for textures loaded form TEXTURES or pk3/pk7/folder resources.
Textures Browser: added support for displaying long texture names.
Errors list is now cleared when reloading resources.
Visual mode: added basic support for sector slopes (no UI for that feature yet).
2014-05-19 13:33:38 +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
dddf91e56e Added "Paste Properties Options" form, which lets you pick properties for 'Copy Properties' and 'Paste Properties' actions.
Removed CopyPasteSectorProperties plugin, because built-in "Copy/Paste Properties" actions do the same job, but better.
2014-04-09 10:16:33 +00:00
MaxED
0d6f9a2594 WADReader: another fix to patches outside of patch ranges detection logic. 2014-04-08 11:09:05 +00:00
MaxED
0314490c17 WADReader: patches outside of patch ranges were not detected in some cases. 2014-04-03 12:57:02 +00:00
MaxED
7faf6bc13e Linedef Edit Form, Sector Edit Form: when several map elements with different textures are selected, the "texture stack" icon is shown in the texture selectors instead of the "missing texture" icon.
Error Checker mode: added "Check missing flats" check.
Error Checker mode: fixed several descriptions. 
Sprite patches for sprites defined in TEXTURES are now loaded from Sprites namespace.
Some of my older texture alignment code didn't work properly when strict texture/flat handling ("mixtextureflats" game configuration flag set to false) was enabled.
Fixed some incorrect checks for missing texture ("-").
2014-03-05 09:21:28 +00:00
MaxED
2d874973bf Renamed "Reload MODELDEF" action and "Tools" menu item to "Reload MODELDEF/VOXELDEF".
Fixed a crash when using "Reload GLDEFS" and "Reload (Z)MAPINFO" actions when GLDEFS / MAPINFO file was moved or renamed after opening the map in the editor.
2014-03-03 13:40:29 +00:00
MaxED
0369c969d1 According to dotnetperls.com, "new Dictionary<string, [anything]>(StringComparer.Ordinal)" works 17% faster than "new Dictionary<string, [anything]>()", so let's stick that everywhere and see what happens :)
Draw Curve Mode: added settings panel.
Sectors mode: added "Make Door" button to the toolbar.
Swapped Side panel and Info panel z-order. 
Interface: split toolbar into 3 separate toolbars. All toolbar buttons are now viewable at 1024x768.
Interface: grouped stuff in "Modes" menu a bit better.
Interface: added "Draw [stuff]" buttons to modes toolbar.
Interface: reorganized main menu. Hope it makes more sense now.
API: added General.Interface.AddModesButton() and General.Interface.AddModesMenu(), which can be used to add buttons to specific group in "Modes" toolbar and menu items to specific group in "Modes" menu, so actions, which behave like an editing mode, but are not part of one can be added there.
2014-02-26 14:11:06 +00:00
MaxED
21889a98e7 Default thing arguments were not set when creating a new thing, only when changing thing type in Edit Things window. 2014-02-21 15:24:54 +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
592887a086 Configurations: increased game configuration loading speed (in previous builds it took ~650 ms. to load a single game configuration, now it takes ~120 ms. to load all 64 of them). As a side effect, New\Open Map Options, Map Options and Game Configurations windows are now opened noticeably faster. The editor starts up a bit faster as well.
Configurations: all 64 game configuration are now available by default.
Game Configurations window: game configurations can now be disabled. This setting is mostly cosmetic. When a game configuration is disabled, it won't be shown in "game configuration" dropdowns in New\Open Map Options and Map Options windows. If a map's .dbs file specifies a disabled configuration, it will be picked as a map configuration anyway.
Linedefs mode: vertex insert preview logic used Highlight range instead of Stitch range (which is used when draw mode engages).
Visual mode: double-sided middle textures were not selected when using "Select" action with "with same texture" modifier.
Textures: some optimizations in patch blending code.
ZDoom ACS script configuration: added definitions for StrLeft, StrMid and StrRight functions.
2014-02-18 14:04:14 +00:00
MaxED
79dcaca457 Added Import Terrain mode (Create -> Terrain from Wavefront .obj)
Draw Settings panel: added "All" buttons to "Fill Selection with Textures" and "Remove Textures form Selection" groups
Export to .obj: fixed a crash when trying to export an unsaved map.
Texture preview are now created ~25% faster.
2014-01-30 14:52:08 +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
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
47a84ad20f Added VOXELDEF support.
Visual mode: added "Match Brightness" action.
DECORATE parser: actor names, which contain "+" and "-" symbols, are now parsed correctly.
Fixed an error in lump ranges creation logic.
Cosmetic fixes in various warning/error messages.
Updated documentation.
2014-01-03 10:33:45 +00:00
MaxED
0366f13c9a Flat textures were loaded incorrectly in some cases.
UDMF map parser should work ~35% faster now.
Texture browser form: keyboard focus was not updated when switching between textures using Tab key.
"Graphics" folder is now checked when searching for texture patches.
Various cosmetic changes here and there.
2013-12-20 09:24:43 +00:00
MaxED
ae56aad3b7 Hints panel was improperly resized in some cases.
Info panel was not updated after leaving Visual mode.
Moved hints logic to ClassicMode, so hints can be displayed by any plugin.
Visual mode: dynamic light animation was not working.
Minor performance improvements in Actor, Configuration, UDMF and TEXTURES parsers.
2013-12-18 09:11:04 +00:00
MaxED
44bf0b9588 New angle control logic was behaving incorrectly in some cases.
Angle control (the newer, photoshop-like one): left-clicking inside the control now clamps angle to 45-degree increments. Right-clicking inside the control sets precise angle.
Thing Edit Form: replaced angle control with newer one.
Classic modes: fixed minor rendering artifacts when drawing thing direction arrow.
2013-12-04 13:27:34 +00:00
MaxED
bf2f520a8e Fixed a crash when opening Thing Filters form when non-UDMF map was loaded.
Fixed a possible crash when rendering thing arrows in classic modes caused by incorrect vertex buffer size calculation.
Reverted changes to texture\flat access when "mixtexturesflats" option is set to true in game configuration.
2013-12-03 10:50:33 +00:00
MaxED
d9439850f7 Error checks: PlaneAlign action is now taken into account when checking for missing upper/lower textures.
Several fixes in flat/texture/patch loading and precedence. Texture loading will no longer fail when there's a texture and a flat with the same name.
2013-12-02 15:02:01 +00:00
MaxED
7f775bbbd2 Warning about missing DECORATE actors was shown twice. 2013-09-16 14:07:12 +00:00
MaxED
fc57c3e331 Replaced massive amount of spaces with (massive amount of tabs / 4) 2013-09-11 09:47:53 +00:00
MaxED
ead2521451 Sectors mode, UDMF: Create Brightness Gradient action can now work in "Light" and "Fade" modes.
Visual mode: added support for "fogdensity" and "outsidefogdensity" MAPINFO properties.
Sector Info panel now shows the number of sector's sidedefs as well as light and fade colors (UDMF only).
UDMF: Sector and sidedef flags are now copied/pasted when using "Copy Properties" and "Paste Properties" actions.
Fixed: in some cases default texture overrides were used even when corresponding option was disabled.
Sector Edit form: light and fade values were not saved when a value was pasted/entered into text box.
Sector Edit form: "reset value" button was not shown for light and fade values when selected sectors had different light/fade colors.
Reverted Open Map form changes from previous commit (my assumption that map marker is always empty was not correct...)
Updated documentation.
2013-09-11 08:49:45 +00:00
MaxED
8a0ca0e650 Visual mode: added "Auto-align Textures to Selection (X)", "Auto-align Textures to Selection (Y)" and "Auto-align Textures to Selection (X and Y)" actions.
"Snap Map Elements to Grid" mode now tries to fix invalid geometry after vertex snapping.
Vertices mode: in some cases not all vertices were removed when deleting vertices.
Removed "Load GZDoom light definitions" from preferences. If you want to use GZDoom's GLDEFS definitions, add "lights.pk3" as a resource.
Visual mode: fixed a crash when toggling GZDoom Geometry Effects (Tab)
Fixed sector bounding box calculation error.
Renamed "Edit -> Grid Setup..." to "Edit -> Grid and Backdrop Setup..."
Updated documentation
2013-09-03 09:34:28 +00:00
MaxED
7ba352216d Visual mode: fixed a crash when trying to load non existing sprite, defined in configuration or via "//@sprite" parameter in DECORATE.
MissingThing icon is now used when the editor is unable to load thing sprite.
An error is added to error logger when the editor is unable to load thing sprite.
2013-08-21 10:45:54 +00:00
MaxED
f35e39de01 Linedef info panel: texture preview was not updated in some cases.
Visual mode: fixed major slowdowns and possible out of memory exceptions when viewing a map with lots of missing textures.
2013-08-05 13:46:43 +00:00
MaxED
3890c4a7c8 Fixed a crash when reloading resources after removing a resource.
Visual mode: rendering was broken on video cards without Shader Model 2.0 support.
Engines list was not updated after changing engine in Test button's drop down.
2013-08-05 13:03:08 +00:00
MaxED
993328b57b Textures with names starting with "-" were not processed correctly.
Textures were not loaded properly from PK3/PK7 archives.
Visual mode: restored ability to remove textures using Delete action.
Visual mode: fixed several bugs in Cut/Copy/Paste things actions.
Visual mode: vavoom style 3d floors were not displayed properly.
Visual mode, 3d floors: added support for "RestrictLighting" (2) flag.
Visual mode, 3d floors: inner sides of 3d floors with "swimmable"/"render inside" flags used incorrect brightness value.
2013-07-31 12:38:47 +00:00
MaxED
12d9e1b08f Fixed several crashes when trying to load not existing images and models from folder/pk3/pk7 resources. 2013-07-30 09:25:27 +00:00
MaxED
cf3d416967 Renderer now works much faster in 2D modes.
Textures now load up to 2x faster when "mix textures and flats" flag is set in game configuration.
TEXTUREx/TEXTURES: texture will now be created if at least one of it's patches is loaded.
Visual mode: fixed a crash when "Slope floor to here" (9500) or "Slope ceiling to here" (9501) things were not inside sector.
Fixed: flats were not loaded form wads inside Directory and PK3/PK7 resources.
Sector Info Panel, Linedef Info Panel: texture size was shown for unknown textures.
2013-07-29 08:50:50 +00:00
MaxED
e5a9bac2ad Added "File -> Open Map in current WAD" command (default shortcut is Ctrl-Shift-O).
Fixed some errors in non-UDMF <-> UDMF map conversion.
Updated ISS setup script (not tested).
Removed some unused variables.
2013-07-23 14:25:03 +00:00
MaxED
4fe2676e11 Looks like first 3 bytes of JPG image can be treated as signature, not 4. 2013-04-12 11:06:57 +00:00
MaxED
8cf9e651cc Removed a metric ton of unused "using" directives from Core. 2013-04-11 11:04:16 +00:00
MaxED
c04a65f104 Even more fixes in Vertex and Linedef deleting process.
Texture browser can now show flats/textures only.
2013-03-26 12:31:07 +00:00