scene2d相关内容

如何获取子演员中某个点的世界坐标?

我有 Group 对象,这些对象由其他 Group 对象组成,最终由 Actor 对象组成.现在,当组和演员被旋转、偏移和缩放时,“世界"中的坐标或相对于根节点的坐标会发生变化.如何获取演员本地空间中某个点的世界坐标? 为了更详细地说明,这是我想要的示例: 组父组;演员 childInGroup;...parentGroup.addActor(childInGroup);childInGr ..
发布时间:2022-01-12 17:34:37 其他开发

无法循环操作.库GDX

我在 4 天前问过一个问题.得到了一些帮助,现在我的代码看起来像 ColorAction actionBtG = new ColorAction();ColorAction actionGtB = new ColorAction();序列动作序列动作;重复动作重复动作 = 新重复动作();形状渲染器形状渲染器;颜色蓝色 = 新颜色(Color.BLUE);@覆盖公共无效创建(){shapeRen ..
发布时间:2022-01-12 17:32:42 Java开发

libgdx - 如何在舞台上添加背景图片?

我正在学习 libgdx,但我被困在一个点上.. 我在我的舞台上添加了一个按钮,现在我想在舞台上添加一个图像,以便图像看起来像按钮的背景图像.我的意思是说按钮应该位于图像上.我一直在寻找教程,但无法做到这一点. 怎么做?有什么帮助吗? 解决方案 您唯一需要做的就是在绘制Button之前绘制背景. 有几种可能的方法来做到这一点: - 您可以将背景作为 Image(Actor ..
发布时间:2022-01-12 17:28:05 Java开发

使用 libgdx 进行scene2d 按钮缩放

我不知道是不是只有我一个人,但 drawables 让我感到困惑.他们是打算保持给定的大小,还是有办法在其中缩放图像?我知道他们可以使用 Ninepatch 通过拉伸图像来填充某些区域,但我想缩放它拉伸的图像.我正在使用 TextButton对于我的菜单按钮,但它们太大了,我很想知道如何缩放它们.我正在从地图集中检索皮肤,其中包含九个补丁图像.这是设置屏幕:这是我正在使用的包中的图像:下面是 Te ..
发布时间:2022-01-12 17:22:38 移动开发

覆盖绘图顺序scene2D的舞台

在 libgdx 中为您提供了一个复杂的 Scene2D 图,其中包含多个 Group's 和 Actor's.您希望用户选择一些 Actors 并在最后绘制它们,以便它们看起来集中在任何其他 Actors 之上. 我想迭代 Stage 两次.第一次绘制未选中的Actors,第二次绘制选中的actors.但是,我没有看到任何“好的"方法来强制执行此行为. 我更喜欢干净的选项.我不想为了 ..
发布时间:2022-01-12 17:21:47 Java开发

在大世界的游戏中正确使用scene2d的舞台

如果整个“游戏世界"比视口宽数千倍,并且如果我想使用 scene2d 将游戏对象作为 Actor 进行管理,我应该创建与整个世界,或者 Stage 应该是当前视口周围的某个区域,而不是整个世界? 换句话说,具有更大宽度和高度的 Stage 本身是否会消耗更多内存,即使我只在其一小部分视口大小的部分上渲染对象? 解决方案 我想你误解了 Stage 到底是什么.舞台本身并没有真正的尺寸.您无 ..
发布时间:2022-01-12 17:21:39 其他开发

如何使用位图字体作为场景 2d 演员?

我正在使用 libgdx 框架开发游戏.如何在位图字体对象上实现 scene2d 动作?这样我就可以写一些文本,比如得分、消息和像场景 2d 演员一样运行动作. 解决方案 看看 Label 类,特别是采用 CharSequence 和 LabelStyle.初始化 LabelStyle 时,您可以提供 BitmapFont. 请注意,如果您想缩放或旋转标签,您需要将其包装在 Cont ..
发布时间:2022-01-12 17:15:31 其他开发

何时在 Libgdx 中使用 ShapeRenderer、Mesh + SpriteBatch、Box2D 和 Scene2D?

我是 Android 游戏开发的新手,在我开始使用 libgdx ShapeRenderer 并进行了更多搜索后,如果我从右脚开始,我会感到困惑. 所以,我真正想知道的是何时应该使用 ShapeRenderer、Mesh + SpriteBatch、Box2D 和 Scene2D. 解决方案 LibGDX 有很多(大部分是正交的)用于渲染的 API.我仍在学习其中的许多方法,但我可以 ..
发布时间:2022-01-12 17:14:22 移动开发

Libgdx 视锥体剔除在 actor.draw() 中

我正在使用 libgdx 开发一个小游戏.这是一个 2D 自上而下的游戏,上面有一些大地图和许多对象.所以我只想在我的视锥中渲染东西.我见过 camera.frustum.***inFrustum(Paramter... p).但我使用的是scene2d,我在Stage中设置了相机,将SpriteBatch的投影矩阵设置为camera.combined和我的Actor 在重写的 draw(Spri ..
发布时间:2022-01-12 17:10:10 Java开发

如何使用 Init() 方法在 LibGDX 中重新启动屏幕?

我在 LibGDX 中创建了一个具有多个屏幕的简单游戏.我想在触摸重启按钮后重启某个屏幕,但我不知道该怎么做.我对此进行了一些研究,所有答案都导致我没有在 show() 中加载我的资产,而是在我不太熟悉的 init() 方法中加载.我想知道如何使用这个 init() 方法重新启动屏幕.到目前为止,我将大部分初始化都放在了构造函数中,有些在诸如 restartButton() 方法之类的方法中进行了 ..
发布时间:2022-01-12 17:04:44 移动开发

将 MVC 与 libgdx scene2d 一起使用

我开始使用 libgdx 开发游戏.这实际上是我的第二次尝试,因为当我开始第一次尝试时,我并不了解 libgdx.在我的第一次尝试中,我有一个带有逻辑和纹理的演员子类.然后我开始阅读 Gustavo Steigerts 教程,我看到他试图将逻辑和视图分开.我尝试做同样的事情,但视图是我的演员子类,包含有关大小和位置的信息,所以它必须进行碰撞检测,这是逻辑的一部分.此外,如果您在 Google 上搜 ..
发布时间:2022-01-12 16:58:29 Java开发

以编程方式执行点击 Actor libgdx

我的问题很简单. 我将一些 ClickListener 添加到 Actor 中.我想以编程方式对它们执行点击事件. 类似于 myActor.performClick(); 解决方案 我想出了一个解决方案: public static void performClick(Actor actor) {数组听众 = actor.getListeners();for(i ..
发布时间:2022-01-12 16:56:35 其他开发

Libgdx |场景2d |设置表格的背景颜色?

我正在创建一个菜单(就像那个是飞扬的鸟,当你死后它会在播放屏幕上弹出).我创建了一个扩展表格的类,我想将表格的背景设置为白色.有没有办法做到这一点? 解决方案 你可以这样做: Pixmap bgPixmap = new Pixmap(1,1, Pixmap.Format.RGB565);bgPixmap.setColor(Color.RED);bgPixmap.fill();textur ..
发布时间:2022-01-12 16:52:04 Java开发

将 Freetypefont 放入 libgdx 皮肤

在我的 uiskin.json 我有这个 com.badlogic.gdx.graphics.g2d.BitmapFont: { default-font: { file: text/default.fnt } } 当我在资产文件夹的文本文件夹中有 default.fnt 时,这很好...... 但是我想使用 Freetypefont. 如何创建 Freetypefont ..
发布时间:2022-01-12 16:51:29 Java开发

如何在 Libgdx 中创建一个按钮?

我想创建一个在用户悬停或单击它时会发生变化的按钮.我创建了以下变量 Button buttonPlay = new Button(); 我现在不知道该怎么办,如何加载图像?如何将文本写入按钮?如何实现事件/效果(悬停、点击)? 如果有人可以为按钮编写一些示例代码,那将非常有帮助. 解决方案 按钮只是 libgdx 中的一个角色.要渲染一个演员,您需要使用一个包含屏幕上所有演员的舞 ..
发布时间:2022-01-12 16:36:27 Java开发

将 scene2d.ui 与 libgdx 一起使用:皮肤从何而来?

我已了解 libgdx 的 scene2d 功能,包括 UI 元素,但我不能让他们工作.他们似乎都使用了一个皮肤对象,我该如何创建一个? 我已经完成了创建简单 libgdx 的 不错的教程在桶中捕捉雨滴的游戏,我通过加载带有纹理图集的图像创建了一个简单的棋盘游戏应用程序.但是,scene2d 听起来是一种更好的方式来控制棋盘游戏应用程序中的移动棋子以及任何按钮和菜单. 解决方案 要加 ..
发布时间:2022-01-12 16:35:59 Java开发

在拥有巨大世界的游戏中正确使用Scene2d的舞台

如果整个“游戏世界"的宽度是视口宽度的数千倍,并且如果我想使用scene2d作为 Actor s管理游戏对象,那么我应该创建与整个世界,还是 Stage 应该是当前视口周围的某个区域,而不是整个世界? 换句话说,即使我仅在视口大小的一小部分渲染对象,宽度和高度更大的 Stage 本身是否也会消耗更多的内存? 解决方案 我认为您误解了 Stage 到底是什么.舞台本身并没有真正的大小.您不 ..
发布时间:2021-05-29 20:33:31 其他开发

如何在LibGDX中暂停演员的动作?

我向演员添加了以下操作: this.addAction(sequence(delay(0.5f), alpha(1, 2), delay(2), alpha(0, 2))); 是否有一种简单的方法可以暂停此动画,然后在单击按钮时继续播放它? 解决方案 如果您的actor仅在运行动作,建议停止调用actor的act()方法.如果需要,请扩展Actor来设置开关. public ..
发布时间:2020-04-30 10:33:33 Java开发