Как текстурировать 3D-модель в WebGL?
Как вы текстурируете 3D модель в WebGL? Я понимаю все основы 3D в WebGL, я понимаю, как загружать текстуры, и я понимаю, как загружать 3D модели из внешних файлов, но я понятия не имею, как текстурировать модель, которая является более сложной, чем базовый куб.
Я предполагаю, что в WebGL применяются те же принципы, что и в OpenGL или любом другом языке 3D-рендеринга, но я не могу найти никакой полезной информации для WebGL, OpenGL и т. Д.
Любое руководство / ссылки / объяснения будет принята с благодарностью. Спасибо.
1 ответ
Так что, к вашему сведению, скиннинг имеет особое значение в трехмерной графике. Это связано с тем, что меш должен следовать за множеством костей и сгибаться между ними. Я отредактировал твой вопрос, как только увидел твой комментарий, который ты действительно спрашиваешь о текстурировании.
Вы хотите знать, как текстурировать сложную модель. Ответ прост: вы используете пакет 3D-моделирования, такой как Maya или Blender, для чего-то более сложного, чем простой куб или сфера. Затем вам нужно написать (или найти) инструменты для преобразования данных из пакета моделирования в нечто полезное для вашей программы.
Несколько ссылок. Предупреждение: для сложной модели это сложный процесс
https://blender.stackexchange.com/questions/1022/adding-uv-mapping-to-mesh
https://www.youtube.com/watch?v=f2-FfB9kRmE
http://www.chocofur.com/5-uv-mapping.html
http://sophiehoulden.com/tutorials/blender/unwrapTut.html
Существуют программные способы применения текстур, такие как различные виды текстурных проекций. Смотрите этот ответ для некоторых из них
Почти ни один из них не очень полезен, за исключением нескольких основных вещей. Например, сферическое отображение полезно для наложения текстуры на сферу. Но на самом деле нет никакой причины использовать отдельное вычисление сферического отображения для сферы, так как вы можете вычислить координаты текстуры сферы, когда вычисляете сами вершины сферы.