I am not having great success with the tried and true image capture routines. Sometimes images are captured correctly and other times only partial images are generated. When capturing every frame drawn, performance is severely degraded and many times the Canvas3D itself only shows partial or blank images. I tried putting the IO routines in a separate thread to which I simply pass the postSwap-captured images but performance remains bad and the captured images are no better. I changed HelloUniverse to capture every frame to disk and am attaching my two source files. Two buttons "Start Capturing" and "Stop Capturing" control the capture process. (Images are saved to the folder "C:/CaptureHelloUniverse". Please, someone, let me know if I am doing something wrong or try the program out on your computers to see if it works better on your systems. The boolean variable useIOThread in CaptureCanvas3D can be changed and the program recompiled to change from handling the IO in the same thread as postSwap or in a different thread.
Thanks, Raffi
CaptureHelloUniverse.java
Description: Binary data
CaptureCanvas3D.java
Description: Binary data