【发布时间】:2023-03-11 22:30:01
【问题描述】:
我正在尝试将我自己的自定义 draw() 函数添加到 libGDX 中的 SpriteBatch 类,但 SpriteBatch 类是在 jar 文件中编译的。
我曾尝试创建自己的扩展 SpriteBatch 类的类,但我需要访问只能在类本身中访问的私有变量...
我假设我需要下载 libGDX 源,修改我需要的内容,然后重新编译,但是我在关注this tutorial 和this question 时遇到了一些麻烦,除了在我的 Mac 上安装 Ant遵循这种方法(Mac 2011 年初)。
我应该如何修改和应用新的源代码?
【问题讨论】:
-
想要扩展/覆盖 SpriteBatch 是一个很好的迹象,表明您可能正在尝试解决错误的问题。您要解决的实际问题是什么?
-
@Xoppa 我需要添加一个绘图函数,可以允许为每个顶点输入四种不同的颜色。 SpriteBatch 类可以做到这一点吗?或者我是否必须使用不同的方式来完全实现这一点?我认为您可以使用着色器来完成此操作,但我已经遵循了几个关于着色器的教程,但似乎无法全神贯注地做这件事。编辑:我忘了提到 this 链接,他在其中“向 SpriteBatch 添加了一个方法”。
-
当然,您不必为此扩展 spritebatch。它具有允许您指定顶点的方法。更方便的是,sprite 类提供了对顶点的访问,因此您可以随意更改。