Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
ofn-interleave-layers
#1
I'm updating the old interlave-layers script to support the Gimp 2.10 layers modes.

While I am at it, is there a feature that is sorely missed?
Reply
#2
Any way of permitting a different size canvas for overlay or interleave? Maybe with an offset option?
Reply
#3
Well, this is exactly why the script requests everything to have the same size. This avoids umpteen options to set the position of the added layers (9 corner/center positions, plus arbitrary offsets (think about combining animations side by side...), and handle the cases when added layers are bigger than the current layer (crop? intersect? enlarge?). The current ways of doing it forces the user to think about it beforehand, and lets him use existing interactive tools for this: Image>Canvas size is the user's friend here, with a nice widget to position the current image in the enlarged canvas. One can also import a layer of one of the image in another, and move all layers (chainlink) to position them over the reference layer. This IMHO beats entering a pair of numeric offsets. I'm planning to improve the doc here Smile
Reply
#4
I do not have a problem with that philosophy.. simple is best

However

Quote:The current ways of doing it forces the user to think about it beforehand..

yeah, right Wink
Reply
#5
Interleave layers plugin is so good for animations.

I added layer mask on all animation frames .

Then used interleave layer plugin . But the transparency of different layers of the single image(single image to be interleaved on top in title mode) turned completely opaque .

Am i missing something ??? Why the conflict in transparency settings when using interleave layers plugin???
Reply
#6
Because for the time being the plugin doesn't take layer masks in account. You would have to apply them first.

I'll look into it. Could be complicated.
Reply
#7
GAP plugin has "Apply layer Mask" function which applies the Layer Mask on all animation frames.

But for that function to work, Need to set "Create one Multi-layer image" to "off" in "Split video to frames" Dialog (Extract video range option)

Or need to have seperate .xcf files of each frame with sequence numbers of the format 000001 and forward

May be, if interleave layers can be added as function to GAP plugin functions , It could resolve the conflict with layer masks.

Jus my 2 cents.
Reply
#8
Hmm. Checked again, and the layers are copied with their layer mask(*) (see attached files). The layer mask of course disappears if you set the merge option. So can you post an example XCF (or a pair) and tell what the problem is in terms of expected v.s. actual result?

(*) I didn't do anything, it just happens that the API works that way when you copy layers... I thought it would require additional code...


Attached Files
.xcf   InterleaveSource.xcf (Size: 18.88 KB / Downloads: 232)
.xcf   InterleaveResult-merged.xcf (Size: 27.91 KB / Downloads: 218)
.xcf   InterleaveResult-separate.xcf (Size: 39.32 KB / Downloads: 230)
Reply
#9
I had to delete my work files .

So I'll debrief with InterleaveSource.xcf . As per your example , it has only one transparency setting and that is of the layer mask .

Please find the attached .xcf file which as 3 images merged into one single layer with each image set to different transparency settings.


The attached file has all the layers opaque but the expected would be as below:

You can see 3 character images on the single layer.

Say if Character 1 = 100 % opaque
         Character 2(A silhouette) = 75 % opaque
         Character 3(A silhouette) = 50 % opaque

Since interleave layers requires it to be single layer , I did a merge down . 

I don't have the merged workfile . But after merging down , the individual layer transparency were still intact as with any other static image edit.

When i interleave the above merged layer on top of the frames , All 3 characters are 100 % opaque after execution of interleave layer plugin

The animation frames have layer mask

I tried attaching it but the size seems large(13 MB)

Final result is like this:

https://www.deviantart.com/aoshi1484/art...-812171750


Attached Files Thumbnail(s)
   
Reply
#10
(01-04-2020, 12:49 PM)techie1484 Wrote: I had to delete my work files .

So I'll debrief with InterleaveSource.xcf . As per your example , it has only one transparency setting and that is of the layer mask .

Please find the attached .xcf file which as 3 images merged into one single layer with each image set to different transparency settings.


The attached file has all the layers opaque but the expected would be as below:

You can see 3 character images on the single layer.

Say if Character 1 = 100 % opaque
         Character 2(A silhouette) = 75 % opaque
         Character 3(A silhouette) = 50 % opaque

Since interleave layers requires it to be single layer , I did a merge down . 

I don't have the merged workfile . But after merging down , the individual layer transparency were still intact as with any other static image edit.

When i interleave the above merged layer on top of the frames , All 3 characters are 100 % opaque after execution of interleave layer plugin

The animation frames have layer mask

I tried attaching it but the size seems large(13 MB)

Final result is like this:

https://www.deviantart.com/aoshi1484/art...-812171750

I don't quite get it. As far as I can tell the layers are copied over with their alpha channel.

However... when you have a GIF or when the image is color-indexed, the alpha channel is "binary", either all transparent or all opaque, you lose the partial opacitty (this is about the same as a threshold on 50% on the alpha channel).


Attached Files
.xcf   InterleaveAlphaInitial.xcf (Size: 510.94 KB / Downloads: 209)
.xcf   InterleaveAlpha-ResultSeparate.xcf (Size: 767.12 KB / Downloads: 226)
.xcf   InterleaveAlpha-ResultMerged.xcf (Size: 724.6 KB / Downloads: 181)
Reply


Forum Jump: