using 16bit texture in material


I am generating a texture at runtime and want to use its data for vertex displacement in material.
the issue is that in material R,G and B channel is described as bytes but my data is taking two bytes.
I have 13bits of information in general.

the problem with materials is that firstly there is no nitwise operation such as >> & or | so I can join the data of two channel and make a bigger one, and Secondly even if I do it I am not sure the result of a calculation of two bytes will lead to loss of some data.

can I use textures which hold 2bytes per channel instead, and if yes how ? of what data tyoe should they be

Even if you could do bitwise operations things wouldn’t work out the way you’d expect, due to interpolation on the texture sampler.