Using GIMP XCF as textures in Blender? / Workflow tips?

I’m using the GIMP to create textures for use in Blender, but the workflow is very awkward. My current workflow is this:

  1. Make a change to the texture.xcf in GIMP.
  2. Save the changed XCF file.
  3. “Save A Copy…” to make a flattened texture.png file.
  4. Reload texture.png in Blender and view the changes in 3D.
  5. Repeat from #1.

The real problem is step #3, because I have to click through several dialog windows (e.g. select file to export to, confirm flatten image layers, set PNG options) each time. Clicking through some windows wouldn’t be such a big deal if I were spending an hour between each save, but I often want to make a small change, maybe just one or two brushstrokes, or tweak the color, and then see how it looks when applied to the model in Blender. Often, I spend about 2 seconds doing the Save Dance for every 1 second I spend actually painting the texture. Obviously, there is room for improvement here!

Some ideas I have had about improving the workflow:
a) Add XCF support to Blender, to directly load XCF files.
b) Make more significant changes to the texture between each save, so not as much time is wasted.
c) Paint directly to a PNG file, or use Blender’s 3D texture paint tool.
d) Make a button or script (maybe using ImageMagick?) to do the conversion for me, either in GIMP or Blender, or added to my window manager panel (e.g. lauch in just like any other application).

Native XCF support would be ideal. The conversion step could be eliminated entirely; I’d just save the XCF file as usual, then reload it in Blender, easy peasy. However, as near as I can tell, Blender does not load XCF files right now, so someone would have to program it (the resulting texture is totally empty when I try). And of course, Blender would have to be able to flatten all the layers together automatically, using the correct blend modes and opacity; without layers, there’s not a lot of point in using XCF instead of PNG. There are other uses of layers that might be worthwhile (e.g. one layer is bump map, one is specular color, one is diffuse color…), but I don’t need that fancy stuff for my own, present purposes.

Option (b) wouldn’t be too bad, but it reduces the level of feedback I would get while working. Often I’m only working on one part of the texture, tweaking it to get it to look correct; obviously, the best way to judge if it looks correct is to view it on the model. There’s no sense in making 10 changes to the same part without checking if the first change helped or not.

Option © is not really better than having to click through 4 dialog boxes each time I save. As mentioned before, there is a reason I’m using XCF instead of PNG, and that reason is layer support. I have tried the 3D texture paintbrush tool in Blender (as well as its 2D counterpart in the UV/Image Editor window), and it’s great for starting out on a texture, but impractical for more finished works because of its limited feature set.

Option (d) would reduce the number of times I have to point-and-click the mouse to convert the texture file formats, but it’s still an unwanted speed bump in my workflow.

And, yes, I have heard about the Blender-Verse-Gimp plugin, but it doesn’t look to be very usable, and the whole point here is to make my life easier. Besides, I don’t need real-time texture updating, certainly not at the cost of stability.

So, I’m asking for tips/information about other possible ways to improve my workflow. If some other texturers could talk about their own workflows, or how they deal with this problem, that could help too. I might be able to write an XCF-support plugin myself (after a month of researching both Gimp and Blender’s insides), but I only touch C code when absolutely necessary, and there are many other things I would rather spend my time on (like, say, using Blender!).

I know nothing about scripting, really, but the imagemagick converter sounds like it would be the simplest in the end. If a script was written, you could just drag your xcf file onto the script icon, let the magick happen, then poof - there’s your flattened image. Course, this would be linux dependant. But, wait maybe until the libre graphics conference is over (this month I think) - I’m sure there will be some cool stuff after that.

There’s a little app for OS X that does exactly this (I think it’s an applescript under the skin) but obviosly only from one flat image format to another (with resolution blah blah options).

I second native xcf support. What would be even better is that since gimp supports gzip compression along with xcf support if Blender could read the xcf from a gzip compressed file. Ah…Wishful thinking.

What about working with GIMP inside Blender. You would have the Blender interface with all of the tools and layering of GIMP.

I would love to see this!

Digital FX Artist : Dood, that would be the END. I would be set for life if that ever happened.

Christ, could you even IMAGINE a mapping of GTK to Blender’s Toolkit?! You could have a gimp space, and a gimp menu space (which I guess would work similar to the buttons view, but you could add menus and stuff like you can in gimp)… and then you could add other GTK apps, like gaim…

Blender would eventually just become an Operating system and be done with it.

LoL Blender operating system. Good idea. It’d be more stable then windows and the bugs would actually get fixed, unlike with windows.

About your image troubles, why not use .psd (photoshop format). Gimp can save and read that type of file and I think it also works in blender. (Haven’t checked the latest version.)

In fact I have a list of image formats formats blender took.(Meh, boredom.)

.bmp
.psd
.sgi
.tga
.tif
.gif(non animate)
.jpg
.png

i definitely second (or third) the proposal for native support - there seems no reason why not - its open source and it might be a really good opportunity to integrate some sort of layer support - for motion graphics use - photoshop files can be directly loaded into after effects as ready to animate comps - i just did a similar thing with gimp / blender and it took about an hour to separate off the layers and then export each of them individually and reload and assign each one in blender, this was a document with only about thirty layers, imagine what a serious comp would take a whole day for something really flashy! - a step that would take seconds with the adobe route…

Yeah that particular “save as” procedure in gimp was bugging me too.

For some things I figured out that “fireworks” (in Mx era) png worked in blender without a single hiccup, so while on windows and for simpler things I actually preffered fireworks there …

Haven’t played with cs3 yet (although I’ve got the web bundle … no time)

In Blender, you can open a PSD. It will flatten the image, but you can just hit ctrl-s in gimp, then alt-r in Blender’s UV image editor :slight_smile:

I hope that helped, or maybe I just veered off topic >_>;;