You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

472 lines
20 KiB
Markdown

3 years ago
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
## [1.1.2] - 2021-03-31
### Features
- Added new Simple Texture Blend shader example.
- Adding better support for prefab painting in 2D mode (placement and removal)
- [case: 1197102] Adding support for painting on multiple meshes.
### Changes
- Improved performance improvement when drawing wireframe and gizmos.
- Removed obsolete "Lock Brush to First" preference.
### Bug Fixes
- [case: 1324105] Fixing _Albedo1 texture in SRP shaders for texture painting.
- [case: 1324106] Fixing problems in ProBuilderBridge functions and updates.
- [case: 1322672] Fixing mesh collider update when modifying polybrush mesh topology.
- [case: 1316957] Fixing errors when painting textures in the UV channels.
- Fixed brush gizmo not showing the correct orientation in raise/lower and smooth modes.
- Fixed wireframe not updating when applying changes in sculpting modes.
- [case: 1314295] Fixing polybrush prefab painting with flat curve causing crash.
- [case: 1306986] Fixed brush not registering correct placement when inside a concave mesh.
- [case: 1315475] Fixed warning when opening Polybrush for the first time and pressing "Save" brush settings.
- [case: 1314249] Fixing Undo on painting texture mode.
- [case: 1305101] Fixing brush list not updated on new brush creation.
- [case: 1305738] Fixing "Bake vertex stream" functionality.
- [case: 1271427] Improving UpdateBrush performances, reducing calls to repaint method
- [case: 1268586] Fixed erase problem when painting/removing prefabs where the pivot was too far from the brush
- [case: 1271799] Fixed broken Copy/Paste of Prefab Settings
- [case: 1270029] Fixed color palette does not disappear when dragged outside editor window.
- [case: 1275880, 1275887] Fixed potential errors caused by out of sync material caches in Texture Painting mode.
- [case: 1238128] Fixed `Standard Texture Blend` shader rendering black when graphics API is set to Metal.
## [1.0.2] - 2020-08-04
### Bug Fixes
- [case: 1259746] Fixed error when opening and closing display dialog to save brush.
- [case: 1259770] Fixed on hovering above Settings tooltips always appear on centre of window.
- [case: 1241241] Fixed null ref on adding or deleting `PolybrushMesh` component to Gameobjects without a `MeshFilter`.
- [case: 1246495] Fixed `PolybrushMesh` component always marking the scene dirty when enabled.
- [case: 1241241] Fixed null ref on Adding/Deleting "PolybrushMesh" Component to Gameobjects without a Mesh Filter
- [case: 1171437] Fixed `Export to Asset` deleting the source mesh when overwriting an existing asset.
- [case: 1192477] Fixed prefab scattering placing objects outside the brush radius when parent object transform is scaled.
- Fixed errors thrown when vertex count changed between two strokes.
- Fixed PolybrushMesh component staying on ProBuilderMesh object once painting is done.
- Fixed Polybrush re-generating a new mesh when modifying a ProBuilderMesh.
- Fixed errors thrown when deleting ProBuilderMesh object after modifications with Polybrush.
- Fixed error `Something went wrong saving brush settings` happening when user deletes brush settings.
- Fixed color preview not appearing when it should.
- Fixed errors when unloading scenes in certain cases.
- General performance improvements.
### Known Issues
- Lightmapping is currently not compatible with use of "Additional Vertex Streams". Workaround is to disable "Use Additional Vertex Streams" in preferences.
### Changes
- Update to Settings Manager 1.0.3.
- Documentation has been fully updated.
- Renamed LWRP to Universal Rendering Pipeline.
## [1.0.1] - 2019-09-05
### Bug fixes
- Fixed errors when entering playmode.
- Fixed jagged geometry when smoothing with `Brush normal`.
- Fixed broken normals in some situations.
- Fixed compilation errors.
- Fixed minor UI issues.
## [1.0.1-preview.3] - 2019-08-21
### Bug fixes
- Fixed errors when entering playmode.
## [1.0.1-preview.2] - 2019-08-01
### Bug fixes
- Fixed jagged geometry when smoothing with `Brush normal`.
- Fixed broken normals in some situations.
## [1.0.1-preview.1] - 2019-07-26
### Bug fixes
- Fixed compilation errors.
- Fixed minor UI issues.
## [1.0.0] - 2019-07-08
### Changes
- Added support for Unity 2018.4.
- Using Polybrush on an object will always add the PolybrushMesh component.
- PolybrushMesh component now allows you choose how mesh edits are applied (Override Mesh or Additional Vertex Streams).
- Texture Blend Mode: shader setup is now done by clicking the "Configure" button in Texture Blend Mode, and saved into the shader meta file.
- Removed obsolete example files, replaced with basic "Vertex Colored" and "Texture Blend" example shaders, built specifically for Non-SRP, LWRP, and HDRP.
### Bug fixes
- Fixed crash occuring when users convert from Additional Vertex Streams to Baked mode (and vice-versa).
- Fixed crash occurring when users undo changes and not using Additional Vertex Streams.
- Fixed loss of data when not using Additional Vertex Streams and Prefab mode.
- Fixed Prefab mode not showing data from Polybrush when it opens.
- Fixed erase action (hold `CTRL`) not removing data for only the selected texture in Texture Blend mode.
- Fixed brush not showing the visual preview when hovering over meshes until first stroke.
- Fixed brush not showing the proper visual preview for data removal when holding `CTRL`.
- Fixed brush direction gizmo not matching the movement vector.
- Fixed exception appearing sometimes while working with mirrored brushes.
- Fixed `Reset` action on ColorPalette not properly resetting the data.
- Fixed console warnings from Overlay and VertexBillboard shaders.
- Fixed minor UI issues.
## [1.0.0-preview.17] - 2019-05-13
### Changes
- Set "Use Additional Vertex Streams" default value to false.
## [1.0.0-preview.16] - 2019-04-30
### Changes
- Add support for Unity 2018.3.
### Bug Fixes
- Fix an issue occurring when there is a vertex count mismatch between Additional Vertex Streams and the mesh referenced in the MeshFilter component.
### Changes
- Polybrush will automatically upgrade Z_AdditionalVertexStreams to PolybrushMesh components.
- Add new section in documentations: Upgrading Polybrush.
## [1.0.0-preview.14] - 2019-04-04
### Changes
- Polybrush will automatically upgrade Z_AdditionalVertexStreams to PolybrushMesh components.
- Add new section in documentations: Upgrading Polybrush.
## [1.0.0-preview.13] - 2019-03-20
### Changes
- Update samples.
## [1.0.0-preview.12] - 2019-03-20
### Changes
- Update dependencies.
## [1.0.0-preview.11] - 2019-03-13
### Bug Fixes
- Minor fixes
## [1.0.0-preview.10] - 2019-03-12
### Bug Fixes
- Minor fixes
### Changes
- Make every modes use Ctrl key to invert actions.
## [1.0.0-preview.9] - 2019-03-08
### Bug Fixes
- Fix compatibility issues with SkinnedMeshRenderer component.
- Fix compatibility issues with ProBuilder 4.
- Scattering tool: fix exceptions thrown when removing objects from palettes.
- Scattering tool: fix issues with prefabs having more than one mesh.
## [1.0.0-preview.8] - 2019-02-26
### Bug Fixes
- Fix brush inner and outer rings not always reflecting user's Preferences.
## [1.0.0-preview.7] - 2019-02-08
### Bug Fixes
- Scattering tool: prefab preview compatibility with PolybrushMesh.
- Scattering tool: fix distance between objects being to great when Avoid Overlap is enabled.
## [1.0.0-preview.6] - 2019-02-04
### Bug Fixes
- Fix Polybrush not able to paint on mesh with multiple submeshes.
- Fix scattering tool not removing prefabs based on the active loadout.
- Fix "Save To Asset" button in MeshFilter component not doing anything.
- Small UI fixes.
## [1.0.0-preview.5] - 2019-01-28
### Bug Fixes
- Fix scattering tool not removing prefabs in some cases.
- Fix "Fill" mode with the Texture Blend tool.
- Fix "Flood" mode with Vertex Color tool.
- Small UI fixes.
## [1.0.0-preview.4] - 2019-01-16
### Changes
- Update Polybrush for Unity 2019.1 compatibility.
- General settings are now in Unity Preferences window.
- Update Polybrush skin and improve Polybrush window reactivity.
- Samples are now available through the Package Manager in their own section (Unity 2019.1+).
### Bug Fixes
- Fix PolybrushMesh component staying on GameObject even when we don't apply changes.
- Fix Undo actions not totally reverting back GameObjects state.
- Fix broken shader graphs for LWRP and HDRP.
- Fix Polybrush losing control when mouse cursor goes out of scene view while applying a brush.
## [1.0.0-preview.3] - 2018-10-12
### Features
- Port Polybrush from Asset Store to Package Manager.
- New prefab scattering brush mode settings.
- Update Polybrush for Unity 2018.1, 2018.2, and 2018.3 compatibility.
- New example shaders for HDRP and LWRP.
### Bug Fixes
- Update ShaderForge examples to Unity 2018.1 and up.
- Fix Polybrush modified meshes losing values when converted to a prefab.
- Fix `Undo` not updating `Additional Vertex Stream` mesh modifications.
- Fix the detection of texture blend support when switching materials on an object.
### Changes
- `Escape` key now exits the brush editing tool.
- Replace `Save As` with `Save As New brush` in the save menu of Brush Settings.
- Remove legacy code for custom made shaders.
- `AdditionalVertexStream` modified meshes are now stored in a component, fixing issues with lost data.
- Dramatically improve unit testing coverage.
- `z_` prefix removed from class names.
## [0.9.13-preview.0] - 2017-08-04
### Bug Fixes
- Fix compile error due to `z_ZoomOverride.cs` incorrectly being included in builds.
### Changes
- New example textures.
## [0.9.12-preview.0] - 2017-06-19
### Bug Fixes
- Fix compile errors when building to Standalone.
- Fix issue where subdividing in ProBuilder could cause Polybrush to endlessly throw errors.
## [0.9.11-preview.0] - 2017-04-25
### Features
- Add Flood paint brush in Vertex Color and Texture painting modes.
- Add utility for baking additional vertex streams back to mesh.
- Set better defaults for Push/Pull and Prefab modes.
## Bug Fixes
- sRGB should be marked false on icons in 5.5 and up.
- Fix deprecated handle warnings in Unity 5.6.
- Updated header backing color to match GUI Color Scheme.
- Fix bug where additional vertex streams would modify static meshes at runtime, causing them to either disappear or be moved.
## [0.9.10-preview.0] - 2016-12-09
### Features
- Prefab Brush Mode added (still very early in development).
- Significant performance improvements when working with high vertex count meshes.
- Add a height based blend shader.
- Add texture blend modulate shader.
- Add option to hide vertex dots.
## Bug Fixes
- Fix bug where Polybrush would always instance a new mesh when "Meshes Are Assets" was enabled in ProBuilder.
- Increase text contrast in Polybrush skins.
- Try to crash less when mesh has no normals.
- Fix bug where loading a new scene would prevent brush from updating.
- Fix mismatched text color in command toolbar.
- Fix bug where hovering multiple selected objects would repeatedly instance new brush targets.
- Fix additional space in Color field labels when content is null or empty.
- Fix bug where hovering multiple meshes would sometimes apply the previous mesh vertex positions to the current.
- Fix brush settings anchor setting clipping the top header.
- Fix scene not repainting when applying brush in Unity 5.5.
### Changes
- Store some brush settings per-mode.
- Preferences now stored local to project instead of in Unity Editor preferences.
- Use hinted smooth glyph rasterization instead of OS default for Roboto font.
## [0.9.9-preview.2] - 2016-11-14
### Features
- Redesigned interface.
- Add support for "Additional Vertex Streams" workflow.
- Unity 5.5 beta compatibility.
- Add ability to save brush setting modifications to preset.
- Enable multiple axes of mirroring.
- Show color palette as a set of swatches instead of a reorderable list.
- Improve performance when painting larger meshes.
- Handle wireframe and outline disabling/re-enabling correclty in Unity 5.5.
- Clean up various 5.5 incompatibilities.
- Add a question mark icon to header labels with link to documentation page.
- Improve performance by caching mesh values instead of polling UnityEngine.Mesh.
- Improve memory pooling in some performance-critical functions.
- Manual redesigned to better match ProBuilder.
- Mode toolbar now toggles Polybrush on/off when clicking active mode.
## Bug Fixes
- Fix cases where pb_Object optimize could be skipped on undo.
- Fix import settings for icons.
- Don't leak brush editor objects if the brush target has changed.
- Fix serialization warnings on opening editor in Unity 5.4.
- Mark z_Editor brushSettings as HideAndDontSave so that loading new scenes doesn't discard the instanced brush settings, resulting in NullReference errors in the Brush Editor.
- Destroy BrushEditor when z_Editor is done with it so that unity doesn't try to serialize and deserialize the brush editor, resulting in null reference errors.
- Fix texture brush inspector always showing a scroll bar on retina display.
- Fix bug where the texture brush would show a black swatch on the mesh after a script reload.
- Remove shift-q shortcut since it's inconsistent and when it does work interferes with capital Qs.
- Fix bug where OnBrushExit sometimes wouldn't refresh the mesh textures.
- Layer texture blend shaders instead of summing.
### Changes
- "Raise" mode is now "Push Pull."
- Remove vertex billboards from mesh sculpting overlay in favor of just the wireframe.
## [0.9.8-preview.0] - 2016-08-17
### Features
- Add option to make brush normal direction sticky to first application.
## Bug Fixes
- Fix Polybrush errors when working with pb 2.6
- Don't specify `isFallback` in CustomEditor implementations since they are not actually fallback editors.
- Don't rely on loaded assembly names matching the expected ProBuilderEditor assembly name when reflecting types and methods. Fixes null reference when assembly names are changed somewhere in the pipeline.
- Don't bother testing that shader references match when looking for shader metadata since instance ids are so fickle in the first place
## [0.9.7-preview.0] - 2016-06-01
### Features
- Significantly improve perfomance in all modes for high vertex count meshes.
- Add "Texture Blend with Vertex Color" shader.
- Add two new default meshes, a smooth and hard icosphere.
- **Texture Mode** backend rewritten entirely to allow for far more complex interactions with shader properties. See "Writing Texture Shaders" in documentation.
- Add color mask settings to vertex color painter.
## Bug Fixes
- Improve performance of shared edge triangle lookups, fixing lengthy lags when mousing over high vertex count meshes in paint and texture modes.
- When blending multiple brushes in texture mode use the max weight instead of summing.
- Add information about setting shader paths to Hidden in Shaderforge instructions.
- In vertex sculpting modes iterate per-common index instead of per-vertex, improving brush application performance and minimizing chances of splitting a common vertex by accident.
- Minor cleanup of enum types (make sure they're namespaced & remove unused includes).
- Fix bug where script reloads would null-ify texture mode brush color and not properly reset it.
- Fix errors in brush event logic that caused OnBrushEnter/Move/Exit to be called at incorrect times with invalid targets, resulting in crashes when editing prefabs with multiple meshes with different shaders
- Fix undo throwing errors when splat_cache is null.
- Clamp radius max value to min+.001 to avoid crashes when scrolling radius shortcut with equal min/max values.
- Fix uv3/4 not applying or applying to incorrect mesh channels in ProBuilder (requires update to ProBuilder 2.5.1).
- Fix null errors when sculpting pb_Object meshes caused by FinalizeAndResetHovering iterating the same object multiple times.
### Changes
- Set default brush settings radius max to 5.
- When blending multiple brush effects use lighten blending mode instead of additive.
- Shorten ShaderForge source file suffix to `_SfSr` (but keep compatibility for older `_SfTexBlendSrc`).
## [0.9.6-preview.0] - 2016-04-28
## Bug Fixes
- Fix lag when selecting or hovering an object with large vertex count.
- Increase the min threshold for vertex weight to be considered for movement in raise/lower mode.
- Fix out of bounds errors in overlay renderer when mesh vertex count is greater than ushort.max / 4.
- Fix typo that caused pb_Objects not to update vertex caches on z_EditableObject Apply calls.
## [0.9.5-preview.0] - 2016-04-20
## Bug Fixes
- 114ccc2 Show checkbox in z_Editor context menu for current floating state.
- f44d4d6 When applying mesh values to `pb_Object` also include vec4 uv3/4 attributes.
- c3d3f7a Fix ambiguous method error in z_EditableObject when modifying a ProBuilder mesh.
## [0.9.4-preview.0] - 2016-02-28
### Features
- Add new "Diffuse Vertex Color" and "TriPlanar Blend Legacy" shaders.
## Bug Fixes
- Fix Unity crash when selection contains non-mesh objects.
## [0.9.3-preview.0] - 2016-02-22
### Features
- Add option to ignore unselected GameObjects when a brush tool is in use.
- Improve detection of meshes in selected children.
- Add button to clear Polybrush preferences in Settings.
## Bug Fixes
- Fix mirrored brush applying only one brush in texture and vertex paint modes.
## [0.9.2-preview.0] - 2016-02-18
### Features
- Instead of a single readme, use a static site generator to build documentation.
## Bug Fixes
- Fix triplanar blend shader stretching on some poles. Add more detailed information on using vertex color and texture blend shader materials
- When checking mouse picks for selection include children of selected gameObjects as valid targets (fixes issue where a selected model root would not register for brush.
- Fix null reference errors when brush mirroring is enabled.
- Don't throw null ref when weights cache in overlay doesn't match new set.
- Add docs for brush settings, interface, and general settings.
- Add misc and troubleshooting section to docs.
- Add warnings that Polybrush does not work on Unity terrain objects
### Changes
- Migrate project to Github. For access to the latest development builds of Polybrush please email contact@procore3d.com with your invoice number and request Git access (this will be automated in the future).
## [0.9.1-preview.1] - 2016-01-01
## Bug Fixes
- Register children of current selection as valid mesh editables. Fixes potential confusion when a model prefab is selected at it's root with children.
## [0.9.1-preview.0] - 2015-12-01
### Features
- Texture Blend Mode now supports any combination `UV0, UV2, UV3, UV4, Color, Tangent` mesh attributes, as set by the shader using the syntax `define Z_MESH_ATTRIBUTES UV0 ...`.
- Improve the `Unlit Texture Blend` example shader.
- Add option to automatically rebuild collision meshes.
- Split Direction *Normal* into *Brush Normal* and *Vertex Normal*.
- Improve the behavior of Smooth Mode.
- Remove relax option from Smooth Mode (what was once Normal w/ Relax on or off becomes Vertex Normal and Brush Normal, respectively).
- Add option to keep the brush focused on the first mesh hit when dragging.
- When dragging, always restrict brush application to the current selection.
## Bug Fixes
- Fix issue where Texture Paint Mode would sometimes apply values to the incorrect channel after switching between two different materials with the same shader.
- Make sure that the Texture Paint mode always has valid splat-weights to work with (usually causing "black face errors").
- Fix warnings when shaderforge isn't installed, and update version number.
- Fix instances where setting ProBuilder edit level would not correctly unset Polybrush tool (and vice-versa).
### Changes
- Standard Vertex Color and Standard Texture Blend shaders now default to metallic / roughness workflow.
## [0.9.0-preview.0] - 2015-11-01
Initial Release.