Register Combiner and 3D Texture border

Hi everyone.
I have a problem on 3D texture with border;

I render 3D texure using Register combiner successfully.
But When I specfy texture border , there is no image ( white screen )

Does it support Border 3D Texture on Register Combinr?

Please tell me…

for( z=0;z<depth+2;z++ ){
for( y=0;y<height+2;y++ ){
for( x=0;x<width+2;x++ ){
/* create data width border */
}
}
}

glColorTableEXT( GL_SHARED_TEXTURE_PALETTE_EXT, … );

glTexImage3DEXT( GL_TEXTURE_3D_EXT , 0 , GL_COLOR_INDEX8_EXT , width+2 , height+2 , depth+2 , 1 , GL_COLOR_INDEX , GL_UNSIGNED_BYTE , texture_data );

i don’t really see your border problem. it looks like you’re creating a texture with extrapixels at the sides to fill them with borders (thats why u use +2 in every dimension, i guess…)

is this right?

if so, are you sure that width+2 is power of 2? and height+2 and depth+2…

Try this:

glTexImage3DEXT( GL_TEXTURE_3D_EXT , 0 , GL_COLOR_INDEX8_EXT , width , height , depth , 1 , GL_COLOR_INDEX , GL_UNSIGNED_BYTE , texture_data );

According to the spec, the extra pixels are added automatically. The w,h,d you specify must be powers of two, even if you have extra border texels.

I’m also a bit perplexed by the COLOR_INDEX stuff, but give it a shot.

Thanks for Reply.

Here , width and height is power of 2 ( 64,128,256… ).

In OpenGL Programming Guide,Chapter 9, There is following description about glTexImage2D.

Both width and height must have the form 2^m+2b, where m is a non-negative integer , and b is the value of border. The maximum size of a texture map depends on the implementation of OpenGL, but it must be at least 64x64( or 66x66 widh borders).

So , I understand if I want to create a texture widh border , I specify 2^m + 2 value for width.

I try to following sentences , but there is no image…

glTexImage3DEXT( GL_TEXTURE_3D_EXT , 0 , GL_COLOR_INDEX8_EXT , width , height , depth , 1 , GL_COLOR_INDEX , GL_UNSIGNED_BYTE , texture_data );

If I specify width+2,height+2,depth+2 for length, my application is stopped.

Yes, you’re right, I was wrong, sorry. Had to reread the spec again and found the correct paragraph this time.
Have you tried without borders? It might be possible that texture borders (even though mandated by the spec) are not supported by your hardware.