1
0
Fork 0
mirror of https://github.com/Orama-Interactive/Pixelorama.git synced 2025-01-18 17:19:50 +00:00
Commit graph

2545 commits

Author SHA1 Message Date
Emmanouil Papadeas a5e73e1fcd Fix layers not being rendered on certain devices
Looks like some kind of textureSize() bug with sampler2DArrays when accessing the z member. I have only confirmed this bug on an AMD GPU. Nevertheless, it should be fixed now with this workaround.
2023-12-10 02:59:30 +02:00
Emmanouil Papadeas 495c3b8ebe Don't call project_changed() whenever a reference image gets imported 2023-12-07 16:09:00 +02:00
Emmanouil Papadeas e4f7995b08 Update all themes 2023-12-07 03:45:13 +02:00
Emmanouil Papadeas 91bf44c4fb Make the RGB buttons pressed by default in Invert Colors & Desaturate dialogs 2023-12-07 00:21:58 +02:00
Emmanouil Papadeas 0a57690099 Change the unpressed textures for checkbox & radio buttons to be like they used to in Godot 3.x 2023-12-07 00:21:39 +02:00
Emmanouil Papadeas df0cbe0bc2 Add margins to the palette container 2023-12-06 22:32:24 +02:00
Emmanouil Papadeas acbfb82793 Update the dark theme to fix CheckButtons & CheckBoxes 2023-12-06 22:30:42 +02:00
Emmanouil Papadeas 30827461fd Add margins to the tool options 2023-12-06 21:55:13 +02:00
Emmanouil Papadeas dc06e3aa06 Change dark theme colors and remove unneeded items 2023-12-06 20:34:50 +02:00
Emmanouil Papadeas f801b5bc07 Minor UI improvements
Replaced the "FX" text with a texture in the timeline's FX button, added left and right margins in the DockableContainer
2023-12-06 17:34:03 +02:00
Emmanouil Papadeas aacd41f2e5 More z-index layer ordering fixes 2023-12-06 15:11:04 +02:00
Emmanouil Papadeas b40fef2c97 Fix the layer order being wrong 2023-12-06 04:29:35 +02:00
Emmanouil Papadeas 8ca0e12b90 Attempt to fix the "add layer" button not working when pressed 2023-12-06 04:16:53 +02:00
Emmanouil Papadeas a0868aa4a9 Add Linux ARM32 and Android in the export templates
This doesn't affect the GitHub Actions workflow
2023-12-06 04:00:28 +02:00
Emmanouil Papadeas c8bead14b2 Fix crash when the palette directory doesn't exist 2023-12-06 03:57:26 +02:00
Emmanouil Papadeas 359f509d57 Make the opacity slider affect layer opacity instead of cel opacity
And move cel opacity inside the cel properties.
2023-12-06 03:44:55 +02:00
Emmanouil Papadeas c0a8202145 Add cel properties and z-index to individual cels 2023-12-06 03:22:33 +02:00
Emmanouil Papadeas f893e68d59 Move even more code away from Global and Project to AnimationTimeline
This time related to layer buttons
2023-12-05 02:04:34 +02:00
Emmanouil Papadeas 80e351a2a1 Move some code away from Global and Project to AnimationTimeline 2023-12-05 01:46:42 +02:00
Emmanouil Papadeas d60c686368 Fix typo 2023-12-05 01:13:46 +02:00
Emmanouil Papadeas f40ef6f329 Some more LayerButton.gd code improvements 2023-12-05 01:11:51 +02:00
Emmanouil Papadeas 5ece616a9a Only use one LayerButton scene instead of using inheritence
And make some code improvements in LayerButton.gd
2023-12-05 01:08:26 +02:00
Emmanouil Papadeas a627cff107 Only have one CelButton scene instead of using inheritance 2023-12-05 00:40:16 +02:00
Emmanouil Papadeas 41fdba266a Organize layer and cel class files by putting them in folders 2023-12-05 00:33:26 +02:00
Emmanouil Papadeas 29f4f52600
Change the file format of pxo to be a ZIP (#952)
* Save pxos as zip files in disguise

* Load pxo files as zip

* Add a checkbox in save dialog to let users include the final blended images in the pxo or not
2023-12-05 00:12:05 +02:00
Emmanouil Papadeas 9a85de74b5
Make the color picker be always visible in the UI instead of a popup (#953)
* Initial work of a color picker that is always visible

* Make the new color picker fully functional

* Minor UI fixes

* Change the UI a bit so the color picker buttons look like they used to

To save horizontal space

* Add sliders as a separate panel and rename some file names

* Move the left/right color buttons next to the hex text edit

* Add color picker sliders to the same panel as the rest of the color picker, as an expandable/collapsible area

* Change default layout

* Some minor UI improvements

* Remove guides from ColorPicker.tscn

* Reduce the lines of code that calculate the average color

* Make Pixelorama remember if the color picker is expanded and its color mode

* Update tallscreen.tres

* Update tallscreen.tres

* Pixelorama now also remembers the last used picker shape

* Add some extra comments in the code

* Fix typo

* Add some translation strings
2023-12-05 00:10:42 +02:00
Emmanouil Papadeas d2734ab044 Add a basic stabilizer
Not as powerful as other art software, but should be enough for pixel art
2023-12-04 14:55:38 +02:00
Emmanouil Papadeas 1b22e75034 Some timeline UI improvements 2023-12-01 21:13:28 +02:00
Emmanouil Papadeas 2ce81f8c1c Update the dockable container addon
It should work properly on Godot 4.2 now
2023-12-01 19:01:11 +02:00
Emmanouil Papadeas 8c34532cda Store layer effect data in pxo files 2023-12-01 03:12:55 +02:00
Emmanouil Papadeas 4f1705c1e1 Update project.godot and fix formatting 2023-12-01 02:18:35 +02:00
Emmanouil Papadeas 5b1c79df05 Make undo/redo support echo again
Thanks to Godot 4.2!
2023-12-01 02:12:02 +02:00
Emmanouil Papadeas 1ae8fbb7b7 Use Godot 4.2 2023-12-01 02:11:17 +02:00
Emmanouil Papadeas 4b84803456 Loop through frames when clicking on go to previous/next frame buttons on the timeline 2023-11-29 02:47:33 +02:00
Emmanouil Papadeas ab3fb9a975 Fix bug where using shortcuts to switch between frames also moved the selection, causing deletions 2023-11-26 14:04:11 +02:00
Emmanouil Papadeas bf2cd6ee58 [skip ci] Update CHANGELOG.md 2023-11-26 03:53:30 +02:00
Emmanouil Papadeas e58993d1e3 Fix crash when linking and then unlinking cels, use set_image() and update() instead of create_from_image() 2023-11-25 17:08:41 +02:00
Emmanouil Papadeas 56264fda3b Fix not being able to transform if the selection size is bigger than the project size
Also introduces a new `return_cropped_copy()` method in SelectionMap to avoid duplicate code.
2023-11-25 00:18:44 +02:00
Emmanouil Papadeas bc8a9de4db Optimize layer blending modes and make them work on all GPUs (hopefully) - Fixes #938 2023-11-25 00:10:19 +02:00
Emmanouil Papadeas 88a2ef593e Fix project tab title not updating when loading a file and replacing an empty project 2023-11-23 16:34:25 +02:00
Emmanouil Papadeas 507149d246 Make Pixelorama run on Android 2023-11-23 04:08:25 +02:00
Emmanouil Papadeas e4373ded07 Set the default clear color to its correct value when Pixelorama first starts and no theme/clear color option has already been set in the preferences before
Also removes a piece of unnecessary code.
2023-11-22 17:54:33 +02:00
Emmanouil Papadeas 4024858292 Set the minimum size of the layer buttons container to be the same as the size of the layer options container 2023-11-22 17:44:38 +02:00
Emmanouil Papadeas 29a5994cec Fix canvas preview play button minimum size 2023-11-22 17:22:57 +02:00
Emmanouil Papadeas 768869b519 Limit outline width step to 1 and allow lesser/greater values for shader-generated sliders 2023-11-22 17:18:37 +02:00
Emmanouil Papadeas d5c520643b Fix layer button hierarchy lines being drawn in the wrong position 2023-11-22 17:12:30 +02:00
Emmanouil Papadeas d84c2dd6f3 Fix crash when deleting a layer that is being renamed 2023-11-22 15:18:55 +02:00
Emmanouil Papadeas 74273d5b59 Fix frame duration being set to x1.01 instead of x1.0 by default 2023-11-22 03:59:21 +02:00
Emmanouil Papadeas 08b03ae0e5
Implement layer effects (#940)
* Basic logic for layer effects

* Add an FX button and the ability to add effects, no way to remove or change properties of effects yet

* Basic and ugly UI for adding and removing effects, no property changing yet

* Swap effects

* Fix preload shader paths

* Change parameters for layer effects

* Change gradient parameter in layer effect shaders, and other fixes

* Use CollapsibleContainers for the shader properties

* Set the correct gradient interpolation mode and color space in the UI

* Make effects of group layers apply to children

* Change `apply_fx` to `apply_effects`, formatting, some extra doc comments

* Apply effects to other canvases, when merging layers and when exporting

* Display humanized names of the shader unifrms

* Some UI improvements to the LayerEffectsSettings

* Add an Enabled button in the layer effects window, and change checkboxes to checkbuttons

* Change BaseLayer.apply_effects() to take a cel as a parameter instead

* Make layer effect buttons be affected by the modulate icon color

* Add option in the View menu whether layer effects are displayed in the canvas or not

* Rename `apply_effects()` to `display_effects()`

* Add translation strings

* Add nearest filter to the gradient map

* Don't change Main.tscn

* Fix more translations

* Change the default cursor shape of the generated UI elements of the layer effects

* Add undo/redo and effect application (apply effect destructively)

There are some errors due to the usage of anonymous lambda methods in undo/redo, but it seems to be working well regardless.

* Make layer effect application work on all cels
2023-11-22 01:06:25 +02:00
Variable d532aee550
Added Measurements to move tool (and other fixes) (#932)
* fixed mouse guide, added measurements

* typo

* code improvements

* change width

* fixed accidental uneven indentation

* minor fixes

* formatting

* formatting

* fixed ui of canvas preview container

* centered labels of tool names

* changed text overrun behaviour of Mode to Ellipsis

* use grid container

* Revert "use grid container"

This reverts commit 8ac9ac2aae.

* Revert "changed text overrun behaviour of Mode to Ellipsis"

This reverts commit eec1482e5f.

* Revert "centered labels of tool names"

This reverts commit 9720e37ef8.

* Revert "fixed ui of canvas preview container"

This reverts commit 9809fa3336.
2023-11-21 16:54:03 +02:00