gpt4 book ai didi

java - 配合 libGDX 和 Jetbrains MPS

转载 作者:行者123 更新时间:2023-11-30 07:39:34 25 4
gpt4 key购买 nike

我也在 LibGDX forums 上发布了这个问题.

嘿那里!在我的论文中,我正在编写一个 DSL 来描述图片的外观。这些图片将由 libGDX 根据 DSL-Input 绘制。目前,jetbrains MPS(v.3.0)和最新的 libGDX 版本已投入使用。我的实际问题是:如何设计我的 MPS 语言和 java-libGDX-picture-generator 之间的互连。

Jetbrains MPS 尚未广泛传播,但我确信,我的问题可以在不了解它的情况下得到解决。在DSL中,生成器被设计来构建一个可以执行的类(public static void main)。这里有几个方法调用来开始图片生成。将其视为generatePicture(200px, 150px, "blue")(它要复杂得多,但我认为这对我的问题并不重要)。

在libGDX中,我有几个启动器(特别是DesktopLauncher),这些是程序的主类,是启动的那些。目前,启动器启动另一个类(我将其命名为“Main”),以下是方法调用。libGDX 程序通过 jar 工件插入 MPS,因此它的方法可以在我的 DSL 中使用。

什么是让我的 DSL 代码启动我的 libGDX 程序的好解决方案?我必须进行所有这些方法调用并启动启动器。我考虑了一个额外的类来初始化启动器并进行调用,或者尝试将来自 DSL 的调用插入到 jar 类中。是否有类似的问题或有人面临过这个问题?我确信我会以某种方式让它发挥作用,但我对一个良好而顺利的解决方案感兴趣。

编辑 Main classes in mps and libgdx问题是我有点确定我需要 DesktopLauncher 及其配置来运行 PictureGenerator 中的 libGDX 内容。

编辑 2 - 第一种方法 enter image description here这又与 MPS 相关。我考虑过使用 MPS 生成器生成 Picture 类,但运行 Launcher 类。这有可能吗?要从解决方案运行类,它需要实现 IMainClass,但启动器不能。启动器看起来总是一样的。是否有功能可以运行生成的类之外的另一个类?

或者在 libGDX-site 上:是否可以合并启动器和图片类以插入配置?

最佳答案

查看robot_Kaja示例(在MPSSamples.3.3\robot_Kaja中)。 Script 概念实现了 IMainClass 接口(interface),这使得运行该概念的实例成为可能。您可以右键单击 jetbrains.mps.samples.Kaja.sandbox 解决方案中的任何脚本,您将在弹出菜单中看到“运行”选项。单击它将运行该脚本生成的代码。

就您而言,您可能还有一些类似于 Script 的顶级概念,它生成到 Java (baseLanguage) Main 类中。只要使这个概念实现IMainClass,就可以直接从 MPS 运行它。

关于java - 配合 libGDX 和 Jetbrains MPS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34875097/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com