2011-02-11 78 views
2

我目前在玩NDK for android,嘗試OpenGL ES 2.0功能。但我不知道如何將圖像加載到OpenGL紋理中。我的計劃是發送一個帶有本地函數調用的位圖,然後使用GLUt創建一個紋理。那麼,我如何在android平臺上的本機代碼中使用GLUt?在android上的本機代碼中如何使用GLUt?

或者這是他錯了嗎?

(對不起英語不好)。

Thanx提前!

回答

1

這些取決於你的應用在做什麼,如果你正在開發一個遊戲,最好的方法是從SD卡讀取圖像或從apk中的資產發送文件描述符,並使用stdio和libpng或a類似的lib(取決於你的圖像格式),在本機代碼中解碼圖像並綁定那裏的紋理。

另一方面,如果您的圖像正在即時生成(例如:來自相機),最好的方法是使用java.nio.ByteBuffer或類似方法將它傳遞給本機代碼。

+0

我結束了在java代碼中加載位圖,使用bitmapfactory解碼並使用jni調用發送字節數組。然後,我只使用glTexImage2D創建紋理。 – Mockarutan 2011-03-08 19:16:26