jMonkeyEngine: делать скриншоты без отображения игры?
Я хочу делать скриншоты визуализированных сцен без отображения самой игры. Процедура, которой я хочу следовать:
createScene();
for(i = 0; i < num_screenshots; i++)
{
moveCameraRandomly();
saveScreenshot();
}
По сути, я хочу случайным образом переместить камеру в сцене для каждого снимка экрана, который я делаю. Тем не менее, мне нужно вызывать это как функцию, поэтому я не хочу отображать саму игру (но я в порядке, когда она работает в фоновом режиме). В идеале я хотел бы иметь два проекта, один из которых создает скриншоты, а другой создает игру, где первый вызывает второй. Есть ли способ сделать это?
1 ответ
Application
S могут быть запущены в режиме без головы.
Application app = new Main();
app.start(JmeContext.Type.Headless);
http://wiki.jmonkeyengine.org/doku.php/jme3:advanced:headless_server
ScreenshotAppState
Можно сделать скриншоты:
http://wiki.jmonkeyengine.org/doku.php/jme3:advanced:screenshots
Теперь вам нужно разработать комбинацию обоих, которая автоматически делает скриншоты. Я рекомендую вам прочитать исходный код ScreenshotAppState
, А уже делал подобное и могу сказать, что это возможно.