Skip to content

Commit 36a03ed

Browse files
authored
fixed loading of 0,0,0 block for 8bit data (#26)
loading of 0,0,0 block for 8bit fixed
1 parent 32b3ac0 commit 36a03ed

File tree

1 file changed

+15
-4
lines changed

1 file changed

+15
-4
lines changed

src/main/java/bvv/core/cache/TextureCache.java

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@
3838
import java.util.concurrent.atomic.AtomicInteger;
3939
import net.imglib2.util.Intervals;
4040
import bvv.core.backend.Texture3D;
41+
import bvv.core.backend.Texture.InternalFormat;
4142
import bvv.core.blocks.ByteUtils;
4243

4344
import static bvv.core.cache.TextureCache.ContentState.INCOMPLETE;
@@ -301,10 +302,20 @@ private void initializeBlockedTiles( ArrayList< TileFillTask > tileFillTasks )
301302
final Object dummyImage = new Object();
302303
final ImageBlockKey< Object > oobDummyKey = new ImageBlockKey<>( dummyImage, new int[] { 0, 0, 0 } );
303304
final int elementsPerTile = ( int ) Intervals.numElements( spec.paddedBlockSize() );
304-
tileFillTasks.add( new TileFillTask( new DefaultFillTask( oobDummyKey, buf -> {
305-
ByteUtils.setShorts( ( short ) 0, buf.getAddress(), elementsPerTile );
306-
return true;
307-
} , () -> true ), oobTile ) );
305+
if(spec.format() == InternalFormat.R8)
306+
{
307+
tileFillTasks.add( new TileFillTask( new DefaultFillTask( oobDummyKey, buf -> {
308+
ByteUtils.setBytes( ( byte ) 0, buf.getAddress(), elementsPerTile );
309+
return true;
310+
} , () -> true ), oobTile ) );
311+
}
312+
if(spec.format() == InternalFormat.R16)
313+
{
314+
tileFillTasks.add( new TileFillTask( new DefaultFillTask( oobDummyKey, buf -> {
315+
ByteUtils.setShorts( ( short ) 0, buf.getAddress(), elementsPerTile );
316+
return true;
317+
} , () -> true ), oobTile ) );
318+
}
308319
}
309320

310321
private List< Tile > assignFillTiles( final int size, final int currentTimestamp )

0 commit comments

Comments
 (0)