Изучаем GLSL с glsl.heroku.com

Я некоторое время изучал glsl.heroku.com и до сих пор не могу понять что-то. Надеюсь, кто-то из вас сможет немного помочь мне в той части, которую я не совсем понимаю. Спасибо!

Я смотрю на эту ссылку и думаю, откуда взялся varying vec2 surfacePosition;, ведь любой вершинный шейдер поблизости. Или есть то, о чем я не знал все это время?

Я вижу, что в некоторых сообщениях также есть 3D-модель, которая, очевидно, откуда-то связана, но я не могу понять, где и как, поскольку сайт показывает только код фрагментного шейдера.

Я очень ценю любую помощь. Спасибо!


person sooon    schedule 15.12.2013    source источник


Ответы (1)


На самом деле существует вершинный шейдер, и именно из него берется varying vec2 surfacePosition;. Если вы посмотрите на источник любого "эффекта" на glsl.heroku.com , то вы можете найти/увидеть вершинный шейдер. Обратите внимание, effect — это то, что glsl.heroku.com называет вещами.

Вершинный шейдер в основном одинаков для каждого «эффекта», Хотя glsl.heroku.com может удалить различные ненужные атрибуты и униформы при проверке/анализе фрагментного шейдера, созданного пользователем. Может и так, но точно сказать не могу.

Конечно, все атрибуты и юниформы, которые могут быть, являются передачей от WebGL как к вершинному, так и к фрагментному шейдеру.

Кроме того, здесь НИКАКИХ моделей, все эти 3D-объекты, которые вы видите, — это просто действительно продвинутый фрагментный шейдер, выполняющий трассировку лучей.

Вершинный шейдер вашей ссылки

изображение

person vallentin    schedule 15.12.2013
comment
Ух ты! Это сногсшибательно. Никогда не думал о том, чтобы заставить исходный код страницы искать вершинный шейдер, поскольку они уже разместили фрагментный шейдер для редактирования. Валентин, спасибо за просвещение :D - person sooon; 16.12.2013