You seem to be confusing your terminology a bit, which makes it hard to tell what you’re talking about.
The internal format of an image is the format of the data that is stored by OpenGL. If you’re using a function like glTexImage2D, that would be the third parameter.
The pixel transfer format and type (the latter being the only place where “GL_UNSIGNED_BYTE” would be valid) are about something else entirely. These parameters define how a pixel transfer operation takes place. Specifically, these values describe the format of the data you are passing to OpenGL.
So if you have a glTexImage2D command like:
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA32F, ..., GL_RGBA, GL_FLOAT, ptr);
What you are saying is this:
→ I want OpenGL to allocate a texture, where each texel contains 4 channels, and each channel is a 32-bit floating point value [GL_RGBA32F]. I then want to initialize this data from a pointer that contains 4 channels [GL_RGBA], and each channel is a 32-bit floating point value [GL_FLOAT].
If you did this:
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA32F, ..., GL_RGBA, GL_UNSIGNED_BYTE, ptr);
Here is what you’re saying:
-> I want OpenGL to allocate a texture, where each texel contains 4 channels, and each channel is a 32-bit floating point value [GL_RGBA32F]. I then want to initialize this data from a pointer that contains 4 channels [GL_RGBA], and each channel is an 8-bit unsigned normalized byte [GL_UNSIGNED_BYTE].
This means that OpenGL will have to convert each pixel from your 4-channel unsigned normalized byte to a 4-channel floating-point value. Unsigned normalized bytes always range from [0, 1], so that is the range of values that you initialize the texture with.
Also, this will be exceedingly slow, so please don’t do this…
Floating point data is floating point data. It will therefore return exactly what you put into it. If the only values you loaded were on the range [0, 1], then that’s what values you get out.
The “intensity of the color” is entirely up to how you interpret it. The data doesn’t even have to be a color; it’s just a floating-point value. It means exactly and only what you want it to mean.