One more thing to try. You can partition the volume (upload to GPU in smaller blocks) using SetPartition
method. For example, you can try this script (or change partitions to 4,4,4 or 1,1,2, …) and see it if makes any difference:
threeDViewWidget = slicer.app.layoutManager().threeDWidget(0)
vrDisplayableManager = threeDViewWidget.threeDView().displayableManagerByClassName('vtkMRMLVolumeRenderingDisplayableManager')
vrMapper = vrDisplayableManager.GetVolumeMapper(getNode('CTChest'))
vrMapper.SetPartitions(2,2,2)
Overall, I don’t see much difference when using partitions, but SetPartition(4,4,4)
seems to decrease TDR occurrence a bit for me (that otherwise would quite frequently occur with the “Adaptive” quality option).