Contoh artikel ini menjelaskan metode penerapan pemetaan tekstur terbuka. Bagikan untuk semua orang untuk referensi Anda. Spesifiknya adalah sebagai berikut:
1. File Glrenderer.java:
Paket Jaringan.Obviam.opndl; Glrender Imprements Renderer {Private Square Square; ();}} @Override void odrawframe (GL10 GL) {// Layar Bersih dan Depth Buffer Gl.GlClear (GL10.GL_BUFFER_BIT | GL10 .GL_DEPTH_BUFFER_BIT); Gl.Gltranslatef (0,0f, 0,0f, -5.0f); ); == 0) {// Cegah divide dengan nol dengan tinggi = 1; Matriks Proyek Gl.GlloadidIdIntity (); ; .LoadGlTexture (GL, This.Context); 0.5f); Jenis Pengujian Kedalaman untuk Do // Perhitungan Perspektif yang Sangat Bagus, Gl10.Gl_nicest);}}2. File Square.java:
Paket Jaringan.Obviam.opengl; Android.graphics.bitmapfactory; -Bottom kiri -1.0f, 1.0f, 0.0f, // v2 -top kiri 1.0f, -1.0f, 0.0f, // v3 -Bottom kanan 1.0f, 1.0f // v4 -top kanan}; TextureBuffer; // Buffer Holding Koordinat Tekstur Tekstur Pribadi [] = {// Koordinat Pemetaan untuk Vertices 0.0F, 1. 0F, // TOP LIFT (V2) 0.0F, 0.0F, // Bawah Kiri (V1) 1.0f, 1.0f, // kanan atas (v4) 1.0f, 0.0f // kanan bawah (v3)}; // Float memiliki 4 byte jadi kami mengalokasikan untuk setiap koordinal 4 bytebuffer bytebuffer = bytebuffer.allocatedIrt (vertices.length * 4); bytebuffer.asfloatbuffer (); * 4); Param Context */ public void loadgltexture (GL10 GL, konteks konteks) {// memuat tekstur bitmap = bitmapfa ctory.decoderesource (context.getResources (), r.drawable.android); , Tekstur, 0); .gl_nearest); makan) ; ; Tekstur [0]); Buffer Vertex kami GL.GlVertExpointer (3, GL10.GL_FLOAT, 0, VertexBuffer); 0, VERTICES.Length /3); // Nonaktifkan status klien sebelum pergi);3. File Triangle.java:
Paket Network.obviam.openglet; Float vertices [] = {-0.5f, -0.5f, 0.0f, // v1 -vertex pertama (x, y, z) 0.5f, -0.5f, 0.0f, // v2 -detik vertex 0.0f, 0.5 F, 0.0F // V3 -Third vertex // 1.0f, 0.5f, 0.0f // v3 -Thirt vertex}; Allocatedirect (Verties.length * 4); / Atur posisi kursor ke awal buffer vertexbuffer.positation (0);} / ** Metode gambar untuk segitiga dengan konteks GL* / public void draw (GL10 GL) {GL.GlenableClientState (GL10.GL_VERTEX_ARAY) ; .GL_COLOR_BUFFER_BIT); Gambarlah simpul sebagai strip segitiga Gl.Gldrawarrays (GL10.GL_TRIGOR_STRIP, 0, VERSION.Length / / 3);4. Run.java File:
Paket Network.obviam.openglet; *Tampilan OpenGL */ Private GlSurfaceview GlSurfacEview;/ ** Dipanggil kapan aktivitas tersebut dibuat pertama kali dibuat. Window. / Atur renderer kami untuk menjadi renderer utama dengan // Konteks aktivitas saat ini glsurfaceview.setrenderer (ini); .onresume ();
Diharapkan bahwa artikel ini bermanfaat untuk desain program Java semua orang.