В примере этой статьи описывается метод реализации картирования текстуры OpenGL. Поделитесь этим для всех для вашей ссылки. Специфика заключается в следующем:
1. Glrenderer.java файл:
Степень пакета Glrender Implemerents revender {Private Square; ();}} @Override public void odrawframe (gl10 gl) {// чистый экран и глубинный буфер gl.glclear (gl10.gl_buffer_bit | gl10 .gl_depth_buffer_bit); Gl.gltranslatef (0,0F, 0,0F, -5,0F); ); == 0) {// Предотвратить разрыв по ноль по высоте = 1; Матрица проекта gl.gloadididintity (); ; .loadgltexture (gl, this.context); , 0.5f); Тип глубинного тестирования для // действительно хороших вычислений перспективы, gl10.gl_nicest);}}2. Файл Square.java:
Степень пакета Android.graphics.bitmapfactory; -Поттсом слева -1,0F, 1,0F, 0,0F, // v2 -0 -топ слева 1,0F, -1,0F, 0,0F, // V3 -Bottom Правый 1,0F, 1.0F // V4 -Top справа}; TextureBuffer; 1.0F, 1,0F, // Верхний справа (V4) 1.0F, 0,0F // Внизу справа (v3)}; // Поплавок имеет 4 байта, поэтому мы выделяем для каждой координации 4 Bytebuffer bytebuffer = bytebuffer.allocatedirect (vertices.length * 4); bytebuffer.asfloatbuffer (); * 4); Контекст параметров */ public void loadgltexture (gl10 gl, контекст контекста) {// Загрузка текстуры Bitmap = bitmapfa ctory.decoderesource (context.getresources (), r.drawable.android); , Текстуры, 0); .gl_nearest); ; // gl.gltexparameterf (gl10.gl_texture_2d, gl10.gl_texture_wrap_t, gl10.gl_repeat); ; Текстуры [0]); Наш буфер Vertex Gl.glvertexpointer (3, Gl10.gl_float, 0, Vertexbuffer); 0, Vertices.length /3);3. Файл Triangle.java:
Степень пакета. Вершины плавания [] = {-0,5F, -0,5F, 0,0F, // V1 -First Vertex (x, y, z) 0,5f, -0,5f, 0,0F, // V2 -секундная вертекс 0,0F, 0,5 F, 0,0F // V3 -THIRD Vertex // 1,0F, 0,5F, 0,0F // V3 -THIRD Vertex}; Allocatedirect (Vertices.length * 4); / Установите положение курсора в начало буфера Vertexbuffer.positation (0);} / ** Метод рисования для треугольника с контекстом GL* / public void Draw (GL10 GL) {gl.glenableClientState (gl10.gl_vertex_aray) ; // Установите цвет для фона // Gl.glclercolor (0,0F, 0,0F, 0,5F); .GL_COLOR_BUFFER_BIT); Нарисуйте вершины как треугольная полоса gl.gldrawarrays (gl10.gl_triangle_strip, 0, vertices.length / / 3);4. run.java file:
Suppare Network.obviam.opengl; *View Opengl */ Private GlsurfaceView GlsurfaceView;/ ** Вызванный, когда деятельность создается. Окно. / Установите наш рендерер как основной рендерер с // текущим контекстом активности glsurfaceview.setrenderer (this); .onresume ();
Есть надежда, что эта статья полезна для дизайна программы Java каждого.