2.12.0

2024-08-17

  • support Blender 4.2

    • require asset update due to new Thin Film material properties
    • require blend file update accordingly too
      • when updating legacy blend files, take existing material overrides and under-coating into account too now
    • remove ability to switch between (legacy) alpha blend and hashed alpha methods
      • normal mapped decals will always use dithered, and info decals use blended surface render method now
    • update transmissive material matching for Eevee Next related API changes
  • Decal Creation and Decal Baking

    • directly expose CPU/GPU selection in the side bar
  • update example .blend files for Blender 4.2, countering Blender's automatic node tree changes resulting in black decals

    • Example_Decal_Basics.blends
    • Example_Decal_Asset.blend
    • Example_Decal_Bake.blend
    • Example_Trim_Sheet_Asset.blend
  • general code cleanup

2.11.2

2024-04-08

  • ImportTrimsheet
    • fix exception in Blender 4.0 and 4.1 due to change in node input names
  • fix new manually added atlas not appearing among registered atlases until Blender re-start
  • fix new manually added trim sheet not appearing among registered libs until Blender re-start
  • update integrated updater to expose the Re-Scan button even if no update is found yet

2.11.1

2024-03-28

  • fix issue when updating decals in Blender 4.1 where decal materials names in decal .blend files would end up with index suffix
  • Slice, Gpanel, Epanel, Adjust tools
    • add fallback to handle appending incorrectly saved decal materials, that were updated in Blender 4.1
  • UpdateDecalLibrary / BatchUpdater
    • in Blender 4.1 avoid adding Auto Smooth mod on Decals
  • Insert / BatchInsert
    • remove Auto Smooth mod, when Blender has added it (as it does so automatically on Decals previously updated in Blender 4.0, or in Blender 4.1 with DM 2.11.0)
  • fix issue, in custom updater, when Blender preferences are auto-saved

2.11

2024-03-19

  • support Blender 4.1
    • fix decal creation issues due to API changes in regards to Auto Smooth and custom normals
  • addon preferences
    • place Get Support button at top of addon prefs
    • add custom updater
      • NOTE: since it's only introduced now in 2.11, it will only be of use for upcoming releases, so can't be used to install this very 2.11 update yet
      • allows for very easy addon update installation from .zip file, and from inside of Blender, instead of manually from the file browser
      • finds matching .zip file(s) in home and Downloads folder
      • allows selecting one of them them or manually selecting a file in any other location
      • extracts the file to a temporary location, and installs update when quitting Blender
      • like a manual update installation from the filebrowser, this maintains previous addon settings and custom keys
      • see installation instructions for details
      • supports - and defaults to - keeping the current assets to prevent accidental loss
  • handlers
    • rework when and how handler logic is executed
    • add asset drop cleanup handler (previously in MACHIN3tools) to automatically unlink decal backup objects after dropping an asset using decals with backups from the asset browser
  • fix exception when auto matching materials to 'None' or 'Default' pseudo materials, while material override is in use

2.10

2024-01-22

  • deep refactor of decal and trimsheet asset registration and validation
    • comprehensively analyze the entire assets location and sort and categorize everything
  • UpdateDecalLibrary tool
    • introduce universal update op, that deals with all versions 1.8 - 2.5
    • keep custom subset component inputs, that may have been stored in a library decal .blend file
    • support fixing and/or updating ambiguous libraries (with multiple version files)
    • support updating libraries, where each decal's version differs from the indicated library version (due to user-manipulated version file)
    • deal with various potential update failure cases and support skipping individual decals if something goes wrong
      • decal.blend, decal.png or any of the supplied textures are corrupt/0kb files
      • any expected texture is missing
      • decal object can't be found in the decal.blend
      • decal material can't be found in the decal.blend
      • decal object and decal material version mismatch
      • decal version not set on decal object or decal material
      • decal version and library version mismatch, due to user-manipulated version indicator file
    • move skipped decals into dedicated Decals_Skipped or Trims_Skipped folders in the assets root directory
      • and generate a log.txt file detailing why a specific decal was skipped
    • automatically remove clutter (files or folders in locations were they shouldn't be)
    • support updating empty libraries
  • UpdateBlendFile tool
    • in addition to the fading labels drawn in the viewport pointing out the presense of legacy decals in the blend file, now list them all in the update panel of the 3d view's sidebar
      • also indicate whether these decals are actually registered, and so update-able to a new version
    • remove ALT path-based fallback method
    • support automatic re-setup of subset components in trim sheet materials, when the default color mix node approach was used
  • BatchUpdate tool
    • automatically remove clutter (files or folders in locations were they shouldn't be)
    • deal with all kinds of potential failure scenarios more gracefully than before, instead of throwing an exception
    • when finished pop a single message covering all the successful and failed updates
    • write this into a log file in the DECALmachine/logs folder as well
  • validate a decal or trimsheet is current, and not a legacy decal or trimsheet when using
    • Adjust Decal tool
    • Re-Apply tool
    • Project tool
    • Insert and Batch Insert decal tools
    • OverrideMaterials tool
    • Material Match tool
    • any other tool utilizing material matching and deduplication
    • TrimUnwrap tool
    • InitTrimSheetMaterial tool
    • Setup Subset (Trimsheet) tool
  • TrimUnwrap tool
    • fix panel trim unwrapping sometimes affecting UVs outside the selected faces due to a bug introduced in Blender 4
      • this bug has been fixed in Blender in early January, but is not yet released
      • the workaround introduced here now will work regardless
  • Trimcut tool
    • fix issue in Blender 4, due to legacy face map code
  • fix importing of 2.9 decal or trimsheet libs in Blender 4
  • addon preferences
    • show info box about skipped (at update attempt) decals, if present
    • add Declutter tool, if any clutter is detected
    • Quarantine tool
      • simplify into a single op call, for removal of all qurantine-able assets
      • no longer consider ambiguous libraries as quarantine-able, they can now be updated/fixed by the UpdateDecalLibrary tool or the Batch Updater
      • recognize obsolete libraries as such, and quarantine them accordingly
        • these are pre-1.8 libraries, that can't be user-updated anymore, they were seen as just corrupt previously
      • generate log file for each quarantined library
      • at the end pop a single message covering each quarantined librarry
      • write quarantine log file into DECALmachine/logs folder
    • declutter when changing the assets path
    • explain and show how to get support directly in the addon prefs, when any issues are detected in the assets location
      • hint: use the GetSupport tool, and get in touch via email
  • GetSupport tool
    • generate extensive "health check"-like output about assets location
      • include details about any legacy, next-gen, obsolete, corrupt, invalid, skipped and quarantined assets, as well as any clutter
      • include shortened versions of _Skipped and _Quarantined libary log files

2.9

2023-12-16

  • introduce new asset versions for Blender 4
    • NOTE: in Blender 3.6 DM still uses the now legacy assets versioned 2.5
    • Blender 4.0 requires an user-initiated asset update to version 2.9, this is done from the addon preferences, after addon activation, using the Batch Updater
      • add Update25DecalLibrary tool
      • add Update25BlendFile tool
    • the updated assets in Blender 4.0
      • make use or new node panel feature on decal and trimsheet groups
      • use updated decal note tree for DECALmachine's new under/over coat feature
  • draw 5 second fading warning labels when loading .blend files containing legacy decals or trim sheets
    • when you see this, you should run the update blend file tool(s)
    • can be disabled the addon preferences
  • Batch Update Libraries tool
    • support updating 2.5 assets to 2.9 in Blender 4.0
    • by default don't re-render asset thumbnails anymore
      • hold ALT key (when clicking initially) to force re-rendering of decal thumbnails
    • at the end clear all update library paths in the side bar panel
  • Trim Sheet Creation
    • add snapping support with 3 snapping types, when setting up trims
      • custom snapping (# of divisions)
      • pixel snap (sheet resolution)
      • geometry (reference mesh)
  • add Material Override feature
    • based on suggestion and preliminary work by Justo FigueroaThank you!
    • override materials of selected objects and their decals
      • optionally override decal subsets and emission too
    • when overriding materials, an Override Node Tree is created, that determines the properties of the override material, that is used
      • the override node tree's outputs are directly exposed from the Defaults section of the main DECALmachine sidebar panel in the 3D View, and can be tweaked without going to the shader editor
      • there are white, grey and metal presets for quick access
      • the DM created override node tree can be edited (make sure to set a fake user if you do, so your changes are remembered!)
      • or any other user-created override node tree can be selected and used
    • undo the override per-object, by running the tool with the ALT key pressed, or by toggling it in the redo panel
    • or undo it globally simply by clearing the override node tree selector
  • add ability to Under/Over Coat Decals (Blender 4 only!)
    • decals sitting on Principled BSDF materials using a Coat, can be made to appear under or over said Coat
      • meaning the decal normals either create an impression on the parent objects' coated surface, or they don't
    • Over Coat it the default behavior
    • fully support custom Material Overrides, with Coat Outputs
  • Material Matching
    • support matching new BSDF shader parameters in Blender 4.0
    • support matching Material Overrides
    • support Under/Over Coating
  • Decal Baking
    • expose cage extrusion distance, based on work and tests by memThank you!
      • this should help with and offer more control when dealing with "baking through" artifacts
    • lower default and minimum ray distance to 0.0001
  • Decal Creation
    • prevent characters such as ?,/ \ in decal names leading to invalid file names
  • Adjust Decal tool
    • support (keep) material overrides when cycling through panel decals
    • when finishing or canceling, remove unused panel decal materials, that were created while cycling
    • support (keep) MACHIN3tools 1.7unreleased at time of this release bevel shader setup when cycling panel decals
  • ReApply tool
    • avoid re-enabling normal transfers, if previously disabled by the user
    • for panel decals, enforce Nearest Corner and Best Matching Face Normal loop mapping for panel decals instead of Nearest Face Interpolated
    • this works well even for panel decals going across hard edges
  • addon preferences
    • change addon category to 3D View
    • add option to not move assets when changing assets location
    • redo how assets are moved when changing the assets path completely
      • when changing the path to a location, that already has a decal lib of the same name as a library that is moved, move the old one to a separate collisions folder, that is not being registered by DM
        • this will avoid overriding libraries, and so avoid creating libraries with mixed version files (called ambiguous decal libraries)
    • when (re)loading libraries
    • verify the complete assets path foldeer structure (create expected folders, if something is missing)
    • force re-checking for legacy/collided/quarantined libraries
    • for libraries that failed to register due to being ambiguous, corrupt or invalid
      • allow moving them to _Quarantine locations accordingly
        • this then removes the previous warning accordingly, and offers a way to investigate them in the file browser
    • introduce registration_debug setting to control whether addon (un)registration confirmation is written to the terminal
    • reshuffle layout slightly, moving asset loader settings to the left as well
    • simplify and generalize how some of the various settings are drawn
    • add CURVEmachine and HyperCursorunreleased at time of this release links to about section
    • draw thank you for your support message directly above the addon preferences, instead of in a popup
      • for 5 minutes, then disappear forever
  • PIL / pillow
    • install version 10.1 now instead of 9
      • NOTE: with a previous version installed already, nothing needs to be done
    • fix issue in version 10
  • GetSupport tool
    • add info about asset collisions and quarantines when generating system_info.txt file
  • ensure modal HUDs are only drawn on active 3D view, not others
  • slight 3D View side bar layout tweaks
  • fully support Blender 4.0
    • drop dpi arg in blf.size()
    • support new shader names
  • silence module reload debug output for good

2.8.1

2023-08-20

  • fix panel trim unwrap issues in Blender 3.6

2.8

2023-06-29

  • bump minimum Blender version to 3.6
  • DrawTrim tool
    • fix HUD not following mouse
  • PanelCut tool
    • update how meshcut edges are stored - for (optional) later removal via RemoveMeshCuts tool - on the mesh
    • use new system clock based timer modal
  • update HUD and VIEW3D drawing
  • take system's UI scaling into account for all HUDs
  • preferences
    • add show_sidebar_panel toggle
  • update about page
  • remove bgl completely

2.7.2

2023-04-21

  • fix trim/atlas gizmos being drawn as ellipses in Blender 3.5
  • fix decal orientation when placed on non-uniformly scaled object

2.7.1

2022-12-30

  • fix issues introduced by 3.4's new MIX node
    • update SetupSubsets op (for trimsheet materials)
    • update decal to trimsheet material matching
    • fix related BakePreview exception

2.7

2022-11-25

  • raise minimum version to Blender 3.3 LTS
  • Adjust tool
    • fix panel trim decals created from Info Trim Sheets not being accessible for Panel Cycling via Adjust
  • Decal Creation
    • optionally create float (16bit) normal maps
    • it's experimental, enable it in addon preferences > Decal Creation tab
    • NOTE: Atlases created from there will still only use 8-bit normals
  • tweak decal library layout in Pie menu, adjusting the icon width accordingly (proxeIO)

2.6.5

2022-08-06

  • fix modal HUDs being drawing off-screen in Blender 3.2.2

2.6.4

2022-06-08

  • fix material matching in Blender 3.2

2.6.3

2022-04-30

  • fix rare issue with sluggishness of addon preferences caused by legacy library check
  • add thank you note to addon preferences

2.6.2

2022-04-24

  • fix MacOS issue when registering Atlases caused by .DS_store files
  • a few small tweaks and fixes

2.6.1

2022-03-15

  • fix atlas creation in Blender 3.1
  • fix decal-from-text creation in Blender 3.1

2.6

2022-03-09

  • support Blender 3.1
  • further harden asset registration by introducing concept of corrupted libraries
    • corrupted libraries are libraries containing non-decal folders
    • prevent registering and updating them
    • GetSupport tool
      • indicate if a library is corrupted
  • Project
    • fix issues when target object scaled up a lot due to surface distances being returned in the object's local space
  • update PIL/pillow to 9.0.1

2.5.1

2021-12-18

  • fix Bake Preview in Blender 3.0
  • fix adding Decal to existing Atlas in Blender 3.0
  • fix issues relating to Blender 3.0's change in keymap property representation
  • fix issues relating to Blender 3.0's None type material previews
  • fix visual bug due to missing AO clamping in Decal Node Group
    • update supplied assets accordingly
    • update Templates so newly created Decals are fixed
    • add Fix AO Clamping debug tool, to update existing users assets

2.5

2021-11-25

  • support Blender 3.0
  • in Blender 3.0, introduce Decal and Trim Sheet Asset Update
    • add Update21DecalLibrary tool
    • add Update21BlenderFile tool
    • update BatchUpdate tool
  • update Validate tool
  • further harden asset registration
    • add additional system console output, if assets fail to register
  • make Decal and Trim Sheet material deduplication more efficient, improving scene load/update performance
  • properly deduplicate Trim Sheet materials, when initiating them on meshes without existing materials
  • improve MyDecals library collision handling when changing assetspath
  • improve RemoveOrphans tool
  • improve GetSupport tool
  • addon preferences
    • add option for legacy line smoothing
    • add warnings in addon prefs, if assets fail to register
  • remove legacy code for Blender pre-2.93
  • drop bgl module use for view3d drawing (except for legacy line smoothing)

2.4.1

2021-09-10

  • TrimCut
    • adapt to 2.93.4 knife project breaking change
  • PIL Installation
    • raise PIL version to 8.3.1
      • on some macos versions 8.1.0 just wouldn't install due to missing libjpeg dependency
    • install wheel before installing pillow
  • fix issues on some linux systems

2.4

2021-07-24

  • bump minimum blender version to 2.93 (LTS)
    • can be seen as suggestion for now, 2.83+ is still good, but be prepared to update if any issues arise
    • add version warning to prefs for Blender versions smaller than 2.93
  • add Transfer UVs tool (side panel tool)
    • transfer decal parent's UVs to selected decals
    • transfer image textures directly connected to decal parent's Principled BSDF node to selected decals' materials
  • Decal Creation
    • support info decal names from file name for info decals created from PNGs
    • support skipping the automatic decal index, that's normally added to the front of the decal name
      • this can then result in two kinds of conflicts
        • without the index, an existing decal folder with the name of the to-be-added decal exist already
        • when adding multiple decals the decal name could be a duplicate and so only the first of the duplicates will be added
      • for both there are warnings in the creation panel
      • and both cases will be skipped by the AddDecalToLibrary tool
        • if any are skipped, there will be a popup message pointing it out
    • support storing specific subset material component in the decal asset blend
    • for Simple, Subset and Panel decals: skip normal flattening if enabled, but object is not smooth shaded
    • ensure user is returned to original scene, when decal creation is finished
  • Creation Panel
    • add ability to open selected user-decal(unlocked) lib in the file browser
    • improve dealing with cases where no user-decal libs are present
  • Baking
    • ensure user is returned to original scene, when decal creation is finished
  • make decal library visibility accessible from the 3D view via the pie menu
    • add 10 customizable visibility presets, see tooltips for details
  • support hiding panel decal libraries from the Adjust tool's ability to cycle through individual panel decals
    • by default have "panel scrolling" disabled for the Example Sheet's panel trims
    • support creating panel decals without materials, when all registered panel decals are hidden from "panel scrolling"
  • Slice, EPanel + GPanel tools
    • properly name the panel decal object and mesh, even when no decal material can be applied
  • make addon and asset registration much more robust
    • allow addon registration without ANY decal and trim sheet libs present
      • users can now manually remove the entire assets path or any of it's subfolders and DM will still come up fine
    • disable assets path reset when user-set external assets path doesn't contain valid libraries as it's no longer required
  • Atlasing
    • improve panel decal pre-packing logic
    • fix atlas repack issue, introduced in 2.3
  • Adjust tool
    • add setting in addon prefs to require ALT key when adjusting decal height to prevent accidental changes
  • GPanel tool
    • fix rare issue with gpencil NaN points
  • fix material matching/deduplication to DEFAULTWHITE and DEFAULTMETAL materials
  • change default decal height to 0.9998, slightly more surface distance to minimize clipping
  • collapse modifiers in all supplied decal assets
  • Update18DecalLibrary + Update20DecalLibrary tools
    • improve polling
  • replace previous parenting and unparenting logic
  • improve some terminal output for Windows users
  • rename Init Generated UVs tool to Init Generated Coords

2.3

2021-03-24

  • Decal Creation (Advanced)
    • support forced UUIDs for decal creation, allowing for iterative decal creation from geometry where each new decal will use the same UUID that's stored on the active source object
  • Atlasing
    • fix unwrapping of trim panel decals when packed in REPEAT mode
  • Insert
    • prevent exception when encountering custom, user-added texture in decal asset file (not recommended)
  • ReApply
    • fix typo causing rare exception
  • fix issue with PIL installation

2.2

2021-02-27

  • add SweepDecalBackups tool
    • clean scene from decal backups after appending objects with projected and/or panel decals
  • Decal Creation
    • use GPU if that's the render device set in the current scene
    • draw render device indication in panel and print it to the terminal
    • prevent residue LIBRARY_DECALS causing any problems when creating new decals
  • Project, Slice, PanelCut tools - use FAST solver in 2.91+
  • add basic statusbar info for all modal ops
  • PIL
    • support installation on python 3.9.1
    • use version 8.1.0 going forward
    • fix issues with extremely large bakes or atlases
  • force-reset assets path after manual installation with external assetspath, if no valid libraries can be found
  • fix 2.93 activation issues and layout exceptions due to change in bpy.props representation before registration
  • update decal resources
  • update license

2.1

2020-11-27

  • Decal Assets update to 2.1
    • add emission strength input for decal and trim sheet node groups (including for Blender 2.83 and 2.90)
    • replace Texture Coordinates(UV) node with UVMap node in all parallax node trees
    • add Update20DecalLibrary tool
      • update 2.0.x decal and trim sheet libraries libraries to 2.1
    • update Update18DecalLibrary tool
      • update 1.8-1.9.4 decal libraries to 2.1
    • add BatchUpdate tool
      • update all 1.8-1.9.4 or 2.0.x legacy decal or trim sheet libraries in the assets path in one go
      • directly from the addon prefs, or from the update panel
    • support importing 1.8-1.9.4 or 2.0.x legacy decal or trim sheet libraries
    • add Update20BlendFile tool
      • update blend files containing 2.0.x decals and trim Sheet materials to 2.1
    • update Update18BlendFile tool
      • update blend files containing 1.8 - 1.9.4 decals to 2.1
    • update Decal Example resources to use the new 2.1 decals
    • update Validate tool for legacy decal detection from a 2.1 perspective
    • improve process of assets path change, including renaming the legacy MyDecals library
  • expose trim uv layer (Trim Unwrap) and secondary uv layer (Box Unwrap) to addon preferences
  • explicitly use 'Atlas UVs' UV layer for atlased decals
  • adapt to 2.91 API changes
  • prevent crash when undoing after adding a decal to a scene from the asset loaders
  • prevent potential high resolution bake issues due to default PIL.Image.MAX_IMAGE_SIZE being too small
  • prevent importing Atlases as Decal/Trim Sheet libraries
  • fix noise in Example Sheet's normal map, causing minor distortions on highly reflective trim sheet materials
  • remove Update14DecalLibrary tool
  • clarify license

2.0.1

2020-10-16

  • Project
    • UV transfer - match UV layers by order, not name, to prevent issues in non-english Blender versions
  • Info Decal Creation (from Images and Fonts)
    • prevent decal UV layer names other than 'UVMap' in non-english Blender versions
  • Update18DecalLibrary
    • fix exception when updating decals, that don't use an index
  • Trim Sheet Creation Panel
    • tweak layout to show Trim Sheet Textures section also when in import mode
  • AddDecalsToAtlas
    • fix poll
  • InitTrimSheet
    • improve poll
  • use system's default encoding instead of utf-8 for debug output

2.0

2020-09-03

  • add Create/Import Atlas tools
  • add Use Atlas tool
  • add Join Atlased Decals and Split Atlased Decals tools
  • add Export tool
  • add Init/Import/Duplicate Trim Sheet tools
  • add InitTrimSheetMaterial tool
  • add Setup Subsets tool
  • add UnwrapTrim tool
  • add UnwrapToEmptyTrim tool
  • add AdjustTrim tool
  • add TrimCut tool
  • add AlignDecalToEdge tool
  • add QuadUnwrap tool
  • add BoxUnwrap tool
  • add MirrorTrim tool
  • add Stitch tool
  • add Update18DecalLibrary tool
  • add Update18BlendFile tool
  • Decal Creation
    • support baking emission for simple, subset, panel and info Decals
    • fix rare texture size rounding issue
  • Decal Baking
    • support emission bakes
  • add Join and Split tools
  • Adjust
    • add Emission mode (E key) to adjust emission strength use X and C for 10 and 0 presets
    • change Parallax mode to D key and reset with X the to the amount stored in the Decals blend file
    • in AO mode (A key) use C key for 0 preset
    • fix UV stretch exception when going across 0
  • MatchMaterial
    • support transmissive materials
    • support emissive materials
  • Insert
    • support batch inserting entire libraries with ALT
    • prevent raycast errors when objects scaled to 0 are present
  • Validate
    • support trim Decals
    • support decal versioning
  • FixTexturePaths
    • support instant decals
    • support trim sheets
    • support instant trim sheets
    • support UUID based path reconstruction
  • improve Remove Decal Orphans tool
  • expose ReRenderThumbnails developer tool
  • Texture (Un)Packing
    • support unpacking in local relative folder as a fallback or forced with ALT
    • support Trim Sheets and Trim Decals
  • support ALT navigation for all modal tools
  • update Examples blends + Decals
  • update Decals
    • support emission and emission maps
    • support normal blending
    • add alpha input to info decal groups, useful for weathering or simply making decals transparent
    • use Principled PBR's alpha socket instead of mixing with transparent shader
    • split nrm_alpha and color_alpha into normal, color and masks maps
    • support parallax for panel decals
  • add Example Trim Sheet
  • add Example and Aircraft Decal Atlas
  • preferences
    • point assetspath to assets, not assets/Decals
    • add ability to restore keymaps, if the user ends up deleting some
  • prevent issues for users not using an English Blender
  • Pie Menu
    • enable for edit mode and UV editor
    • show trim sheet libraries
    • optionally show Trim and Split tools
    • add emission indicator in decal thumbnails
  • Sidebar
    • main panel
      • add toggles to collapse/expand defaults/tools/utils
      • add toggle to hide/show decal node trees
    • add Atlas and Trim Sheet creation to creation panel
    • add Atlas to export panel
    • help panel
      • add warning if file is unsaved, before loading Example files
  • add Trim Sheet panel to Material Properties
  • remove DECALmachine context menu

1.9.4

2020-06-16

  • Insert - rebuild decal texture paths completely every time they are brought into the scene
  • FixTexturePaths - update rebuilding of decal textures paths in existing blend files

1.9.3

2020-06-03

  • ensure PIL can be registered in 2.83+ at start up
  • prevent undo related crash bug in 2.83+
  • prevent issue when unregistering
  • fix EPanel freeze/crash in 2.82+
  • fix Adjust UV stretch issue

1.9.2

2019-12-13

  • fix cropping of L images for decal creation
  • fix 2.82 exception when calling pie menu or quick insert

1.9.1

2019-10-22

  • remove ability to create info decals from JPGs
  • redo image and font loading for decal creation, due to changes in 2.81
  • fix issues when creating EPanel edge-only object from decals
  • fix occasional decal creation crash in 2.81, when alternating between info decal creation from image and from font
  • fix uv issue Project tool, for non-English Blender versions
  • fix issue in Validate tool
  • fix exception caused by CTRL projecting with mirror mods present
  • fix potential issue in the Material Match tool
  • fix exception in Slice/EPanel/Gpanel, try to ensure the panel width is never 0

1.9

2019-09-04

  • Add Bake tool
  • Add PanelCutting + RemoveMeshCuts tools
  • Add RemoveAllInstantDecals tool
  • Add new Example blend files
  • Select tool
    • support selecting all decals of the selected type
  • RemoveMeshCuts tool
    • add ALT selection(instead of removal) mode
  • Epanel tool
    • add SHIFT mode: mark edges as MESHCUT edges
    • add CTRL mode: delete edges immediately
    • add ALT mode: convert selection to edge-only object
      • can be combined with SHIFT or CTRL keys
    • support local view
    • automatically parent edge-only object
    • support single object selection, and option optional forced target
    • remove custom normals, if present
    • create backup object when run from object mode
  • ReApply tool
    • don't change blend_method when auto-matching material
  • Adjust tool
    • don't change blend_method when changing panel decal material
    • change blend method per decal-material, not per decal-type-material
  • InitGeneratedUVs
    • use non-evaluated mesh by default
  • DECALmachine panel
    • add EPanel to Tools section
  • fix issue with ReApply when used on projected decals with mirror mods
  • fix issue in Create when prefs.edit.use_enter_edit_mode is enabled
  • prevent issues in relation to decal type collections and multiple scenes
  • fix issue with DM's default material no being selectable in DM panel when Auto-Match is set to Material
  • fix redo issue due to poll being too strict in ClearDecalProps tool
  • fix faceidx out of range errors when panel decals have mirror mods

1.8.7

2019-08-04

  • add EPanel tool
    • can be used on edge selection in edit mode or from edge object in object mode
    • in edit mode it's accessible from the context menu
  • add RemoveDecalOrphans tool
  • add ClearDecalProps tools
  • add InitGeneratedUVs tool
  • Create tool
    • add Batch (Info) Decal Creation
    • support local view
    • fix issue with Decal Creation using the Flatten Normals option in combination with existing custom normals
  • ReApply tool
    • add two-sided panel decal auto-material-matching
    • fix issue when reapplying/auto-material-matching projected decals
  • Match tool
    • draw panel side indicators
    • make DM default metal material matchable
  • Adjust tool
    • keep existing panel decal material matches intact when changing panel material/type
    • improve cursor screen wrapping
  • Project and Slice tools
    • clear residual custom normals on projected and sliced decals
  • Insert tool
    • make surface snapping optional when bringing decals into the scene
  • Pie Menu
    • avoid potential performance issue (on Windows only?)
  • remove Debug Panel and move its tools into Utils sectino of main DECALmachine panel
  • enable eevee material backface culling for decal materials to avoid flipped decals going unnoticed
  • avoid keymap conflicts between BoxCutter and DM, when either Pie is mapped to a different key
  • fix GPanel crash

1.8.6

2019-06-27

  • Decal Defaults
    • add toggle for decal texture storage
      • pack: textures are saved in the blend (heavy blend files, that load everywhere)
      • unpack: textures are not saved in the blend (light blend files, that load on computers with the same decal asset folder)
    • can be (un)toggled at any time
  • Project tool
    • clear existing uvs and make sure the decal has only one uv map
    • make sure faces of projected decals have material index of 0, otherwise joining decals may mix up materials
    • fix issue when finding target
    • fix projection preview drawing being in xray in modal mode, due change in default Blender behavior
  • Slice tool
    • clear existing uvs and make sure the decal has only one uv map
    • improve direction vectors in default(float) mode
  • Insert tool
    • allow adding decals on evaluated geo (such as on mirrored parts of objects)
  • Pie Menu
    • increase panel width precision to 3
  • Preferences
    • fix broken decal asset libraries ui list, due to API change
    • update decal resource links
  • update matching of default-white material/None material
  • fix issue when removing old version and installing new one in the same Blender session
  • various raycast and performance improvements

1.8.5

2019-05-20

  • fix Decal Creation issues, due to recent depsgraph changes

1.8.4

2019-05-20

  • fix Slice not clearing materials, due to recent depsgraph changes

1.8.3

2019-05-18

  • fix recent depsgraph issues
  • improve raycast and raycast performance

1.8.2

2019-05-13

  • add GPanel
    • panel decal creation from grease pencil strokes
  • update PIL to 6.0.0
  • improve PIL installation
  • add extra, temporary debug output for decal creation, likely only related to Oscuart addon exception
  • fix material match issue introduced in Blender 8f71a84496a9/27d097e92d54 (May 13th)
  • fix raycast issue where decals were not aligned properly on modifier geometry

1.8.1

2019-04-25

  • add update check
    • appears in pie menu once update is available
  • work around issue in Unwrap (alternative mode) and Decal Creation, due to open Blender bug
  • fix rare panel decal UV over or under stretching in Slice and Unwrap
  • fix Normal Transfer defaults not being enforced by Shrinkwrap
  • optimze addons check on preferences - about page

1.8

2019-04-06

  • completely rewrite DM for Blender 2.80
  • redo Project tool, add new Shrinkwrap variation
  • redo Slice, add new super robust "float slice", massively improve "topo slice"
  • redo Instant Decal creation, add 3 new ways to create Info Decals inside Blender
  • redo pie menu completely, add sidebar panels
  • support unlimited decal libraries
  • add new raycast Decal insertion
  • add new Re-Apply tool
  • add new modal "Adjust-everything" tool
  • add new automatic material matching
  • add new scene-wide default settings
  • take full advantage of Eevee incl. real-time parallax
  • hide decal materials and textures
  • improve integration with GroupPro, Batch Ops, Hard Ops and MACHIN3tools

1.4.2a

2018-01-15

  • fix MACHIN3tools Shading Switch related decal transparancy issue

1.4.2

2018-01-14

  • added ReconstructPanelCutter tool
  • added 'Remove Decal' property to ExtractSource tool, also clear parent
  • added Principled BSDF support to WStep()
  • added Edit/Commit Normal Source tool
  • exposed base material parameters in DM Preferences
    • adjusted decal materials according to those preferencess when inserting decals and when slicing
    • updated InitBaseMaterial() to take parameters
  • added MACHIN3tools Material Viewport Compensation support to InitBaseMaterial
  • added 'Remove Decal' property to ExtractSource as well as clear parent
  • added interpolation type selection to WStep properties
  • added option to allow hard edges to WStep, which adds 2nd DataTransfer and mask existing hard edges using a vertex group
  • added SufaceFix tool, Edit/Commit Surface Fix tool and Unlink tool(space bar menu only)
  • added threshold value to control duplicate vert removal in Material Cut
  • added option to mark edges Freestyle in Material Cut
    • added ConvertFreestyletoSeam and ConvertSeamToFreestyle operators (spacebar menu)
  • simplified DecalRotate into single operator for CW and CCW rotations
  • added axis option to DecalRotate in object mode
  • added higher quality decal textures of decals02_32 - decals02_37
  • inverted most supplied info decal textures to be white and set the invert slider in their decal materials to 0
  • updated MACHIN3shaders(unity3D) to include 'Blend Surface Normals' parameter and change info decal transparency to opacity
  • improved or re-added curvature in supplied panel decals textures
  • added 'Combine all-to-one' option to DECALBakeDown
  • added Assign Unique Materials option to Decal Exports
    • added "Treat Freestyle edges as seams" to export options, if Assign Unique Materials is turned on
  • added option to create 'DM_non-decals' group in ExportGroup for convenience
  • exposed atlas padding value to DM preferences
  • added 'Suppress Decal Name' option to DM create preferences for Batch Decal Creation
  • added 'Normal Alpha Tolerance' option to create preferences
  • improved batch decal creation sorting
  • updated color profiles in DECAL_create.blend for 2.79
  • fixed info decals creation issue in 2.79 where texture assignment and thumbnail generation would fail
  • fixed nrm_alpha map atlas quality issue when scaling decals in atlas or when using atlas downsampling
  • fixed issue with Match Material replacing materials of supplied decals with materials of custom decals
  • fixed exception in DECALexport when non-mesh objects are part of the selection
  • fixed exception where atlas could not be laid out due to missing texture
  • fixed exception and added warning in Panelize on closed meshes
  • fixed DecalProject uv issue when pivot was not set to bounding box center
  • fixed ExportGroup exception when blend file is saved to new name after atlas has been packed
    • prevent export group creation from going forward in this case and open the new export folder, so you can copy the json and png files over from the old one
  • fixed exception in export group creation when disabled mods on decals can't be applied
    • in case of M3_copied_normals mods being the issue, the export groups target object will be added as the normal source and the mod will be applied
  • fixed subtractor decal material input socket sorting
  • fixed slice tools showing up in pie in edit mode
  • fixed info decal shader(in MACHIn3shaders for unity) issue with metalness not working as expected with transparency

1.4.1a

2017-09-24

  • catch the most frequent errors resulting from improper installation and provide terminal output info about how to solve them
  • added GroupPro connection

1.4.1

2017-09-20

  • rebuilt Match Material completely
    • added operator properties to match either Material or Subset or both (Material 1 and 2 in Panel Decals)
    • supports matching any of a target objects materials, by choosing a material socket id from the operator properties
    • supports matching Principled BSDF and Glossy BSDF shaders
    • avoids creating duplicate materials and finds existing materials that match the criteria
  • added Update Decal Nodes tool, to update scenes created before 2.79 to support Principled BSDF decals
    • runs automatically on pre 2.79 decals, dropped into a scene via the Asset Loaders
  • Decals created in 2.79 will use the Principled BSDF shader
  • removed Get and Set Material tools, as Match Material does the same now and does it better
  • Init Base Material initiates a Principled BSDF base material in 2.79
  • added filmic 2.79 support
  • added Topo Slice twist offset parameter
  • improved Panel Transition panel section selection logic
  • changed export triangulation quad method to FIXED
  • moved HOps fix over to HardOps - update to 'Hard Ops 0093 - Neptunium' to use DECALmachine 1.4.1
  • fixed export related issue with decals projected on material decals
  • fixed Remove Decal Mode for panel decal assets
  • fxxed Rotate Decal not working ing edit mode for some users
  • fixed MaterialCut and PanelTransition not working properly in 2.79
  • fixed issue with assetpaths resisting change
  • fixed Rotate UVs option not working for some users
  • fixed empty material slots issue in (W)Step

1.4a

2017-08-30

  • added consistent scale parameter to prefs, making the unit scale compensation optional
  • fixed wstep exception, when no HOps is installed
  • adjusted wstep behaviour for when no HOps is installed

1.4

2017-08-29

  • created complete decal export pipeline
    • decal atlas creation
    • use existing atlas Solution
    • automatic decal UVs according to atlas packing
    • export targets:
      • Unity3D - MACHIN3
        • decal shaders: plain, textured, info, panels
      • Unity3D - bac9
      • Unreal Engine 4
      • Substance Painter
      • Sketchfab
      • Unpacked
    • bake decals down
  • added w-step - a custom vertex normal workflow
  • added float slice
  • added draw slice
  • added panelize tool
  • added keymap settings to preferences
  • added operator properties to the main tools
  • added automatic parenting of projections and slices to their targets, incl for decal- and cutter backups/sources
  • support scene scale/unit settings
  • added remove decal mode
  • improved material cut
  • keymapped gpencil pie to 'CTRL+D'
  • added win32 PIL, thanks to Jordan
  • fixed project and slice(panel_unwrap) to always remove existing uvs
  • fixed main DM pie, to only trigger object and edit modes
  • fixed issue with non-tangent base normal maps from instant decal creation
  • fixed black/dark ao issue in instant decal creation related to hidden geometry
  • fixed issue with remove duplicates replacing custom decals
  • fixed panel transition issue when panel strips were split

1.3.5b

2017-06-07

  • auto-set cycles and auto-switch to material view when inserting decals
  • fixed decal create exception when scene has no world
  • fixed panel unwrap exception when panel decal geo is hidden
  • fixed thumbnail rendering issue related to non-png file ending setting in render panel
  • added experimental, alternative PIL for linux
  • simplified Readme.md and Readme.html
  • added local copy of full documentation in ReadtheDocs format

1.3.5a

2017-05-19

  • fixed batch decal creation bug when encountering filename with illegal characters
  • fixed filmic related batch decal creation bug
  • added panel decal resolution options, useful for repeating elements in panel decals which require more length
  • clarified and extended installation instructions
  • switched CREATE_decal.blend to CPU rendering

1.3.5

2017-05-10

  • 5 new panel decals
  • added Init Base Material tool
  • changed panel unwrap from EVEN to LENGTH, allowing for regular repeating patterns in paneling
  • added panel decal material choice for decal slice/knife
  • decal creation: added instant panel creation
  • decal creation: fixed info decal batch creation, when filmic is not installed
  • decal creation: improved alignment of decal plane to source geometry when baking
  • improved Asset Management check to make sure its activated before DM, before exposing AM related settings
  • decal creation: improved height map mid level adjustment
  • decal creation: added 'replace last' checkbox, to overwrite last decal of category
  • decal creation: exposed ao samples
  • decal creation: exposed height contrast and parallax value for finer depth control
  • added CustomDecals library for user created decals
  • added uv rotation support to decal rotate tool (in edit mode or image editor)
  • decal creation: fixed pink thumbnails with gaffer addon and similar
  • decal creation: fixed thumbnail resolution percentage

1.3c

2017-05-06

  • bug fix in relation to custom script paths being set but not used

1.3b

2017-05-06

  • added a warning on windows and macos, when trying to create decals using an unsaved blender scene

1.3a

2017-05-06

  • added custom addon path support, thanks Ted
  • switched the macos PIL to a precompiled version for python 3.5 instead of 3.6

1.3

2017-05-05

  • dropped 2.77 support
  • new simplified decal creation guide
  • various cleanup and restructuring
  • new modal adjust decal height tool, replacing the old decal push and decal lift
  • decals with mirror modifiers already applied can now be projected properly
  • added DECALcreate pie menu
  • insert buttons above asset loaders for quick re-import of the last decal
  • simplified custom decal creation: batch decal creation and instant decal creation
  • added PIL python library requirement for automated processing and curvature map creation
  • 7 new subset decals
  • added the_box sample scene

1.2b

2017-04-25

  • version bump in addon meta data
  • additional info in the usage section of the readme, about the asset loader

1.2a

2017-04-25

  • 2.77 decal creation hotfix to solve exception in saving decal blend
  • no more unnecessary hiding of the original mesh when projecting on it

1.2

2017-04-24

  • unpacked sample scenes
  • added addon preferences to allow switching of the native path or the AM library
  • decal_rotate always uses the active_element pivot now and sets it back to what it was before afterwards
  • inserted decals always move to the cursor location, with AM they'd only do this when nothing was selected
  • when using the built in asset loader, there won't be duplicate material instances with 0 users accumulating anymore as is the case with AM
  • decal slice should now always be able to assign the decal panel material, no more dependence on AM
  • safety checks for get_material and decal_project
  • added decal creation guide and improved Readme(html), no more missing line breaks under windows
  • added decal creation template files and helper scripts
  • merged decals03 with decals02, as they are both subset decals
  • default asset location in the addon folder, can be changed to use the AM library path, if you want
  • some pie menu restructuring for the asset loader, there are 4 previews for 4 decal categories now
  • added native asset loader, based on HOps tech, thanks guys!
  • file split and source restructuring
  • cleanup

1.1

2017-04-18

  • added decals03 library category: decals based on Hard Ops assets
  • added sample assets: the crate, the barrel, the egg

1.0

2017-04-17

  • initial release