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

3311 commits

Author SHA1 Message Date
Emmanouil Papadeas bbc93e3f82 Add an offset slider for GradientEdit's selected point 2025-01-16 00:03:15 +02:00
Emmanouil Papadeas 5cfc22a3ad Improve GradientEdit's UI and add reverse and evenly distribute points options 2025-01-15 19:22:41 +02:00
Emmanouil Papadeas 77feb2434a Add V as a shortcut for the crop tool 2025-01-12 20:41:04 +02:00
Emmanouil Papadeas f273918368 Fix the resize canvas dialog's offset not resetting to zero on dialog popup
Also renamed some of the script's methods to be snake_case
2025-01-12 20:31:25 +02:00
Emmanouil Papadeas 3f2245cd9b Fix color picker changing hue when modifying the saturation and value inside the color picker shape 2025-01-10 17:30:44 +02:00
Emmanouil Papadeas 89de8ab461 Fix add_new_layer() in ExtensionsAPI 2025-01-09 23:05:55 +02:00
Variable 60c54601ce
fix crash when importing (not-yet) supported layers from one project to the other (#1161) 2025-01-05 20:46:30 +02:00
Variable d3f287347a
add api 5 to the list of legacy versions (#1162) 2025-01-04 23:12:03 +02:00
Emmanouil Papadeas 6afdb372b3 [skip ci] Hide the Brightness/Contrast dialog 2024-12-31 19:34:17 +02:00
Emmanouil Papadeas e98d481a19 [skip ci] Raise the Extensions API version to 6 2024-12-29 22:24:15 +02:00
Emmanouil Papadeas 6c3fc95099 [skip ci] Update CHANGELOG.md 2024-12-28 22:54:04 +02:00
Emmanouil Papadeas c60c62f476 Fix tileset being completely cleared when resizing a project
Now only remove the tiles that are used so they can be remade as resized tiles. Unused tiles remain in the tileset as is.
2024-12-27 03:30:56 +02:00
Emmanouil Papadeas 616bd91c49 Mirror image image effect now works with indexed mode 2024-12-22 02:40:05 +02:00
Emmanouil Papadeas a698668930 Fix #1157 for the polygon select and the curve tool as well 2024-12-21 03:52:33 +02:00
Emmanouil Papadeas 59254b943f Attempt to fix left tool preview not being shown when a right tool with a preview is selected
Maybe fixes #1157
2024-12-21 03:44:54 +02:00
Emmanouil Papadeas 033238b787 Fix the gradient of the noise generator's color ramp not updating properly 2024-12-21 00:32:56 +02:00
Emmanouil Papadeas d4c3ae3dc6 Change PXO_frame and PXO_layer to PXO_frame_index and PXO_layer_index 2024-12-21 00:31:51 +02:00
Emmanouil Papadeas b4fbb1df75 Set input as handled when dragging on a ValueSlider 2024-12-20 00:20:37 +02:00
Emmanouil Papadeas 360aa250c4 Hide the horizontal alignment option from the text tool
It's not doing anything at the moment and I am unsure why. We could expose it again if we figure it out.
2024-12-18 23:21:28 +02:00
Emmanouil Papadeas 80e93629d1 Add PXO_frame and PXO_layer as special loaded shader uniforms 2024-12-17 19:36:01 +02:00
Emmanouil Papadeas 5a17117d59 Improve support for visual shader loading
ShaderLoader now gets the VisualShaderNodeTextures of the VisualShader into account, allowing for visual shaders that are being loaded to have default textures.
2024-12-17 18:11:36 +02:00
Emmanouil Papadeas 3edb37168c Fix issues with the noise generator node
Its nodes now get updated when changing the noise texture, and it waits for `noise_texture.changed` to emit before emitting the `value_changed` signal. See https://docs.godotengine.org/en/stable/classes/class_noisetexture2d.html for the explanation.
2024-12-17 13:38:18 +02:00
Emmanouil Papadeas 0f53fc32fe Start working on a noise generator node
Used for shaders that need noise textures.

Still WIP. needs the nodes to set their appropriate values when setting a noise texture. Which means I'll probably have to re-write the whole thing, yay :D
2024-12-17 03:21:23 +02:00
Emmanouil Papadeas 618d5f4916 Fix bug with ValueSliderV3 where the grid_columns variable was setting the ratio's visibility instead 2024-12-17 02:31:21 +02:00
Emmanouil Papadeas a8392fb14f
[skip ci] Update bug_report.md 2024-12-17 01:43:43 +02:00
BrotherShort 91caefee4a
Update DrawingAlgos.gd (#1151)
Fixed ellipse draw algos bug.
2024-12-17 01:07:11 +02:00
Variable 7de7f3fab8
renamed the selection tile mode to wrap strokes, as it is a more accurate description. (#1150) 2024-12-17 01:06:58 +02:00
Emmanouil Papadeas 2d81bd495a Move value and basis slider files into a folder 2024-12-17 01:04:56 +02:00
Emmanouil Papadeas 11ae7c007b Implement support for elapsed time in loaded shaders for layer effects
Simply add `uniform float PXO_time;` in the shader's uniforms, and replace all instances of `TIME` with `PXO_time`. This will make the shader animate per frame.
2024-12-17 00:53:58 +02:00
Emmanouil Papadeas fede8c3e49 Update Translations.pot 2024-12-16 19:11:44 +02:00
Emmanouil Papadeas 1710294c9f Update CHANGELOG.md 2024-12-16 19:10:42 +02:00
Emmanouil Papadeas 8ab4af1047 Fix curve in the curve edit node not redrawing immediately after adding a new point 2024-12-16 19:10:03 +02:00
Emmanouil Papadeas 8bd31112be [skip ci] Update CHANGELOG.md 2024-12-16 01:36:11 +02:00
Emmanouil Papadeas d980eec683 [skip ci] Update CHANGELOG.md 2024-12-16 01:32:46 +02:00
Emmanouil Papadeas 39c85c3079 Implement the ability to load custom shaders and image and layer effects
Finally expose the feature of importing custom shaders as image effects, and implement custom shader loading for layer effects as well. To load a shader, drag and drop a .gdshader file into Pixelorama and it will get copied into `user://shaders`. Then, in the Effects menu, a new "Loaded" submenu will appear, and the new shaders will also be available in the layer effects dialog. Since they are stored on a persistent location, the shaders will also be available on the next times Pixelorama will launch as well.
2024-12-16 01:18:56 +02:00
Emmanouil Papadeas 8ceeba76c0 Update Translations.pot 2024-12-15 21:14:11 +02:00
Emmanouil Papadeas 93eab6929b For PixelCel's set_content not working when passing an Image instead of ImageExtended 2024-12-15 21:05:10 +02:00
Emmanouil Papadeas 1d9b9fda1e Add color curves layer effect 2024-12-15 21:04:32 +02:00
Emmanouil Papadeas 482dbecd13 Add presets to the curve edit widget 2024-12-15 20:46:07 +02:00
Emmanouil Papadeas cf8dacf0f5 Fix curve edit tangent points
They are working properly now
2024-12-15 18:37:21 +02:00
Emmanouil Papadeas 048058bd35 Implement a color curves image effect
Massive thanks to Material Maker for the custom widget code. The color curves effect is still WIP, I need to make the tangent points visible (not yet sure why they aren't now), add some curve presets, and implement it as a layer effect as well.
2024-12-15 18:10:55 +02:00
Emmanouil Papadeas 605bff7324 Show the index of the palette swatches when color indices are visible on the canvas 2024-12-15 00:13:59 +02:00
Emmanouil Papadeas 206773c4e7 Play audio at the correct frame when switching frames while the animation is running 2024-12-14 21:08:31 +02:00
Emmanouil Papadeas b5d5c44c4b Use the linked cel rectangle for audio cels 2024-12-14 18:01:46 +02:00
Emmanouil Papadeas 8e55b91a39 Unmute audio layes when making them visible while the animation is playing 2024-12-14 17:18:52 +02:00
Emmanouil Papadeas 0fad406967 Fix extension entry enlarged thumbnail dialog not being on top 2024-12-14 16:58:43 +02:00
Emmanouil Papadeas 4b12f764b5 Add a MarginContainer in the timeline's animation buttons 2024-12-14 16:10:05 +02:00
Emmanouil Papadeas 02d1900dc2 Make brush size in draw tools not affect the draw tiles mode
We could change it again if we implement it in a non-confusing way
2024-12-14 16:05:51 +02:00
Emmanouil Papadeas 18e9e2ec56
Implement audio layers (#1149)
* Initial work on audio layers

* Load ogg audio files

* Fix playback position

* Support mp3 files

* Play audio at the appropriate position when the animation runs, and stop when the pause button is pressed

* Change audio cel textures for the cels where audio is playing

* Fix audio not playing at the appropriate position

* Don't play audio is layer is invisible

* Set the audio layer names to be the imported audio file names

* Import audio from videos

* Export videos with audio

Only works with mp3 for now

* Remove support for ogg audio files as they cannot be saved

At least until I find a way to save them. Wav files will be supported with Godot 4.4

* Fix adding/removing in-between frames breaking the visual indication of audio cels

* Minor code improvements

* Export audio in videos with custom delay

* Support frame delay

* Change the frame where the audio plays at

* Fix crashes when the audio layer has no track

* Remove unneeded cel properties for audio cels

* Pxo loading/saving

* Load audio files from the audio layer properties

* Change the audio driver to Dummy from the Preferences for performance reasons

* Clone audio layers, disable layer merge and FX buttons when an audio layer is selected

* Easily change the playback frame of an audio layer from the right click menu of cel buttons

* Update Translations.pot

* Some code improvements and documentation

* Stop audio from playing when looping, and the audio does not play at the first frame

* Update audio cel buttons when changing the audio of the layer

* Mute audio layer when hiding it mid-play

* Only plays the portion of the sound that corresponds to the specific frame so maybe we should do that as well

When the animation is not running. If it is running, play the sound properly.

* Some code changes to allow for potential negative frames placement for audio

This woud allow audio to be placed in negative frames, which essentially means that audio would start before the first frame. This is not yet supported, however, because I don't know how to make it work with FFMPEG.
2024-12-14 00:30:04 +02:00
Variable 6100bdc8df
QOL improvements to the tileset panel (#1148)
* Added a background to swatches

* Improved UI for tilemap editor

* Implemented requested changes
2024-12-13 21:30:03 +02:00