Colorchannelremap vs texture split/join

in dx9, the texture split/join were handy in merging channels from different textures. how is this achievable with colorchannelremap or some other dx11 node ?

hsva alternative.v4p (5.5 kB)

could it be that texture split/join nodes for dx11 wouldn’t be such a bad idea ?

it’s a compute pipet example

hä?.. no text …

I guess it’s not clear if you mean Texture - EX9.Texture Split or the RGBA texture fx

i have posted an example with the question, i am looking for dx11 equivalents of the texturefx rgba/hsva/hsla (join/split)

Oh I hadn’t actually seen that those come in hsv/hsl flavors- that’s nice. Not in dx11 now afaik. But very simple shaders to port.

so it does make sense to have these in dx11 ?

Like Antokhio said, the Split Node is actually there behause that’s the Way the dx11 Pipet works.

Or do i misunderstand that, too?

please read the first post

for that u just need tfx, with HSV conversion.
check if u got ColorSpace.fxh
if u need i can help warp it

ok here is the tfx to merge channels
i’m not sure it is a good idea to have these heavy nodes for splitting 1 texture into 4, but anyway - could make some wrapper patches for ColorChannelRemap and this one (and have exactly the same functionality as RGBA/HSVA split/join tfx from dx9)

ColorChannelJoin.zip (3.0 kB)

is there another way to get this functionality ?

would be glad to give a patching hand, but with b33, the colorchanneljoin is red (“object reference not set to the instance of an object”)

i see it in the dx9 version, including it in a dx11 shader could be a not so heavy solution ?

sorry, forgot that .fxh file - that’s why it did not compile

ColorChannelJoin_1.zip (3.9 kB)

how about a more general case of get/set colorchannel ?

  • 2 nodes instead of 6 texturefx split/join nodes and also no more need for setalpha
  • more intuitive with spreads of textures
  • maybe less heavy compared to colorchannel remap/join

inputs could look like this
getcolorchannel: texture, technique, index
setcolorchannel: texture, input, technique, index

output of getcolorchannel should be an actual one channel texture, not as it is with dx9 texturefx split nodes, where splitting a rgba texture still gets you a rgba texture

what do you think ?