У меня есть спрайт, загруженный как текстура, и мне нужно его анимировать, позволяя ему «смотреть» влево или вправо - по существу, иногда мне нужно «перевернуть» его. Я знаю, что OpenGL имеет gltranslate, который репозиционирует объект, и glrotate, который вращает его. Есть ли метод, который просто переворачивает его по одной оси? Если нет, как бы вы это сделали?Как перевернуть спрайт/текстуру в OpenGLES?
ответ
Я не перепутал с точечными спрайтами, но я считаю, что это текстуры. Текстуры имеют текстурные матрицы, что означает, что вы можете использовать glTranslatef()
, glScalef()
и glRotatef()
на них.
Я бы попробовал что-то по линиям glScalef(-1,1,1);
, которые будут переворачивать координату текстуры по оси X.
Как я уже говорил, я не играл с точечными спрайтами, но я не испортил текстурные матрицы. Однако они кажутся весьма полезными.
Обновление: Я играл с матрицами текстур тем временем. Точно так же, как вы переключаетесь между матрицами модели и проекции, вы можете переключиться на текстурную матрицу; приблизительно: glMatrixMode(GL_TEXTURE);
, после чего вы можете выполнить вышеупомянутые операции.
Вы также можете просто рисуют квадроциклов/два треугольника и сделать с ней :)
Вы не можете сделать это с помощью точек-спрайтов OpenGL; хотя вы можете перемещать центр спрайта вокруг, форма его всегда ориентирована одинаково.
Что вы can do is draw your sprites as quads, который позволяет вам переворачивать, вращать и беспорядок с ними любым способом, который вы хотите. Есть инструкции по ручному рисованию спрайтов (aka billboards) на NeHe
- 1. Android Opengles Vertex Tweening
- 2. Как перевернуть в famo.us?
- 3. Как нарисовать круг в opengles
- 4. glPolygonMode в OpenGLES
- 5. Объединение геометрии в opengles
- 6. Как перевернуть изображение в wpf
- 7. Как перевернуть спрайт в SpriteKit?
- 8. как перевернуть спрайт в C#
- 9. Как перевернуть дату в PHP
- 10. В Swift, как перевернуть UITableViewCell?
- 11. Как перевернуть объект в javascript?
- 12. Как перевернуть FaceOSC в Processing3.2.1
- 13. Как перевернуть видеокадр в iOS
- 14. Как перевернуть текстуру в beginNativePainting()?
- 15. Как перевернуть изображение в Swift
- 16. Как перевернуть координаты SVG?
- 17. Как быстро перевернуть ElasticSearch?
- 18. Как перевернуть ориентацию сетки?
- 19. Как перевернуть строку?
- 20. Как перевернуть строку рекурсивно
- 21. Как мне перевернуть jQuery.slideDown()?
- 22. Android: Как перевернуть изображение?
- 23. Как перевернуть петлю
- 24. Как перевернуть текстовый блок
- 25. Как перевернуть enum?
- 26. Как перевернуть регулярное выражение?
- 27. Как перевернуть элемент (сетка)?
- 28. Как перевернуть индексированный индекс
- 29. Как перевернуть QImage
- 30. Как перевернуть 2D-игруОбъект
Вы имеете в виду повернуть его, как фото с застрял на середине, и вращение влево и вправо? Или вы имеете в виду флип, как флип-карту? – freespace 2008-09-19 16:29:31