У меня есть программа, использующая Java3D, которую я запускаю на малине Pi. Я запускал Pi в своей сети и получал доступ к нему через VNC через другую машину, в то время как я проглатывал несколько перегибов в своей программе.Java 3D рендер на vnc, а не на мониторе
Теперь у меня он работает, хотя и немного медленно, и хотел попробовать его в конечном случае, подключив Pi к монитору и выполнив его автономно.
Однако, когда я бегу Pi на мониторе, программа не запустится, и выводит следующее сообщение об ошибке:
Canvas3D_createNewContext: couldn't make current
DefaultRenderingErrorListener.errorOccurred:
CONTEXT_CREATION_ERROR: Renderer: Error creating Canvas3D graphics context
graphicsDevice = X11GraphicsDevice[screen=0]
canvas = javax.media.j3d.Canvas3D[canvas0,0,0,252x231]
Я много о процессе рендеринга в Linux не знаю, но если любой мог бы предположить, что может отличаться от того, что делает VNC и что делает обычный сервер X11, что может вызвать проблемы. Я был бы благодарен.
Я использую Oracle Java 1.7.0_40 с Java 3D 1.5 в последней версии Raspbian.
Спасибо за чтение.
Использование VNC означает, что ваша установка _not_ [headless] (http://www.oracle.com/technetwork/articles/javase/headless-136834.html). – trashgod
Моя ошибка в терминологии. Вопрос отредактирован. – user1111284
Используйте 'java -Djava.awt.headless = true', чтобы узнать, может ли ваше приложение работать без головок или поставить головку, например. VNC, XVFB и т. Д. – trashgod