Thanks to applications like Krita and MyPaint, open source software users have all the tools they need to create stunning digital paintings. They are so good that you can see art created with Krita in some of your favorite RPG books. And it's getting better all the time; for example, GIMP 2.10 adopted MyPaint's brush engine, so users can benefit from MyPaint without even installing the whole application.
But what about collaborative illustration? What do two or more artists do when they want to work together on one piece? What does your work team use when you need to whiteboard during a business meeting? Those are the questions, and the answer is Drawpile.
Drawpile is a drawing application for Linux, Windows, and macOS. It's got a respectable brush engine and all the basic editorial tools (selection tools, flips and flops, mirror, and so on) to make it a good freehand digital paint application. But its most powerful feature is its easy multi-user mode. If you have Drawpile installed, you can host a drawing session from your computer or on a Drawpile server, allowing other users to join you in your virtual studio. This goes well beyond a screen-share session, which would just allow other users to view your painting, and it's not a remote desktop with just one cursor. Drawpile enables several users, each with their own brush, to work on the same canvas at the same time over a network that can span the globe.
On Windows and macOS, download and install Drawpile from Drawpile's download page. When you first launch it on macOS, you must right-click on its icon and select Open to accept that it hasn't been signed by a registered Apple developer.
Drawing with Drawpile
The Drawpile interface is simple and minimal. Along the right side of the application window are docked palettes, and along the top is a toolbar. Most of the tools available to you are visible: paint brushes, paint buckets, lines, Bézier curves, and so on.
For quick access to brushes, Drawpile allows you to assign a unique brush, along with all of its settings (including color), to the number keys 1 through 5 on your keyboard. It's an efficient and easy way to quickly move between drawing tools. The 6 key holds an eraser.
Drawpile also has layers, so you can keep different parts of your painting separate until you combine them for your final render. If you're an animator, you can even use Drawpile's onion skin and flipbook features (both available in the Layer menu) to do rudimentary frame-by-frame animation. Unlike Krita, Drawpile doesn't feature an animation timeline, but it's enough for quick and fun animations.
Drawpile isn't Krita or MyPaint, so its brush engine is simple in comparison. The preset brushes have the usual properties, though, including:
- Opacity adjusts how your strokes blend with existing paint
- Hardness defines the edges of your stroke
- Smudging allows existing strokes to be affected by your brush
- Color pickup allows your paint to pick up color from existing strokes
- Spacing controls how often the full brush cursor is sampled during a stroke
Most of these are pressure-sensitive, so if you're using a drawing tablet (Wacom, for instance), then your brush strokes are dynamic depending upon pen pressure. The tablet support is borrowed from Krita, and it makes a big difference (although it's probably overkill for mock-ups or whiteboarding sessions).
When you find a brush setting you like, you can add it to your brush set so you can use it again later. To add a brush, click the Menu button in the top-right corner of the docked Brushes palette and select Add brush.
If the Brushes palette isn't visible, go to the View menu in the top menu bar and select Brushes from the Docks submenu.
To participate in a shared drawing session, go to the Session menu and click either Host to host a session or Join to join in on an existing one.
Hosting a session
If you're hosting a session, give your session a title and an optional password (or leave it blank to allow anyone in). In the Server section, set whether you're hosting the session from your computer or from someone else's server. You can host sessions on pub.drawpile.net for free, but all of your data will be sent out to the internet, which could affect performance. If you have a good internet connection, the lag is negligible, but if you're not confident in your internet speed or there's no reason to go out to the internet because your collaborators are in the same building as you, then you can host your session locally.
If you host locally, you must provide your IP address or computer name (ending in .local) to your collaborators so their Drawpile apps can find your computer. You can find your computer name in the Sharing preferences of the GNOME desktop if you're on Linux:
You must enable Remote Login, and possibly adjust your firewall settings to allow other users to get through.
On macOS and Windows, you may be running a firewall, and you may need to provide additional sharing permissions in your control panel or system settings.
Joining a session
If you're joining a session, you need to know either the URL or the IP address of the session you're trying to join. A URL is like a website address, such as syntheticdreams.net/listing. An IP address is the numerical version of a URL, such as 18.104.22.168. Some IP addresses are internal to your building, while others exist out on the internet. If you haven't been invited to a drawing session, you might be able to find a public group on Drawpile's Communities page.
Drawing with friends
Open source has always been about sharing. Drawpile is not only software you can share with your friends and colleagues; it's software that allows you to work with them in a fun and creative way. Try Drawpile for your next project or boardroom meeting!