Шадертой - Shadertoy

Shadertoy.com
Түпнұсқа автор (лар)Inigo Quilez және Pol Jeremias
Бастапқы шығарылым2013 жылғы 14 ақпан (2013-02-14)
Тұрақты шығарылым
0.8.3 шығарылымы / 3 наурыз 2016 ж
ЖазылғанGLSL, JavaScript, PHP
Түрі3D компьютерлік графика құрал қоғамдастық
Веб-сайтwww.shadertoy.com

Shadertoy.com Бұл кросс-шолғыш желілік қоғамдастық және құру және бөлісу құралы көлеңкелер арқылы WebGL, оқыту үшін де, оқыту үшін де қолданылады 3D компьютерлік графика ішінде веб-шолғыш.

Шолу

Шадертойда қашықтықтағы өрістермен жасалған, модельденген, көлеңкеленген, жарықтандырылған және нақты уақытта көрсетілген процедуралық сурет

Shadertoy.com - бұл желідегі қоғамдастық және платформа Компьютерлік графика кәсіпқойлар, академиктер[1] және көрсету техникасы мен процедуралық өнермен бөлісетін, үйренетін және тәжірибе жасайтын энтузиастар GLSL код. 2019 жылдың ортасына қарай мыңдаған қолданушылардан түскен 31 мыңнан астам қоғамдық салымдар бар. WebGL[2] есептеуіш қуатына қол жеткізуге Шадертойға мүмкіндік береді GPU генерациялау процессуалдық өнер, анимация, модельдер, жарықтандыру, күйге негізделген логика мен дыбыс.

Тарих

Shadertoy.com сайтын Пол Джеремиас пен Иниго Квилес 2013 жылдың қаңтарында құрды және сол жылдың ақпанында желіге кірді.

Күштің тамыры Инигоның «Шадертой» бөлімінде жатыр [3] оның компьютерлік графикалық білім беру сайтында.[4] Бастапқы келуімен WebGL Mozilla's жүзеге асырады Firefox 2009 жылы Quilez алғашқы желідегі тікелей кодтау ортасын құрды және процедуралық шейдерлердің репозиторийін құрды. Бұл мазмұнды 18 автор сыйға тартты Демоскен және Интернетте бұрын-соңды көрмеген кеңейтілген нақты уақыттағы және интерактивті анимацияларды, мысалы, сәулелендірілген метаболлар, фракталдар мен туннель эффектілерін көрсетті.

Бірнеше жыл бойы бірнеше нақты уақыттағы жобаларда бірге жұмыс істегеннен кейін, 2012 жылдың желтоқсанында Квилес пен Пол өзінің демоскендік хош иісті ресурсы мен өлшемі шектеулі нақты уақыт графикасымен өзіндік Шадертой парағының дәстүрін сақтайтын жаңа Шадертой сайтын құру туралы шешім қабылдады. мазмұны, бірақ әлеуметтік және қауымдастық ерекшеліктерін қосып, ашық көзге деген көзқарасқа ие болар еді.

Парақ тірі редактормен, нақты уақыт режимінде ойнатумен, шолу мен іздеу мүмкіндіктерімен, тегтермен және түсініктемелермен бірге шықты. Мазмұны бойынша, Шадертой өз қолданушыларына креативті жолдармен қолдануы үшін тұрақты және шектеулі текстуралар жиынтығын ұсынды. Бірнеше жыл ішінде Шадертой веб-камера мен микрофонды енгізу, бейне, музыка, виртуалды шындықты көрсету және көп пас беру сияқты қосымша функцияларды қосты.

Барлығы мыңдаған қолданушылардан 31 мыңнан астам үлес бар, олардың бірнешеуі оқу жұмыстарында сілтеме жасалған. Сондай-ақ, Шадертойда өз қоғамдастығының көңілінен шығуы үшін жыл сайынғы Siggraph 2015 Shadertoy Competition сияқты жарыстар мен іс-шаралар өткізіледі.[5]

Ерекшеліктер

  • Редакторлау: синтаксистік бөлектелген редактор, визуалды кері байланыс
  • Әлеуметтік: шадертойларға түсініктеме беру, дауыс беру (лайк)
  • Бөлісу: тұрақты веб-сайттар, басқа веб-сайттарда орналастырылған, жеке шейдерлермен бөлісу
  • Көрсетілім: өзгермелі нүктелік буфер негізінде мультипассалар мен тарих
  • Медиа кірістер: микрофон, веб-камера, пернетақта, тышқан, VR HMD, soundcloud, видео, текстуралар

Пайдалану

Шадертойда құрылған процедуралық анимацияның мысалы келесі квадрат туннель болуы мүмкін:

жарамсыз негізгі сурет( шығу vec4 fragColor, жылы vec2 fragCoord ){    // енгізу: пиксель координаттары    vec2 б = (-iResolution.xy + 2.0*fragCoord)/iResolution.ж;    // әр пикселдің экранның ортасына бұрышы    жүзу а = атан(б.ж,б.х);        // өзгертілген қашықтық көрсеткіші    жүзу р = қуат( қуат(б.х*б.х,4.0) + қуат(б.ж*б.ж,4.0), 1.0/8.0 );        // индекс құрылымы (кері анимациялық) радиусы мен бұрышы бойынша    vec2 uv = vec2( 1.0/р + 0.2*iTime, а );    // өрнек: косинустар    жүзу f = cos(12.0*uv.х)*cos(6.0*uv.ж);    // түсті алу: палитра    vec3 кол = 0.5 + 0.5*күнә( 3.1416*f + vec3(0.0,0.5,1.0) );        // жарықтандыру: ортасында күңгірт     кол = кол*р;        // шығару: пиксель түсі    fragColor = vec4( кол, 1.0 );}

Жоғарыдағы код келесі суретті жасайды:

Жоғарыдағы кодпен жасалған сурет

Еске алу

Shadertoy.com сайтына бірнеше ақпарат көздері сілтеме жасайды:

  • NVidia әзірлеуші ​​блогы, Маусым 2016 ж., Шәдіртой конкурсы 2016 жарияланды.[6]
  • Сиграфты нақты уақыт режимінде тікелей эфирде!, 2015, интерактивті дыбысты визуалдау жобасы.[7]
  • Хакер жаңалықтары, 2014 ж., Шадертой браузерде GPU шығарған процедуралық музыканы қосады.[8]
  • Айқындалған беттерді сәулелік іздеудің сандық әдістері,[9]
  • Уильямс колледжіндегі CS 371 курсы, 2014, CS 371 үшін шабыт[10]
  • Нақты уақыттағы көрсету, Тамыз 2015, 20 тамыздағы жеті нәрсе.[11]

Әдебиеттер тізімі

  1. ^ http://graphics.cs.williams.edu/courses/cs371/f14/reading/shadertoy.pdf
  2. ^ «Khronos соңғы WebGL 1.0 сипаттамасын шығарады». Khronos тобы. 2011 жылғы 3 наурыз. Алынған 2 маусым 2012.
  3. ^ «Shader Toy». www.iquilezles.org.
  4. ^ «Inigo Quilez».
  5. ^ «Siggraph 2015 Shadertoy байқауы».
  6. ^ «NVidia әзірлеуші ​​блогы». 2016. Алынған 2 маусым 2016.
  7. ^ «Шигертой сайысы Siggraph 2015. Нақты уақыт режимінде тікелей эфирде!». Алынған 2015-08-13.
  8. ^ «Хакер жаңалықтары». икомбинатор. Алынған 2020-08-31.
  9. ^ «Айқындалған беттерді сәулелік іздеудің сандық әдістері» (PDF). Уильямс колледжі. Архивтелген түпнұсқа (PDF) 2015-09-06. Алынған 2014-09-25.
  10. ^ «CS 371» (PDF). Уильямс колледжі.
  11. ^ «Нақты уақыттағы көрсету - 2015 жылғы 20 тамыздағы жеті нәрсе». realtimerendering.com. 2015 ж. Алынған 20 тамыз 2015.

Сыртқы сілтемелер