2010-12-04 3 views
0

Я пытаюсь изучить WebGL абсолютно без опыта работы с OpenGL или OpenGL ES, и у меня очень трудное время, пытаясь выяснить, что происходит за каждым вызовом функции, точнее, что происходит именно с GPU. Я пробовал следовать некоторым основным учебным пособиям, и для его целей они работают, но когда я пытаюсь сделать несколько более сложных вещей в WebGL, я часто получаю странные проблемы. Например, когда я должен связать шейдер, что происходит при вызове texImage2D дважды для одной текстуры и т. Д.Кто-нибудь знает, где я могу найти хорошую документацию WebGL?

Я искал высоко и низко в Интернете, и информация в лучшем случае недостаточна, главным образом потому, что она все еще находится в разработке и очень Несколько браузеров поддерживают его еще. И если для этого нет никакой полной документации, достаточно ли это для OpenGL ES, чтобы полагаться на это для справки?

ответ

2

WebGL и OpenGL ES 2.0 очень похожи. Особенно, если вам просто интересно выяснить, что делают определенные функции, OpenGL ES и простая документация OpenGL могут дать полезную информацию. Тем не менее, особенно при рассмотрении документации OpenGL, имейте в виду, что некоторые функции могут быть недоступны, сигнатуры функций могут несколько отличаться и т. Д.

Лично я нашел Joe Groff's introduction, чтобы быть очень полезным. Он использует современные методы OpenGL 2.0 и устраняет устаревшие функции, которые OpenGL ES 2.0 и WebGL не имеют никакого способа и на самом деле не используются больше.

Кроме этого, я нахожу, что WebGL spec itself на самом деле является достойной ссылкой. Он ссылается на страницы руководства OpenGL ES 2.0 и описывает функции, в которых они немного отличаются.

Я полагаю, что у вас уже есть несколько примеров работы, поэтому вы уже знаете основную процедуру настройки. (В принципе просто: получить контекст, настроить видовое окно, скомпилировать шейдеры.) Если нет, есть хороший набор руководств по learningwebgl.com, которые касаются конкретно WebGL. (Хотя, я нашел введение Джо Гроффа более информативным в концепции 3D и OpenGL в целом.)

Остальное - это просто JavaScript. :)

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