【问题标题】:jMonkeyEngine: Take screenshots without displaying game?jMonkeyEngine:截图不显示游戏?
【发布时间】:2016-01-14 11:57:15
【问题描述】:

我想截取渲染场景而不显示游戏本身。我要遵循的程序是:

createScene();
for(i = 0; i < num_screenshots; i++)
{
    moveCameraRandomly();
    saveScreenshot();
}

基本上,我想为我拍摄的每个屏幕截图随机重新定位场景中的相机。但是,我需要将其作为函数调用,所以我不想显示游戏本身(但我可以在后台运行它)。理想情况下,我想要两个项目,一个创建屏幕截图,一个创建游戏,第一个调用第二个。有没有办法做到这一点?

【问题讨论】:

    标签: java game-engine jmonkeyengine


    【解决方案1】:

    Applications 可以在无头模式下启动。

    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的源码。 A 已经做过类似的事情,并且可以判断它是可能的。

    【讨论】:

    • 非常感谢!我让它工作了,但我使用了JmeContext.Type.OffScreenSurface,因为它似乎无头不做任何渲染,所以没有保存屏幕截图。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-02
    相关资源
    最近更新 更多