2014-07-04 38 views
0

我想弄清楚現在在libGDX中一些非常奇怪的行爲。以下面的簡單應用程序代碼爲例。libGDX setCursorCatched和簡單的配置錯誤

package com.station40.desktop; 

import com.badlogic.gdx.Gdx; 
import com.badlogic.gdx.backends.lwjgl.LwjglApplication; 
import com.badlogic.gdx.backends.lwjgl.LwjglApplicationConfiguration; 
import com.station40.Station40; 

public class DesktopLauncher { 
    public static void main (String[] arg) { 
     LwjglApplicationConfiguration config = new LwjglApplicationConfiguration(); 
     config.width = 800; 
     config.height = 600; 
     LwjglApplication app = new LwjglApplication(new Station40(), config); 
     Gdx.input.setCursorCatched(true); 
    } 
} 

夠簡單。我遇到了兩個一致的問題,雖然如下:

  • 當光標實際上「抓住」,看不見也無法移動時,javaw進程似乎凍結。 CPU使用率堅持1個整個處理器。與上面類似的代碼停止執行正常幀更新,除setCursorCatch(true)被調用外,沒有其他更改。這裏發生了什麼?我做錯了什麼?令人煩惱的是,當從Eclipse啓動時,應用程序完全忽略了的配置;每次運行應用程序時,它都會在如下所示的小窗口中打開:http://i.imgur.com/cK1dwMR.png。我第一次運行這個應用程序時,它的打開時間是800x600。從那以後,它就像以前的所有其他人一樣回覆到這個小小的窗口。作爲參考,全屏幕完全失敗:我得到一個決議更改,但我看不到窗口。我的鼠標甚至被抓到。

有沒有人遇到過這些問題?我已經使用Wiki上描述的Gradle設置進行設置。我一直在使用libGDX,直到現在從未遇到過這些問題。任何幫助將不勝感激。

回答

1

讓這是一個課程來更新庫的所有版本。或者,更好的是,只保留一個副本!我的舊libGDX實用程序項目正在導入舊版本的libGDX,而新版本則使用Gradle系統導入新版本。這兩者並沒有很好的結合,導致了所有列出的問題。

我將舊的公用事業項目轉移到一個新的Gradle託管項目中,現在情況正在好轉。

對於那些想知道的,這是因爲lwjgl期望窗口大小的整數的某個緩衝區在一個版本中(上,下,左,右)順序爲。我期望它不喜歡產生的0高度,負寬度窗口!