Results 1 to 4 of 4

Thread: 1 bit (3D) texture

  1. #1

    1 bit (3D) texture

    hi,

    im trying to create a (3D) texture that only have a boolean value instead of an 8 bit value. i checked everywhere, and it seems like the type of texuture is limited to this:

    GL_ALPHA, GL_ALPHA4, GL_ALPHA8, GL_ALPHA12, GL_ALPHA16, GL_LUMINANCE, GL_LUMINANCE4, GL_LUMINANCE8, GL_LUMINANCE12, GL_LUMINANCE16, GL_LUMINANCE_ALPHA, GL_LUMINANCE4_ALPHA4, GL_LUMINANCE6_ALPHA2, GL_LUMINANCE8_ALPHA8, GL_LUMINANCE12_ALPHA4, GL_LUMINANCE12_ALPHA12, GL_LUMINANCE16_ALPHA16, GL_INTENSITY, GL_INTENSITY4, GL_INTENSITY8, GL_INTENSITY12, GL_INTENSITY16, GL_R3_G3_B2, GL_RGB, GL_RGB4, GL_RGB5, GL_RGB8, GL_RGB10, GL_RGB12, GL_RGB16, GL_RGBA, GL_RGBA2, GL_RGBA4, GL_RGB5_A1, GL_RGBA8, GL_RGB10_A2, GL_RGBA12, or GL_RGBA16. Additionally, if the extension GL_EXT_shadow is supported, may be one of the symbolic constants GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16_EXT, GL_DEPTH_COMPONENT24_EXT, or GL_DEPTH_COMPONENT32_EXT.

    there is no 1 bit value for the the texture as far as i notice. is it possible to make a 1 bit texture in openGL? if so, how can i do that? whats the difference between GL_ALPHA and GL_ALPHA8?


    thanks in advance

  2. #2
    Newbie OpenGL Pro
    Join Date
    Jan 2007
    Posts
    1,789

    Re: 1 bit (3D) texture

    No, there's no such thing as a 1-bit texture, and even if there was it is extremely unlikely to be supported in hardware. Texture memory is cheap and plentiful these days anyway so there's no real reason to be scrimping and saving like this.

    GL_ALPHA8 means "I explicitly want an 8-bit alpha texture". GL_ALPHA means "I want an alpha texture, I don't care how many bits, let the driver decide". In practice it's most likely going to be 8 on current hardware.

  3. #3
    Member Contributor
    Join Date
    Jan 2007
    Posts
    89

    Re: 1 bit (3D) texture

    Yes, there is no direct way of 1bit textures since no common hardware supports it.

    As a workaround, you can write a function in GLSL which samples a 8bit integer 3Dtexture and does the necessary bitmasking/shifting to extract one bit.

  4. #4
    Super Moderator OpenGL Lord
    Join Date
    Dec 2003
    Location
    Grenoble - France
    Posts
    5,574

    Re: 1 bit (3D) texture

    Quote Originally Posted by mhagain
    Texture memory is cheap and plentiful these days anyway so there's no real reason to be scrimping and saving like this.
    3D texture are quickly huge, and being able to have a 8x smaller texture can be the difference between "possible" and impossible.

Similar Threads

  1. Replies: 1
    Last Post: 12-26-2014, 04:57 PM
  2. Replies: 1
    Last Post: 03-10-2014, 12:51 PM
  3. Replies: 2
    Last Post: 09-27-2004, 05:25 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Proudly hosted by Digital Ocean