blob: a217beeea67da34bb661af5f239b7b912b55d61e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
|
Version History
---
# 2.x
## 2.2
January 4th 2021
## Fix
- Fix for crash that would occur when points were aligned *just* right
- See issue 66
+ https://github.com/SirRamEsq/SmartShape2D/issues/66
## Features
- Each Edge Material can now have a Material (Shader)
- Each Edge Material Meta can have a z-index and z-as-relative set
- See issue 64
+ https://github.com/SirRamEsq/SmartShape2D/issues/64
## 2.1
December 14th 2020
### Significant Changes from 2.0
- Improved Width handling
- Improved Welding
- Rendering is now achieved by having multiple child-nodes each render a piece of the shape
+ Previously, all the rendering was done by the shape node
+ Improves performance
+ Fixes lighting bugs
- Point Creation mode reimplemented
+ Mode active by default
+ Can be exited by pressing ESC
- Several usability additions
+ Hotkey for grabbing closest point
+ Hotkey for creating new shape at point
+ Width Grabber for closest point
+ Preview for adding points
- Several Bug fixes and issues closed
### New Features
- Meta Shapes Introduced
- "Fit mode" added to edge material
+ Can either squash and stretch the texture or crop it
### Minor Changes
- Changes to GUI Theme
+ More in line with standard Godot
- Add windows scripts for running unit tests
- Changed default snap settings to 8x8 pixels
## 2.0
September 7th 2020
### Significant Changes from 1.0
- Edge Textures are no longer determined by a cardinal direction (UP, DOWN, LEFT, RIGHT)
- Instead, a starting and ending normal angle is specified for each edge
- Textures are now defined per-edge instead of per-shape
### New Features
- Taper textures
- Instead of simply ending, the user can have an edge "taper-off"
- Editing by Edges
- Material Overrides
### Internal Changes
- Completely overhauled everything
- A rudimentary constraint system is in place
- Closed shapes will add a point when closing, then constrain the added point's position to the first point
- Points are no longer refered to by index, they are refered to by keys
- This enables points to have relationships that aren't affected when:
- Adding/Removing a point
- Changing orientation of the poly
- Many Unit and Integration tests
- Refactored original working code to better support testing
- Kept original scripts and classes from version 1.0 to ease importing
# 1.x
## Changes in 1.3
This update primarily fixes bugs and improves existing features to be more usable.
### Changes
- Merged top/left/right/bottom offset into one variable. render offset
### Fixes
- Input bugs
- Edge Flipping
- Polygon orientation bugs
- Quad Welding
- Corer quad generation and welding
- Collision variables in the RMSmartShapeMaterial working as intended
## Changes in 1.2
### Tweaks
- Refactoring
- Toolbar takes less space
- Minor bug fixes
### New Features
- Bezier Curves!
- Hold shift on a control point to create a curve
- Corner Quads!
- Both inner and outer corner quads are now generated
- Textures can be speciied for each direction of both inner and outer quads
- Edge Moving!
- Can move an edge (two points) by pressing SHIFT in move mode and dragging the edge
## Changes in 1.1
- Refactoring
- Fixed Errors Occuring when Texture Arrays are size '0' but not null
- Fixed sync between texture, flip, and width indicies
- Would sometimes share a single array between the 3 vars
- Are all unique now
- Snapping
- More informative toolbar
## Changes in 1.0
- Fixed many debug errors reported related to indexing beyond array sizes
- Fixed control point wrapping of RMSmartShapeAnchor2D nodes anchored to RMSmartShape2D nodes.
- Tested on newly released 3.2 Godot.
## Changes in 0.91
- Edges are calculated in relationship to object space instead of screen space
- Added option to allow user to let the object recalculate edges based on screen space.
- Fixed uv calculations for flipped textures.
- Fixed uv bug for edge sections less than half the size of texture width
- Added option to allow for a RMSmartShapeAnchor to mimic scale of monitored node
- Removed sections of code related to clockwise versus clockwise checks, very specifically regarding the direction of texture edges.
- Corrected normal texture bug for fill and edge rendering
|