final int framesInFlight = 2;

int frameNumber = 0;
while (rendering) {
  final var frameIndex =
    new JCSwapchainFrameIndex(frameNumber % framesInFlight);
  final var frame = swapChainManager.acquire(frameIndex);

  // Record the frame's commands into a command buffer (see "Command Pools").

  final var submitInfo =
    JCSwapchainSubmitInfo.builder()
      .addCommandBuffers(commandBuffer)
      .build();

  frame.submitAndPresent(submitInfo);
  ++frameNumber;
}
