1
0
Fork 0
mirror of https://github.com/Orama-Interactive/Pixelorama.git synced 2025-02-19 03:53:14 +00:00
Commit graph

627 commits

Author SHA1 Message Date
OverloadedOrama
8d1c2e96f3 Finished implementing the isometric grid - Closes #305
Added the ability to change grid type in Preferences, and made an isometric cell size value which affects just the size of the cells of the isometric grid. Also updated translations.
2020-08-20 00:12:07 +03:00
OverloadedOrama
1ff32f2892 Fixed some leak issues with gdgifexporter
Made scrips extend Reference instead of Node
2020-08-19 01:01:00 +03:00
OverloadedOrama
14d958e55f Moved tile mode drawing logic from Canvas to a new script
I mostly did it so I could move tile mode logic into a new node, so I could have control over the drawing order. TileMode.gd also always draws 8 blank rectangles, which are being drawn on top of the grid, in order to hide it if it gets out of boundaries. We are now very close to implementing an isometric grid, #305.

This shouldn't have much of a performance impact, but some more testing is most likely needed.
2020-08-18 17:03:49 +03:00
OverloadedOrama
35b2c201ae Changed how isometric grid is drawn
Instead of drawing individual lines, execute draw_isometric_tile() multiple times. What this method does is basically draws a single isometric tile, which then gets repeated for the entire canvas size. Also moved all the grid logic to a new script, which gets updated less often that Canvas.gd, for optimization purposes.

Works better than the previous method, although it might be a bit slower, and currently does not work well if the canvas size is not divisible by the grid size. For now, it only gets affected by the grid width. Changing grid height has no effect.
2020-08-17 22:54:33 +03:00
Kinwailo
39808082b6
add follow canvas movement and scale option to transparent checker (#311) 2020-08-17 22:30:58 +03:00
OverloadedOrama
d49c280179 Create language radiobuttons from script 2020-08-10 03:01:46 +03:00
OverloadedOrama
da656df5b7 Added more options to the Gradient Dialog 2020-08-08 19:02:49 +03:00
OverloadedOrama
205e72f356 Gif exporting now works in HTML5 2020-08-07 11:01:27 +03:00
Martin Novák
f3bce3857a
Replace godot-gifexporter with godot-gdgifexporter (#295)
Add exporting in a separate thread and a progress bar
Remove background color option from gif export
2020-08-07 08:13:04 +03:00
Michael Alexsander
f715b566b1
Fix out-of-bounds error when color picking outside the image (#291) 2020-08-06 12:13:45 +03:00
azagaya
6d23f95d07
Added Scale3X algorithm as an option to scale sprites (#290) 2020-08-02 18:24:00 +03:00
OverloadedOrama
7269b45fc5 Added play button and zoom slider for the small canvas preview
May also be a solution for the age old issue #25.
2020-08-02 00:59:00 +03:00
OverloadedOrama
ebc9eab773 Added dialog with options for desaturation
Not sure if options for RGBA channels are really needed here, but I kept them from invert colors. We could remove them in the future if they are unneeded.
2020-08-01 04:24:11 +03:00
Martin Novák
6f645d996d
Refactor export dialog (#288)
* Split export code from export dialog to Export.gd autoload
Clean access to child nodes of export dialog

* Fix export variables set in Main.gd

* Fix more wrong variable assignments

Co-authored-by: alexhayoo <65853178+alexhayoo@users.noreply.github.com>
2020-07-31 23:26:52 +03:00
OverloadedOrama
2346ca810b Added dialog with options for invert colors 2020-07-31 03:39:46 +03:00
OverloadedOrama
051f3df147 Buttons to reset preferences to default
Similar functionality with Godot's default buttons. The buttons currently aren't visible with the gold & light themes.
2020-07-29 03:16:02 +03:00
OverloadedOrama
f88d201e1a Organized Preferences better
As a result, "General" no longer exists.
2020-07-29 01:54:15 +03:00
OverloadedOrama
ec81950139 Experimental shader feature: Expose shader's float uniforms to the UI
If the loaded shader has uniforms, they will be exposed to the UI, so the users will be able to modify the shader parameters easily. Currently only works with float uniforms.
2020-07-28 04:11:06 +03:00
OverloadedOrama
94aa94a364 Added a preview in OutlineDialog 2020-07-27 04:36:00 +03:00
OverloadedOrama
4870ebc094 Added checkbox in OutlineDialog for affection selection 2020-07-27 04:11:46 +03:00
OverloadedOrama
062ce664ca Unlock the image before getting its size in generate_gradient()
This *may* solve a rare crash related to memory.
2020-07-25 20:17:47 +03:00
OverloadedOrama
186e2259ac [EXPERIMENTAL] Added ability to load a shader as an image effect
This new feature allows users to load a .shader file (must be a GLES2 Godot shader) that will modify the image itself. This feature is experimental and possibly buggy, not all shaders are working properly and I'm not sure yet why. As such, this feature may not be included in v0.8 stable.
2020-07-25 16:26:57 +03:00
OverloadedOrama
2cb07fb848 Added option to affect all projects in the HSVDialog
HSVDialog should be ready now. These options will also appear in the rest of the image effects.
2020-07-24 03:41:10 +03:00
OverloadedOrama
1ce89c6577 Added affecting options to the HSVDialog
First option is to affect the selected pixels only. The second it to affect the current cel, or the entire frame (all cels of the frame). Options to affect all frames and all projects will be added next. I also made changes to Canvas.handle_undo() and handle_redo() to make this work.

Once all these options are added successfully in HSVDialog, they will also be added in the rest of the Image effect dialogs.
2020-07-24 03:22:12 +03:00
OverloadedOrama
af915caf7a Refactored adjust_hsv to be 3 times faster
adjust_hsv() now gets executed once instead of thrice. The results should be the same.
2020-07-23 04:39:23 +03:00
OverloadedOrama
0f82be765e Replaced the _min and _max Project variables with Project.selected_pixels
This will allow us to create more selection tools in the future, that aren't necessarily rectangular (See #129) and even enhance the current rectangle selection tool (See #56)

Current issues spotted so far:
Drawing is slower for large images, and bucket filling is also considerably slower even on a 64x64 image. Optimizations are required.
2020-07-20 22:15:34 +03:00
OverloadedOrama
8c965c1858 Added ability to change gradient direction 2020-07-18 19:01:24 +03:00
OverloadedOrama
29e9579eb6 Added basic gradient generation
A new option in the "Image" menu, gradient generation.
2020-07-18 17:23:36 +03:00
OverloadedOrama
a5a8bf1fe5 Turn Symmetry Guides visibility on and off if mirroring is enabled
Also fixed issue with "Show Guides" view menu option and having multiple projects with guides. Only think remaining is to make the Symmetry Guides look different than regular guides. Closes #133.
2020-07-16 05:05:40 +03:00
OverloadedOrama
e04b79dd4b Added pattern file name as a tooltip for their buttons 2020-07-13 03:44:08 +03:00
OverloadedOrama
d31509035f Add a "Use ZSTD Compression" checkbox on Save Sprite dialog 2020-07-11 02:09:17 +03:00
Kinwailo
4a668f71f5
Refactoring tools (#281)
* Refactoring tools

* Remove unused code

* Fixed some inferring errors and added translations

* Attempt to fix some Script Errors found in the CI workflow

* Fix bucket crash.

* Fix static type convert.

Co-authored-by: OverloadedOrama <35376950+OverloadedOrama@users.noreply.github.com>
2020-07-09 15:22:17 +03:00
OverloadedOrama
0713342c0f Change "err" variable for HTML5 in OpenSave.save_pro_file() 2020-07-05 02:22:48 +03:00
OverloadedOrama
9464c7a953 Importing palettes is now possible in HTML5 2020-07-01 04:48:18 +03:00
OverloadedOrama
d02bb52d48 Removed some old code about pen pressure 2020-07-01 03:57:27 +03:00
OverloadedOrama
7e3436d3ba Loading image files is now possible in HTML5
Had to move some palette png code around in order to make it possible to use these image files as palettes. Hopefully loading .pxo files should be next. Addresses #280
2020-06-30 22:29:24 +03:00
OverloadedOrama
637a60d9ee Saving .pxo files in HTML5 is now possible
Addresses #280
2020-06-30 20:25:43 +03:00
OverloadedOrama
a517f9178a Fix png files not being recognized when being exported from the HTML5 build 2020-06-30 18:38:26 +03:00
OverloadedOrama
fb7c1a1874 Saving .png files is now possible in HTML5
Addresses #280. Huge thanks to https://github.com/Pukkah/HTML5-File-Exchange-for-Godot
2020-06-30 18:32:16 +03:00
OverloadedOrama
6b26bb5b10 Removed custom blend_rect() method from DrawingAlgos 2020-06-30 15:07:09 +03:00
OverloadedOrama
b15e846f29 Replace hardcoded shortcut strings in Global.update_hint_tooltips()
Addresses https://github.com/Orama-Interactive/Pixelorama/issues/273#issuecomment-650149617
2020-06-27 16:01:17 +03:00
Manolis Papadeas
4f0c0d77c5
Added "Test" GitHub Actions Workflow (#269)
* Remove export_presets.cfg from gitignore

* Create export_presets.cfg

* Create godot-ci-export.yml

* Test DLL copying to artifact

* Test repo cloning and copying files

* Attempt to fix directory paths

* Fix directory paths again

* Remove export paths from export_presets.cfg

* Fix inferring script error

* Attempt to fix script error in Global.gd

This and the previous error in Input.gd only happened in the builds generated by GH Actions.

* Attempting to fix another error in Global.gd

* Checkout with submodules

* Added pixelorama folder to Linux build

And renamed "windows" to "windows-64bit" and "linux" to "linux-64bit" directories.

* Renamed artifacts

* Added emojis to step names

* Emojis for job names

* Removed --recurse-submodules from git clone

* Attempt to copy pixelorama folder to Mac's zip

* Revert previous commit

* Update and rename godot-ci-export.yml to godot-ci-test.yml
2020-06-25 18:18:20 +03:00
OverloadedOrama
fa2dfb6bca Change image offset in Resize Canvas 2020-06-24 03:21:44 +03:00
OverloadedOrama
8e2fe8dac3 Ability to import an image file as a pattern
Also moved some pattern importing code from Import.gd to Global.create_pattern_button()
2020-06-24 00:25:54 +03:00
OverloadedOrama
047561b95a Added options for when importing an image as a new frame or layer
The user can now choose which layer they want the new frame to be, and, similarly, which frame they want the new layer to be when importing an image.
2020-06-22 15:57:42 +03:00
OverloadedOrama
76b7014d84 Added UndoRedo support for importing images as frames and layers 2020-06-21 21:39:16 +03:00
OverloadedOrama
40a01f1da3 Added import image as a new layer of the current project
Just realized that I forgot to add undo/redo support of importing images as new frame/layer, oops. Will fix next.
2020-06-21 21:20:39 +03:00
OverloadedOrama
f260971056 Added import image as a new frame of the current project
Will also add a way to let the user choose which layer the new cel of the imported image will be.
2020-06-21 21:02:03 +03:00
OverloadedOrama
25d9aca0c4 Drag and drop palette files to open them 2020-06-17 16:47:24 +03:00
OverloadedOrama
f7cc9a8104 Added ability to import images as palettes 2020-06-17 03:56:46 +03:00