Artikel ini menjelaskan secara umum, cara menggambar grafik OpenGL 2D yang tajam, menggunakan pipeline fungsi tetap.
Karena OpenGL ES 2.0 memiliki beberapa fungsi ES 1.x tidak tersedia (seperti: glOrtho ()), fungsinya harus diganti dalam Fragment / Vertex shaders.
Pertanyaan saya adalah, bagaimana cara mengatur proyeksi 2D berikut dalam pipeline fungsi yang dapat diprogram?
const XSize = 640, YSize = 480
glMatrixMode (GL_PROJECTION)
glLoadIdentity ();
glOrtho (0, XSize, YSize, 0, 0, 1)
glMatrixMode (GL_MODELVIEW)
Bagaimana Fragment dan Vertex shaders harus dikonfigurasi untuk sepenuhnya menggantikan pengaturan proyeksi fungsi 2D yang disebutkan di atas?
sumber
Dari doc glOrtho, dengan nilai yang diganti:
Simpan matriks ini dalam seragam, dan Anda kemudian dapat menerapkannya (mis. Lakukan produk M. V) ke posisi verteks yang masuk.
sumber