2011-11-03 109 views
2

我想移植一個我製作的遊戲,它使得屏幕本身50fps(不使用opengl)。有沒有辦法在iPhone上直接渲染像素?

什麼是移植到iPhone的最佳方式?

我在讀關於Framebuffer對象。這是一個很好的方法來高速渲染像素緩衝區到屏幕上嗎?

回答

1

獲取屏幕像素的最快方法是通過OpenGL。

需要關於遊戲目前呈現給屏幕的更多信息,但我不明白FBO會如何幫助,因爲它們通常用於獲取渲染緩衝區的副本,即創建屏幕記錄,或者在飛行中合成自定義紋理。

+0

我在考慮在紋理上渲染整個遊戲,然後用opengl渲染一個附有紋理的大四邊形它。這是可行的嗎? – Toad

+0

只是使用opengl的像素基元太慢了。我真的需要一個傳統的「像素緩衝區」。 – Toad

+1

如果你的靜態精靈的時間變化不大,那麼將它們存儲在渲染/合成在後臺緩衝區中的紋理應該非常快。如果你的精靈是動態的並且隨着時間的推移而變化很大,那麼你可以通過使用由CVOpenGLESTextureCache支持的紋理來高效地模擬傳統的像素緩衝區。 –

0

如果我需要創建一個應用程序,我必須直接訪問像素並且不能直接訪問硬件,我使用SDL,因爲它只需要創建曲面,並從那裏直接操作像素。並且據我所知,你可以在Iphone上使用SDL,甚至可以使用opengl加速它。

+0

根據這個問題,SDL在iPhone上不太可行:http://stackoverflow.com/questions/597459/how-mature-is-sdl-for-iphone – Toad

+0

適用於iPhone的SDL僅包裝OpenGLES上下文。除非您已經有了一堆SDL代碼,否則您還可以使用本機API。它會爲你節省很多麻煩。 –

相關問題