Feature Request/Discussion : Texture painting with real layers (PSD,ORA,XCF,KRA ?)

is there any addon that actually saves all the texture slots into a single layered file (psd,xcf,ora,kra…anything)??

How about one that imports a layered file as texture slots??

You say it is simple, but how come nobody has done it yet?

Also forget about the multilayer stuff done by ruesp83. That thing is in the works for years and it’s dead in the water. None of his work has been merged to trunk.

What a waste of money for everyone who contributed

I guess we are many that are trying to migrate completely away from Ps, I do 99% of my painting in blender even if it is a really destructive workflow.

Layers, Selection (circle and box, and ctrl (magic wand)) … are the only stuff I miss.

Do you people want just one file to contain it all having all kind of layers in a single texture.
Or is this about being able to switch easily between layers ?.

I’m imagining, texture ORA/PNG node, which could split into several layers.
Then it would only require some code to save/load a EXR texture, and have that node to supports multiple layers.
Maybe not that much code would need to change then.

Go for ORA, yes!

Problems with .kra and xcf: internal formats, indeed.

Problems with PSD: the internal format from hell(also open image io implementation is broken)

Problems with exr: No 8/16 bit, only linear.

Ora is basically pngs inside a zip file, can be opened by Mypaint, Gimp, Krita, Scribus and a bunch of other editors: https://en.wikipedia.org/wiki/OpenRaster

Also, its basically pngs inside a zip file with an xml, in case that didn’t come through. It’s really simple. (So are kra files, incidentally, but again, it’s an internal format)

So for everything high bit depth go exr, for everything texture painty, ora should be fine.

BTW: exr images already support multiple layers inside blender(Blender typically sticks render passes in those)

BTW2: I Think Dalai Felinto was the last dev to touch Blender file import.

What about alpha masks for layers ? We should have those too.

KWD > Thanks for the heads up ! It’s great that you took time to look into it :slight_smile:

It’s true that if photoshop doesn’t support ora, it’s not so great… I myself do not use it but most people do, so the workflow should definitely should support photoshop. Maybe there’s a way to code the feature in Blender using the ora file format and then use some sort of an external ora to psd converter ?

motorsep > Sure, alpha masks for layers would be great but that is already some kind of really advanced feature. I don’t know any 3D pro painting app that supports it. 3dcoat doesn’t and I’m pretty Mudbox doesn’t as well as Mari. I think It would be really complicated to integrate into Blender using the existing mask feature and all.

Substance Painter has great mask support, not only for layers but also layer groups, and you can apply generators and filters to them (including custom ones).

Also, are you sure about 3d coat? I’d swear I saw mask support when I tried it a couple years ago.

I think that’s my favorite thing about Substance Painter, unfortunately it would probably be one of the hardest to emulate.

3D Coat supports Masking i it’s called Freeze in 3DC. You can freeze/mask by layer painted pixels etc.
I like 3DC, pretty straight forward app.

But yeah, Layers are a must for texture painting. Texture painting is one of the few things I still never do in BLender, because of the way the workflow is convoluted.
Layers, Masking, Symmetry (by mesh, and by UV) are all a must for a tool that’s more than just a gimmick.
And definitely the support to import/export PSD Layers and other formats as well.

What I meant is support of alpha mask layers using a PSD. I don’t know any 3D painting app that can import/export a PSD file with layers AND mask layers. 3DCoat for instance flatten everything into normal layers (like all mask layers are applied for instance)
That is what I thought motorstep meant :slight_smile:
Otherwise yes, they all support freeze/masking within the app itself :slight_smile:

Yeah 3DCoat is cool but for me it did lack several major features : no 16 bits painting, no smudge brush, inability to start a stroke outside the mesh…

I’m pretty sure I had it set up that I can start the stroke outside of the mesh. I can test once I get home to confirm if you are interested.

Confirmed, you can start a stroke outside of the mesh.

doesn’t zero brush paint to layers when texturing directly to the model in the work window? Including bump and normal layers if desired?
Pin nearly real time?

OrAngE > Oh ok. I googled that and I remember reading a topic where devs said you couldn’t yet do it. It was a feature request I think. Maybe it did came through afterall ! Care to quickly explain how you did it ? :slight_smile: Anyway I could have worked without that if only I was able to paint on 16bits images and have a smudge brush. That was a deal breaker for me :confused:

FXR > zero brush is just here to speed your workflow and the ease the setup of all the images/layers creation. If you take a close look, you can see that creating a layer in zero brush still means creating a new image in a new texture slot just like you would do in Blender. Saving your work with many layers in zero brush will save every layers as separate images. Good luck importing everything back in PS :slight_smile:

What about TIFF, is that not a feasible option?

RaphaelBarros > I didn’t try it myself so correct me if I’m wrong, but it looks to me that this addon is to enable support of multiple UV maps inside one UV map, which is another thing entirely. Also, yeah, tabs can drive you nuts. It’s time to split things left and right so we don’t waste time clicking on tabs or scrolling.

cmomoney > TIFF doesn’t officially supports layers. I think Photoshop once used special metadata within TIFF files to store layers but it could only be read by PS itself. So if we do the same it will be useless since only Blender will be able to read it.

We definitely have to use something already existing, and possibly already on the market and/or used by pro apps. I don’t see any points creating a new format, or hacking an already existing file format if we have to force and convince other 2D/3D apps to support it… The point of this feature is mainly to share painting workflow with an external app.

I still think Ora is the way to go but it’s definitely troubling that PS doesn’t yet support it and honestly I don’t see any “commercial” reason why Adobe should do so. Still, maybe there’s a way to hack an Ora to PSD converter.

Well it’s worse, there’s 2 versions of layered tiff, one of which is specced and the other is what photoshop outputs. It’s really weird because adobe owns both.

Ora is indeed the way to go on the basis that PSD’s internal structure is really really complicated. Hacking a converter will take a while as well, due that.(unless your converter is a bash script that enters the following command line: “krita filename.ora --export --export-filename filename.psd”, this won’t work on windows/osx for reasons to do with dbus and virus scanners.)

The problem with formats from commercial parties, is they are not open, as like in ORA.
One could create a tool to convert PSD to ORA, but it will only work until adobe changes the format.
A strategy endlessly repeated by Autodesk for example, so people had to upgade to be able to work with their files.
Which resulted also in endless updates for Blender (import /export =>Autocad)

I think its nice to support commercials, but if we keep doing that they never get to open document standards.
However if Photoshop would see that a lot people use ORA, then they might realize they should support it too or else loose customers.
So wherever possible we better stick to open standards
Also development for a tool to do ORA <=> PSD, doesnt necessary have to be created by Blender dev team.

The way I see it, there are two main problems with OpenRaster:

  1. It doesn’t offer anything new. All this has been done before. There’s not a single feature in it that isn’t already supported by PSD.

  2. It doesn’t have a backer big enough for companies to listen to. Let’s face it, when Pixar talks to Autodesk to support OpenSubdiv, they listen. When some open source communist tries to get in touch with Adobe to support OpenRaster, he’s going to be lucky if he ever hears from anybody outside customer support.

Counterpoint: SVG and ODF.

SVG, in particular has an origin not unlike that of ORA. It took time, but now the format is used and supported all over the place. And like SVG and ODF, the ORA format does offer something new: true cross-platform, multi-application support that isn’t subject to the whims of a single proprietary company.

I agree with Fweed. Mkv is another example that comes to my mind. It was unknown by all and unsupported by most media application a decade ago. But it is open and it includes everything you could want from a container format. At a time when only proprietary container existed, it succeeded and grow famous. Nowadays you can open an mkv file with most TVs and smart-phones. Ogg could be another example.

Open file formats, in domains where only proprietary file format exists, will always spread and succeed if they are well designed and if you support them.

Ora may certainly not include new, jaw-dropping, features but it is open and to me, it features everything we could need from such image file format. It’s an open PSD and no other exists. It already has started to spread and just like SVG and ODF, I don’t see why it should fail to grow even more.