Pixelorama Documentation

Unleash your creativity with Pixelorama, a powerful and accessible open-source pixel art multitool. Whether you want to create sprites, tiles, animations,...

10,019 stars GDScript 1 file ยท ~2,362 tokens #animation#art#draw#game-development#gamedev#gdscript#godot#godot-engine
RAW Doc

File: README.md

Join our Discord community server where we can discuss about Pixelorama and all our other projects! https://discord.gg/GTMtr8s

If you like, consider helping us by sponsoring this project! It would enable us to focus more on Pixelorama, and make more projects in the future!

Download

Stable versions:

You can also find early access builds in the GitHub Actions page. There's also a Web version available.
Keep in mind that these versions will have bugs and are unstable. Unless you're interested in testing the main branch of Pixelorama, it's recommended that you stick to a stable version.

Documentation

You can find online Documentation for Pixelorama here: https://orama-interactive.github.io/Pixelorama-Docs

It's still a work in progress so there are some pages missing. If you want to contribute, you can do so in Pixelorama-Docs' GitHub Repository.

Cloning Instructions

Pixelorama uses Godot 4.7.1, so you will need to have it in order to run the project. Older versions will not work.
As of right now, most of the code is written using GDScript, so the Mono version of Godot is not required, but Pixelorama should also work with it.

Features:

  • Wide Range of Tools: Customize your workflow by dynamically mapping tools to the left and right mouse buttons, making your creation process faster and more intuitive.
  • Advanced Animation Support: Create animations with a timeline composed of layers and frames, including features like onion skinning, audio synchronization, frame tags, and the ability to draw while the animation is playing.
  • Pixel Art Focused: Perfect pixel lines, indexed mode, and rotation and scaling algorithms tailored specifically to pixel art, like cleanEdge, OmniScale, and rotxel.
  • Seamless Tilemap Creation: Use Pixelorama's tilemap layers to create rectangular, isometric or hexagonal tiles for your games.
  • Powerful Layer System: Utilize clipping masks and non-destructive visual effects like outlines, gradient maps, drop shadows, and more. Perfect for experimenting with styles and compositions, as changes can be applied without altering your original artwork.
  • Palette Management: Bring color into your canvas by choosing from pre-made palettes, importing your own, or creating custom ones inside the software to suit your unique style.
  • Visual Effects: Multiple image effects for fine-tuning your artwork.
  • Advanced Canvas Options: Utilize guides, rectangular and isometric grids, and tile mode to ensure seamless and precise pattern creation.
  • Automatic Backups: Stay safe with auto-saved backups to recover your work in case of unexpected software crashes.
  • Highly Customizable UI: Tailor the interface to your needs for maximum efficiency and a smooth workflow.
  • Export & Import: Support for various formats such as PNG, animated PNG, spritesheets, GIFs and even videos.
  • 3D Layer Support: Break the barrier between dimensions by bringing 3D models and shapes into your 2D canvas for unlimited creative possibilities.
  • Command Line Automation: Automate file exports using the command line interface for bulk exporting and streamlining workflows.
  • Project Metadata: Attach custom user data to layers, frames, and cels, making it easy to integrate with game development and other creative processes.
  • Extension Support: Benefit from free, community-made extensions, such as tools that convert your 2D pixels into 3D voxels.
  • Fully Open-Source: Pixelorama is open-source, licensed under the MIT license, guaranteeing free updates forever!
  • Multi-Language Support: With localization support across various languages, Pixelorama is accessible to users around the world. See our Crowdin page for more details.

Special thanks to


File: addons/README.md

Addons

aimgio

Keychain

gdgifexporter

godot-dockable-container

  • Upstream: https://github.com/gilzoide/godot-dockable-container
  • Version: Based on 3f10b9b6f24311090a6010da82d6eaf110e92836, but with changes in layout.gd that add a save_on_change and layout_reset_path variables, and a save(), copy_from() and reset() methods, an added setter method for layout_split and deleted set_split_cursor() in split_handle.gd, a fix in dockable_container.gd's line 44, 154 and 315, another on dockable_panel.gd's lines 86 and 87, and another in dockable_panel_reference_control.gd's line 34, which was needed due to the upgrade to Godot 4.7.
  • License: CC0-1.0

SmartSlicer

  • Upstream: https://github.com/Variable-Interactive/SmartSlicer
  • Version: Based on git commit fd2b423497a377937dbc988e309cc95afd1436ca with a modification on SmartSlicePreview.gd (lines 31-32). Only the contents of addons folder are used and the script SmartSlicePreview.gd is moved to res://src/UI/Dialogs/HelperScripts/ for better organization
  • License: MIT

File: Misc/Clickable/README.md

Building Ubuntu Touch click packages

Ubuntu Touch Click Packages

The following subdirectory contains the necessary development files to create a click package of the app for Ubuntu Touch. Special thanks to @abmyii and the UBPorts team for making this possible.

Build instructions

  1. Start by exporting the pack file with the preset "Clickable (package only)".
  2. Copy the resulting .pck file from the dist/linux directory (or wherever you specified the Linux export) into the Misc/Clickable directory and rename it to Pixelorama.pck.
  3. Copy the pixelorama_data directory from the root into Misc/Clickable.
  4. In the terminal, run the following:
text
$ cd Misc/Clickable
$ clickable build

The resulting click file should be present in the build directory inside of Misc/Clickable, which can be installed on an Ubuntu Touch device by copying the file over.

Multiple architectures

Note: To build for different architectures, pass in the CLICKABLE_ARCH environment variable.

For example, to build for armhf and arm64:

text
$ CLICKABLE_ARCH=armhf clickable build
$ CLICKABLE_ARCH=arm64 clickable build

Note: It is recommended that you provide packages for at least the armhf and arm64 architectures.

Important gotcha: File loading and saving

Due to AppArmor policy restrictions, you are not able to save to anywhere outside of the user data directory.