[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-kimageshop
Subject:    Brushpack file format
From:       Boudewijn Rempt <boud () valdyas ! org>
Date:       2013-04-16 9:15:35
Message-ID: 2830126.Bn2Mda2N7n () linux-ixka ! site
[Download RAW message or body]

Hi,

On the last day of LGM, the mypaint, gimp, tupi and krita people got together, \
originally to take the first steps towards integrating the MyPaint brush engine in \
our applications. This quickly led to a discussion centered on how to share mypaint \
brushpacks between applications, which got generalized into a design session on a \
bruskpack file format we can share between apps like krita, gimp and mypaint.

Here's the proposal, now that I've got network again:

Use-cases:

* we want a file format that can pack brushes into a single, complete package that \
artists can share, install and use directly.

* users can decide whether to download an e.g. mypaint brushpack and install it for \
mypaint only, or in a shared location so other applications that can use that brush \
type can load it as well. Sharing is opt-in.


Installation locations:

Following the create spec:

/usr/share/create/brushpacks: global location for shared brushpacks. If a distro \
creates a repo package of a brush pack, it should be installed here.

/usr/share/apps/$APP/...: global location for application-specific brushpacks. Here \
the brushpacks bundled with an application are stored

$HOME/$APP_DATA_DIR/...: e.g. .kde/share/apps/krita/brushpacks: here the user \
installs brushpacks that she doesn't want to share with other applications

$HOME/.local/share/create/brushpacks: here the user can install brushpacks they want \
to share between application.

On windows, the windows equivalents are used, on OSX ditto.

Brushpack format:

* A zip file that is unzipped on installation.

* The zipfile contains one or more toplevel directories: every toplevel directory is \
a brushpack in its own right. The application should use the directory name as a tag \
or identifier for the brushpack in the gui.

* the toplevel contains a manifest.xml file that contains author, copyright and \
license information.

* Allowed licenses are
	- proprietary
	- public domain
	- CC-BY-*

Example:

<?xml version="1.0" encoding="UTF-8"?>
<document-info>
 <about>
  <title>Oils</title>
  <description></description>
  <date>2013-04-06T17:12:10</date>
  <creation-date>2013-02-03T22:01:18</creation-date>
  <url>where you would get a new version</url> 
  <license>public domain</license>
 </about>
 <author>
  <full-name>John Doe</full-name>
  <url>http://johndoe.deviantart.com</url>
  <email></email>
 </author>
</document-info>

* The brushpack directories can contain a tags.xml file that contains tags for the \
containing brushes, following the gimp tagging format.

* A brushpack directory contains all the necessary subfolders following the CREATE \
spec with the necessary resources to create the brushes. It is up to the application \
to decide whether to show brush-specific resource (patterns, gradients, brush tips) \
in the generic gui.

Example:

deevad.zip for Krita contains

/manifest.xml
/deevad/
/deevad/tags.xml
/deevad/brushes/gimp (contains .gbr files)
/deevad/patterns (contains patterns for textured brushes)
/deevad/gradients/ (contains gradient color sourcess)
/deevad/krita_paintoppresets (contains krita paintop presets)


For gimp, it would be more like:

/manifest.xml
/deevad/
/deevad/tags.xml
/deevad/brushes/gimp (contains .gbr files)
/deevad/gimp_gdyn
/deevad/gim_gtp

For mypaint
/manifest.xml
/deevad/
/deevad/tags.xml
/deevad/mypaint_myb

Note that we didn't decide on a namespace/naming convention for the kpp, gtp, myb etc \
directories. It might also be good to fix brushes/gimp to follow any new convention \
(since brushes/gimp can contain abr, gbr, vbr and gih files, at least).

Brushpacks should not be mixed: so no mypaint brushes and gimp brushes in one \
brushpack.


Mimetype and extension:

mimetype: application/x-create-brushpack+zip
extension: .brushpack


-- 
Boudewijn Rempt
http://www.valdyas.org, http://www.krita.org, http://www.boudewijnrempt.nl
_______________________________________________
Krita mailing list
kimageshop@kde.org
https://mail.kde.org/mailman/listinfo/kimageshop


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic