Buggy code:
public class RenderList { public static final int NUM_SUBPASSES = 4 ; public static final int NUM_BLOCKS_PER_SUBPASS = 1024 * 4 ; public static final int NUM_BLOCKS_PER_PASS = ( RenderList . NUM_BLOCKS_PER_SUBPASS ) * ( RenderList . NUM_SUBPASSES ) ; public static final int NUM_RENDER_PASSES = 2 ; private int [ ] hostRenderListPageTable ; private int dummyBufferID ; private int numOpaqueBlocks ; private int numTransparentBlocks ; private int numUnoccludedTBlocks ; private final int renderListIdx ; private long rootBufferReadFinishedSync ; private final GPU gpu ; private final Renderer renderer ; private final RendererFactory rFactory ; private final ObjectListWindow objectListWindow ; private final ThreadManager threadManager ; private final Reporter reporter ; private final IntBuffer previousViewport ; private final IntArrayVariableList renderList ; private final ListActionTelemetry < VEC4Address > renderListTelemetry = new ListActionTelemetry < VEC4Address > ( ) ; private final IndexList < VEC4Address > opaqueIL ; private final IndexList < VEC4Address > transIL ; private final IndexList < VEC4Address > unoccludedIL ; private final DecoupledCollectionActionDispatcher < PositionedRenderable > relevantPositionedRenderables = new DecoupledCollectionActionDispatcher < PositionedRenderable > ( new HashSet < PositionedRenderable > ( ) , new VerboseExecutorService ( Executors . newSingleThreadExecutor ( ) ) ) ; private final PartitionedList < VEC4Address > renderListPoolNEW = new PartitionedList < VEC4Address > ( renderListTelemetry ) ; private final CollectionAdapter < CollectionActionDispatcher < CollectionActionDispatcher < VEC4Address > > , PositionedRenderable > opaqueODAddrsColl = new CollectionAdapter < CollectionActionDispatcher < CollectionActionDispatcher < VEC4Address > > , PositionedRenderable > ( new org . jtrfp . trcl . coll . CollectionActionUnpacker < CollectionActionDispatcher < VEC4Address > > ( new org . jtrfp . trcl . coll . CollectionActionUnpacker < VEC4Address > ( new org . jtrfp . trcl . coll . CollectionThreadDecoupler ( ( opaqueIL = new IndexList < VEC4Address > ( renderListPoolNEW . newSubList ( ) ) ) , relevantPositionedRenderables . getExecutor ( ) ) ) ) , RenderList . opaqueODAdapter ) ; private final CollectionAdapter < CollectionActionDispatcher < CollectionActionDispatcher < VEC4Address > > , PositionedRenderable > transODAddrsColl = new CollectionAdapter < CollectionActionDispatcher < CollectionActionDispatcher < VEC4Address > > , PositionedRenderable > ( new org . jtrfp . trcl . coll . CollectionActionUnpacker < CollectionActionDispatcher < VEC4Address > > ( new org . jtrfp . trcl . coll . CollectionActionUnpacker < VEC4Address > ( new org . jtrfp . trcl . coll . CollectionThreadDecoupler ( ( transIL = new IndexList < VEC4Address > ( renderListPoolNEW . newSubList ( ) ) ) , relevantPositionedRenderables . getExecutor ( ) ) ) ) , RenderList . transODAdapter ) ; private final CollectionAdapter < CollectionActionDispatcher < CollectionActionDispatcher < VEC4Address > > , PositionedRenderable > unoccludedODAddrsColl = new CollectionAdapter < CollectionActionDispatcher < CollectionActionDispatcher < VEC4Address > > , PositionedRenderable > ( new org . jtrfp . trcl . coll . CollectionActionUnpacker < CollectionActionDispatcher < VEC4Address > > ( new org . jtrfp . trcl . coll . CollectionActionUnpacker < VEC4Address > ( new org . jtrfp . trcl . coll . CollectionThreadDecoupler ( ( unoccludedIL = new IndexList < VEC4Address > ( renderListPoolNEW . newSubList ( ) ) ) , relevantPositionedRenderables . getExecutor ( ) ) ) ) , RenderList . unoccludedODAddrAdapter ) ; public RenderList ( final GPU gpu , final Renderer renderer , final ObjectListWindow objectListWindow , ThreadManager threadManager , Reporter reporter ) { } private void sendRenderListPageTable ( ) { } private static int frameCounter = 0 ; private void updateStatesToGPU ( ) { synchronized ( threadManager . gameStateLock ) { renderer . getCamera ( ) . tick ( System . currentTimeMillis ( ) ) ; synchronized ( relevantPositionedRenderables ) { for ( PositionedRenderable renderable : relevantPositionedRenderables ) <START_BUG> renderable . updateStateToGPU ( ) ; <END_BUG> } } } private final CyclicBarrier renderListExecutorBarrier = new CyclicBarrier ( 2 ) ; private void updateRenderListToGPU ( ) { } public void sendToGPU ( GL3 gl ) { } private boolean sentPageTable = false ; private void saveWindowViewportState ( GL3 gl ) { } private void revertViewportToWindow ( GL3 gl ) { } public void render ( final GL3 gl ) throws NotReadyException { } public void reset ( ) { } public void repopulate ( List < PositionedRenderable > renderables ) { } public CollectionActionDispatcher < PositionedRenderable > getVisibleWorldObjectList ( ) { } public int getAttribDummyID ( ) { } static final Adapter < CollectionActionDispatcher < CollectionActionDispatcher < VEC4Address > > , PositionedRenderable > opaqueODAdapter = new org . jtrfp . trcl . coll . ImplicitBiDiAdapter < CollectionActionDispatcher < CollectionActionDispatcher < VEC4Address > > , PositionedRenderable > ( null , new com . ochafik . util . listenable . Adapter < PositionedRenderable , CollectionActionDispatcher < CollectionActionDispatcher < VEC4Address > > > ( ) { @ Override public CollectionActionDispatcher < CollectionActionDispatcher < VEC4Address > > adapt ( PositionedRenderable value ) { } } ) ; static final Adapter < CollectionActionDispatcher < CollectionActionDispatcher < VEC4Address > > , PositionedRenderable > transODAdapter = new org . jtrfp . trcl . coll . ImplicitBiDiAdapter < CollectionActionDispatcher < CollectionActionDispatcher < VEC4Address > > , PositionedRenderable > ( null , new com . ochafik . util . listenable . Adapter < PositionedRenderable , CollectionActionDispatcher < CollectionActionDispatcher < VEC4Address > > > ( ) { @ Override public CollectionActionDispatcher < CollectionActionDispatcher < VEC4Address > > adapt ( PositionedRenderable value ) { } } ) ; static final Adapter < CollectionActionDispatcher < CollectionActionDispatcher < VEC4Address > > , PositionedRenderable > unoccludedODAddrAdapter = new org . jtrfp . trcl . coll . ImplicitBiDiAdapter < CollectionActionDispatcher < CollectionActionDispatcher < VEC4Address > > , PositionedRenderable > ( null , new com . ochafik . util . listenable . Adapter < PositionedRenderable , CollectionActionDispatcher < CollectionActionDispatcher < VEC4Address > > > ( ) { @ Override public CollectionActionDispatcher < CollectionActionDispatcher < VEC4Address > > adapt ( PositionedRenderable value ) { } } ) ; }

Fix:
renderable . updateStateToGPU ( renderer ) ;