2017-02-19 60 views
2

所以這個問題並非出於需要,我只是尋找一種更優雅的方式來呈現我給朋友做的第一場比賽。Libgdx導出獨立桌面遊戲,而不必將所有資產放在同一個文件夾中?

當我出口的比賽中,當所有的資產都在同一文件夾它肯定工程。不過,我也注意到,當沒有資產時,遊戲的第一個屏幕仍然加載有背景圖像。所以不知何故,我的第一個屏幕(一個簡單的登錄屏幕)的背景圖像可能與jar文件進行了更新。當我切換到包含新資產的任何其他屏幕時,它會崩潰,因此我擁有的其他圖像不在該jar文件中。

這種情況讓我覺得有可能是把我所有的資產到一個jar文件(就像背景圖片我),這樣我將有一個更優雅的最終產品的方式。有什麼辦法可以做到嗎?

我用AssetManager,我已經嘗試過進口旁邊,我登錄屏幕上導入的背景圖像的行中的所有其他圖像,但它並沒有幫助。實際上,出於某種原因,當我嘗試遊戲甚至不包含第一個背景圖像時,即使在登錄屏幕之前它也會崩潰。

如果任何人有這樣的經歷,或者可以點我到正確的方向上的知識,我將不勝感激。

更新:到目前爲止,問題似乎只有極少數的圖像和聲音。因此,出於某種原因(可能是大小或維數),AssetManager似乎只需要運行jar的相同目錄中的部分資產。

回答

3

如果您想從桌面模塊導出獨立的jar。

Libgdx使用gradle這個項目的建築,所以希望您在使用gradle這個和IntellijIDEA或Android工作室的IDE。

打開終端

觀 - 在Mac

./gradlew desktop:dist 
在窗口

gradlew desktop:dist 

運行命令>工具Windows的>終端或Alt鍵 + F12

運行命令

它會將您的資產從您的資產文件夾的Android模塊放入您的jar。

您可以在桌面模塊中找到您的jar。

編輯

您還可以使用神器創建罐子

文件 - >項目結構 - >神器 - >添加(+) - >罐 - >從模塊和依賴關係 - >

模塊:桌面 主類:DesktopLauncher

然後確定

在OutputLayout選項卡 - >添加(+)副本 - >目錄內容 - >選擇你的Android資產文件夾 - >應用 - >確定

然後生成 - > BuildArtifacts。 - > desktop.jar - > build

+0

我在項目的主目錄,我有gradlew:command not found。我應該爲它安裝一些東西嗎? (使用mac btw) –

+0

nvm剛剛閱讀這個http://stackoverflow.com/questions/27094492/how-to-run-gradle-from-the-command-line-on-mac-bash,現在就試試 –

+1

我我正在窗口上使用上面的命令。你有沒有嘗試過你的鏈接。 – Aryan

相關問題