在libgdx(clojure)中加载资产
我正在尝试使用clojure和libgdx制作一个游戏。上的信息非常有用,但现在我只停留在显示精灵的简单步骤上。在我的屏幕上我有这个在libgdx(clojure)中加载资产,clojure,libgdx,Clojure,Libgdx,我正在尝试使用clojure和libgdx制作一个游戏。上的信息非常有用,但现在我只停留在显示精灵的简单步骤上。在我的屏幕上我有这个 (def main-screen (let [stage (atom nil)] (proxy [Screen] [] (show [] (reset! stage (Stage.)) (let [style (Label$LabelStyle. (BitmapFont.) (Color. 0 1 1 1))
(def main-screen
(let [stage (atom nil)]
(proxy [Screen] []
(show []
(reset! stage (Stage.))
(let [style (Label$LabelStyle. (BitmapFont.) (Color. 0 1 1 1))
label (Label. "Hello world!" style)]
(.addActor @stage label)))
(render [delta]
(.glClearColor (Gdx/gl) 0 1 0 1)
(.glClear (Gdx/gl) GL20/GL_COLOR_BUFFER_BIT)
(doto (SpriteBatch.)
(. begin)
(. draw (ship-texture) 10 10)
(. end))
(doto @stage
(.act delta)
(.draw)))
(dispose[])
(hide [])
(pause [])
(resize [w h])
(resume []))))
这引用了上面的一个简单函数
(defn ship-texture [] (Texture. (.internal Gdx/files "AShip.PNG")))
但无论我把文件放在哪里,libgdx似乎都找不到它。我把它放在了resources、src、assets和base目录中。我觉得我一定错过了一些非常简单的东西。这是关于资产的。还可以尝试所有小写的“aship.png”,我记得读过一些大写会引起问题的地方。另外,请检查桌面项目是否正确链接到资产文件夹。我已经阅读了有关此链接的内容,但我不明白其中涉及到什么。我是否需要向project.clj添加一些内容?请尝试一次
。当png文件保存在android项目文件夹的资产中时,请使用.internal Gdx/files“data/aship.png”
。我目前实际上没有android项目文件夹。这是绝对必要的吗?我甚至不确定我是否想在我的游戏中支持android。这太尴尬了。问题似乎是文件被损坏了。我不确定这是怎么发生的,但我能够让它与一个有效的文件一起工作。有没有办法结束一个问题?