2015-07-13 3 views
-1

Я пытаюсь нарисовать текстуру на квадроцикле, который имеет два треугольника. Но моя цель состоит в том, чтобы нарисовать текстуру только на одном треугольнике (внутри сетки), другой треугольник должен остаться пустым.OpenGL ES 2.0 текстура на одном треугольнике в сетке

Как я могу это достичь? любая программа-образец или псевдо-код будут очень полезны.

ответ

0

Выполните следующие действия

  1. Проверьте, если вершины правильно используя фраг шейдер. gl_FragColor = vec4 (1,0,0,0,0,0,1,0); // Прямоугольник должен быть красным

  2. Если 1. в порядке, проверьте значения uv.

    если 1. не подходит. используйте эти вершины и значения uv.

    вершины = -1,0, -1,0, 1,0, -1,0, -1.0,1.0, 1.0,1.0 Увс = 0.0,0.0, 1.0,0.0, 0.0,1.0, 1.0,1.0

Вот и все. Вы все настроены для следующего шага

+0

, но эти шаги будут рисовать текстуру на квадранте (два треугольника). Я хочу нарисовать текстуру только на одном треугольнике. –

+0

возьмите это, используя frag-шейдер, например if (fragCoord.x> fragCoord.y) fragColor = vec4 (0.0,0.0,0.0,0.0); else fragColor = texture; – Sung

+0

Хорошо, спасибо. Это то, чего я хотел. Но теперь еще одна икота, с которой я столкнулся, - текстура во втором треугольнике должна соответствовать, но, скорее, она масштабируется. Должен ли я играть с координатами текстуры ??? –

Смежные вопросы