Emmanouil Papadeas
b79ce0ae15
Add a new "CanvasCameras" node group for the canvas cameras
2024-10-11 14:44:21 +03:00
Emmanouil Papadeas
fc695a038e
Remove Global.canvas
from the canvas' children
2024-10-11 14:08:43 +03:00
Emmanouil Papadeas
55325a38a4
Use a Vector2i in Selection.gd when pasting
2024-10-10 15:29:36 +03:00
Emmanouil Papadeas
8802e3ab41
Slightly improve camera zoom and pan touch gestures
...
Not quite there yet
2024-10-10 15:29:12 +03:00
Emmanouil Papadeas
abcf6f5ec6
Remove unneeded Global.current_project in SymmetryGuide
2024-10-10 15:28:46 +03:00
OverloadedOrama
dbe48a4681
Fix issue where sometimes the camera zoom was not being preserved when switching between projects
2024-09-24 11:59:18 +03:00
Emmanouil Papadeas
9824aef893
Attempt to fix the preview of the move tool not being aligned to the pixel grid
2024-09-19 00:38:46 +03:00
Donte
4fa8981590
Add onion skinning opacity adjustment ( #1091 )
...
Co-authored-by: Emmanouil Papadeas <35376950+OverloadedOrama@users.noreply.github.com>
2024-08-30 22:58:28 +03:00
Emmanouil Papadeas
077c57c53a
Implement support for group layer blending ( #1077 )
...
* Blend group layers on `DrawingAlgos.blend_layers()`
* Support group layer blending on the canvas
* Allow editing of group layer properties
* Fix issues with group layer blending in canvas, and unite common code
* Group layers can now be used as clipping masks
* Make move tool preview work on child layers
* Change OffsetImage's `blend_layers()` to support group layer blending
* Support group layer blending in the canvas preview
* Fix layer blending mode, clipping mask opacity and cel opacity not being updated automatically if the layer/cel changed is not selected
* Add a pass through blending mode to layer groups
Fingers crossed that no bugs were introduced
* Fix issue with layers that belong to pass through groups not updating their textures on the canvas automatically on undo
2024-08-15 15:52:55 +03:00
kleonc
92d7bbf539
Fix isometric grid calculations using ints instead of floats ( #1069 )
2024-08-09 15:33:45 +03:00
Emmanouil Papadeas
fbe2952346
Make shape previews look like they did in v1.0
...
The AutoInvertColors shader has been updated to make shapes hollow, similar to how the marching ants outline works.
2024-08-04 22:12:57 +03:00
Emmanouil Papadeas
a3d7725a44
Fix popups appearing in wrong places when single window mode is disabled
2024-08-03 22:36:05 +03:00
Emmanouil Papadeas
1ad4c2357f
In the Canvas scene, make Previews and PreviewsSprite nodes share the same material
2024-08-02 00:03:45 +03:00
Emmanouil Papadeas
9c7effdba3
Optimize previews of the ellipse selection and the shape tools
...
Before this commit, when these tools were being used on large areas, the software would start being very slow due to the polyline drawing. Now it simply draws an image.
TODO:
- Optimize the lasso, pixel and polygon select tools
- Mirror the previews of ellipse selection and shape tools, for consistency with the lasso, pixel and polygon select tools
- Perhaps somehow remove Previews.gd since its work is even more limited now.
2024-07-31 18:05:22 +03:00
Emmanouil Papadeas
c6d24d458e
Replace some Vector2s with Vector2is
2024-07-23 13:51:02 +03:00
Emmanouil Papadeas
3ea0ef0b5a
Make the size of the text of rulers and guides be affected by the font size
2024-07-15 00:31:52 +03:00
Emmanouil Papadeas
bcbd0ea7da
Fix crash when the theme has no default font, by using Godot's fallback font instead
2024-07-14 16:08:18 +03:00
Emmanouil Papadeas
5d06af39b2
Fix rulers being incorrect at the start
2024-07-14 16:02:16 +03:00
Emmanouil Papadeas
b4384f4085
When using the canvas, release focus of other GUI elements of the application
2024-07-13 20:38:29 +03:00
Emmanouil Papadeas
d685177918
Restore diagonal movement of selections with arrow keys
2024-07-13 20:38:04 +03:00
Emmanouil Papadeas
f79ae7e333
Fix canvas not updating when switching between projects that have the same size and amount of cels
...
Also fixes issue with tile mode not being updated properly when switching project
2024-06-07 14:49:08 +03:00
Emmanouil Papadeas
72a2c59986
Fix codespell errors
2024-05-25 00:41:57 +03:00
Emmanouil Papadeas
8414f3deaf
Fix integer camera zoom going smaller than 100%
2024-05-05 18:14:17 +03:00
Emmanouil Papadeas
9a1464f73b
Move selection offset code inside SelectionMap.is_pixel_selected()
2024-04-13 17:57:51 +03:00
Emmanouil Papadeas
1e83173697
Fix regression where interecting selections was not working
2024-04-13 15:34:36 +03:00
Emmanouil Papadeas
64b2b7b9af
Make 3D rotation gizmos lines a bit thinner
2024-04-10 02:24:21 +03:00
Emmanouil Papadeas
8c0a194468
Update camera when the viewport size changes
2024-04-06 00:09:58 +03:00
Emmanouil Papadeas
6d2d09d222
More static typing improvements
2024-03-23 04:36:26 +02:00
Emmanouil Papadeas
572fabbe66
Remove Global.reference_panel
...
Slowly trying to remove nodes from Global
2024-03-23 02:52:27 +02:00
Emmanouil Papadeas
acce1dda2e
Move even more code away from Project.change_project()
...
Making Pixelorama more modular by relying more on signals
2024-03-23 02:12:28 +02:00
Emmanouil Papadeas
48145b7f61
Use signals to move some code away from Project.change_project()
...
WIP, more code can be moved
2024-03-22 21:05:00 +02:00
Emmanouil Papadeas
64983b0404
Some static typing improvements
2024-03-22 03:07:21 +02:00
Emmanouil Papadeas
491d81f393
Minor config file section key re-organization
2024-03-21 01:51:19 +02:00
Emmanouil Papadeas
f1ef01bb87
Replace Camera2D with a custom CanvasCamera to reduce idle GPU usage
...
Necessary workaround because of https://github.com/godotengine/godot/issues/89514
2024-03-19 15:39:34 +02:00
Emmanouil Papadeas
c1b78e4c01
Implement basic clipping masks
...
A very simple implementation, not as complex as something like #768 yet, but it can be done in the future.
The main current limitation is that it doesn't work with group layers as of right now.
2024-03-14 01:08:57 +02:00
Variable
909f38bd0c
Further Reference UI Improvements ( #974 )
...
* references UI refactor
* changed select icon
* fixed a bug
2024-02-14 19:53:35 +02:00
Emmanouil Papadeas
a5a0ac103c
Enable gestures and treat long press as right click for Android
...
Gestures are not yet working very smoothly, but that's something that can be improved after 1.0
2024-02-06 02:50:55 +02:00
Emmanouil Papadeas
5dfe1cc271
Set Selection.gd process input false by default, fix cursor still being set to a cross when entering the canvas if it's disabled in the preferences
2024-02-04 00:12:19 +02:00
Emmanouil Papadeas
6a7e060f73
Set the cursor to cross when entering the canvas and to resize when hovering selection gizmos
2024-02-04 00:05:20 +02:00
Emmanouil Papadeas
276a872f73
Rename "ui" variable to "main_ui" in Main.gd and TopMenuContainer.gd
2024-02-01 20:53:52 +02:00
Emmanouil Papadeas
508f8f0d15
Minor simplifications of some parts in Selection.gd
2024-01-26 02:31:38 +02:00
Emmanouil Papadeas
b126e95b64
Almost made selection rotation with gizmos functional
...
Not exposed yet
2024-01-25 02:33:41 +02:00
Emmanouil Papadeas
3d04a8d276
Selection rotation with gizmos works on selections without content now
...
Still not ready and thus not exposed
2024-01-25 01:35:42 +02:00
Emmanouil Papadeas
964e9fbd26
Don't set the selection_map of the project to the original_bitmap, if the latter is empty
...
Shouldn't happen, but best to check in case it does. Setting empty data to the selection_map breaks selections.
2024-01-25 01:06:30 +02:00
Emmanouil Papadeas
de5db85345
When resizing a selection with gizmos or from the tool options, only set the original_bitmap when we're not already transforming content
2024-01-25 00:59:53 +02:00
Emmanouil Papadeas
f8b32762a1
Fix canceling selection content resizing breaking the selection
2024-01-25 00:45:49 +02:00
Emmanouil Papadeas
56fe1840e0
Make selections scale properly even if they don't transform any image content
...
Fixes #774 .
2024-01-25 00:40:53 +02:00
Emmanouil Papadeas
3a0977ce21
Some code cleanup in Selection.gd
2024-01-25 00:11:19 +02:00
Emmanouil Papadeas
42de5ccb29
Remove unneeded has_focus checks
2024-01-24 03:06:09 +02:00
Emmanouil Papadeas
bec7ceb974
Fix Global.can_draw being set to true all the time
...
Note for the future, perhaps using _unhandled_input() might remove the need of this variable.
2024-01-21 19:46:01 +02:00