2012-06-13 20 views
5

OpenGL ES 2 ve gölgelendiriciler kullanarak bazı arka plan görüntüsü işlemlerini yapmak istiyorum, ancak bir yüzeye çizim yapmama (örneğin, yalnızca çerçeveleştiricilere ekran görüntüsü oluşturma). IOS’de bunu yaparken, Android’de bununla mücadele ediyorum.Android OpenGL görüntü işleme - SurfaceView olmadan

Çalışan bir OpenGL bağlamı oluşturmaya yakın olduğumu düşünüyorum, ancak SurfaceView olmadan nasıl yapılacağını anlayamadım.

cevap

3

this gamedev post'a bir göz atın (tüm kodu görüntülemek için genişlet öğesine tıklayın). Kod, bir GL bağlamı oluşturur ve bir oluşturucu yazmayı uygun şekilde sağlamak için GLSurfaceView.Renderer arabirimini kullanır. getBitmap() numaralı telefonu çağırırken, oluşturucu bir çerçeve çizmeye çağrılır, daha sonra geri okunur ve Bitmap'e dönüştürülür.

Ayrıca ilginizi çekebilecek bir featured question olduğunu unutmayın.

+0

Bu büyük ilgi görüyor, teşekkürler! – CSmith

+0

Aslında ilgilendiğim şey bir OpenGL ES 2.0 bağlamı yaratıyor ve GLSurfaceView ve Renderer'dan tamamen kaçınıyor ... bu bana tam olarak ulaşmadı, ancak bir bağlam oluşturmama izin verseydi, GLES20 statik sınıfı bunu biliyorum. Bunun yerine ekran görüntüsünü yapmak için NDK kullanabiliyordum destekliyorum ... – CSmith

+0

İçinde sınıf, Renderer arayüzü dışında GLSurfaceView ile hiçbir şey paylaşmaz. GLSurfaceView.Renderer'ı tamamen terk etmekte serbestsiniz ve bunun yerine kendi eşyalarınız var mı? –