Posts: 472
Joined: Sep 2008
Reputation:
21
I've thought about this in the past but haven't really said much about it. This would bring about so many new skinning possibilities.
Essentially what I'm looking for is the ability to use an invisible texture to overlay opaque ones. So you could say use it in a group:
group
mask
texture
texture
texture
/group
Doing such you could animate the mask for instance to give some nice effect. Also if you could somehow use a gradiated mask this would give us the ability to overlay text to fade it properly etc.
I'll create an example graphic if needed, as I doubt I'm explaining it properly.
Posts: 26,215
Joined: Oct 2003
Reputation:
187
This is quite difficult to achieve, as the diffuse is multiplicative (it uses multi-texturing) so needs the same coordinates of the other textures. You can easily do that with an actual texture though (essentially you split the "background" texture into two, one below the text, one above it, with the one above it semi-transparent to do the "fading"). Ofcourse, it restricts what is in the background.
Posts: 1,126
Joined: Mar 2012
Reputation:
37
MassIV
Skilled Skinner
Posts: 1,126
I think he wants to also move the negative space (or mask) independently inside/over an image. Where now, it is always attached. +1 btw.
Also, double backgrounds and large diffuses get heavy pretty fast.
For text it would just be a nice start to be able to input two hex values for a simple top-bottom gradient.
[RELEASE] Metroid
[RELEASE] IrcChat
Posts: 26,215
Joined: Oct 2003
Reputation:
187
It's definitely not easy. Basically it would require a couple things:
1. It would only be possible on a control group. That restricts it to a single "overlay" type multiplication.
2. To do it we'd need to render all controls within a group to a separate texture, then render the overlay using multitexturing.
3. There'd be some restrictions on placements of controls can be within a group with 2 (essentially they'd be completely bounded by the group's bounds) which currently aren't in place.
Note that 2 and 3 might be a good thing. It would allow for other effects at the group level such as desaturate/blur etc. which just aren't practical (and usually aren't desirable) at a per-control level. It would also make transparent overlaying more correct (e.g. if you have 2 opaque controls that overlap and want to fade them in, you see the bottom + top controls mixed in the overlap while they fade in, whereas you should only see the top control as it's opaque).
Not something I'll be working on, but happy to support someone else.
Cheers,
Jonathan
Posts: 17,413
Joined: Aug 2007
Reputation:
588
Hitcher
Team-Kodi Member
Posts: 17,413
Does that mean it would solve the current problem when using diffuses for reflections of overlapping images getting blended into each other?
Posts: 26,215
Joined: Oct 2003
Reputation:
187
Only if they were all part of the same group. I don't think this would be the case if the reflections are overlapping by being in a list (each item is in it's own group?)