Как говорится, "Hey, TA (technical artist) / graphics programmer here". Во-первых, респектос за такое добротное видео по теме, которая КРАЙНЕ сложна для понимания всем людям "со стороны". Граф. кодинг - это отдельная форма вуду-магии, от которой нормальные программисты шарахаются за километр. Вникнуть в это с ноля - прям титанический труд, браво. Во-вторых, в видосе есть-таки неточности. 9:43 Формулировка не самая удачная. Шейдеры - они по природе своей SIMD. Так что там не "три/четыре вершинных шейдера", а шейдер, всё-таки, один. Но вызывающийся на разных ядрах для разных вершин. То же самое - с фрагментами.
Имея вышку в теоретической математике и 10 лет опыта в инженерке, нихрена (почти) не понял за 25 минут, но просмотрел целиком и впечатлился. Подача - агонь. Лайк без вопросов. Пили больше!
я студент первого курса прикладной матеши и информатики. раньше имел слабое представление о том как устроена визуализация и 3д в частности. на линейной алгебре прошли задание плоскости с помощью матриц, и я сразу же представил себе два алгоритма один из которых будет отрисовывать геометрию вершин с помощью этих матриц, а второй будет трассировать и заполнять пиксели на экране. в целом посмотрев видео понял, что мое представление оказалось верным, этими двумя алгоритмами оказались вершинный и фрагментный шейдеры. вывод - учите матан и жить станет проще 😊
Когда доучишь матан до тензоров, групп и прочей интересной шняги(Раз ты примат, то скажешь привет теории стоящей за чмами), то поймешь сразу что ты в полной заднице. Говорю по собственному опыту
Как бы многие не говорили, математика - основа ВСЕГО. В своё школьное время был достаточно глуп, чтобы плотно заинтересоваться тригонометрией, но тем не менее много раз сидел с преподавателем после уроков, слушал и обсуждал многие моменты. После того, как в институте открыл для себя матрицы, понимание значительной части элементов в компьютере и в информатике подтянулось. Математикой описывается весь мир, и если хочется его познать, то без математики тут уж точно не обойтись. Многие конечно говорят, что можно без математики быть "айтишником" и успешно клепать формы да кнопки красить, но гораздо интереснее и приятнее работать с тем, что понимаешь, а не просто слепо веришь, что оно должно работать так.
Это видео отличается сильно от предыдущих, очень круто! Такой формат где больше практического применения, даже на базовых вещах с треугольникам - отличный! Спасибо :)
прошло 17 минут - запускаем ииии.... Круто, все работает!) (показывает окно с синим цветом) Это не в минус, просто забавно) А видео очень познавательное и интересное!
Народ, навалите лайков, пожалуйста, если интересна тема графики и шейдеров. Хочу, чтобы заметили коммент. Виндертон, сделай ещё что-нибудь крутое на тему компьютерной графики и шейдеров, пожалуйста! Правда чертовски интересно! P.S. Вот у меня вроде нет особых проблем с математикой, тригонометрию понимаю без проблем, но писать шейдеры для меня - темный лес. Я вообще бэкенд разраб, но шейдеры всегда были сложны для меня и оставались невероятно крутой магией. Всегда кайфую от шейдеров и восхищаюсь людьми, которые умеют в программирование графики)
Отличное видео и отличное объяснение. В свое время лет 7 назад была задач написать шейдер для реализации банальной анимации блюра бэкграунда (для мобильной игрушки). Наверное это был мой самый травматичный опыт в программировании. Очень сложно было найти инфу что бы въехать в нее (в тему шейдеров) с нуля, по каким то ошметкам приходилось формировать понимание. Которое потом достаточно быстро улетучилось (т.к. задача была разовая).
Мне хоть и приходилось писать 3D графику 5 лет назад, со всеми шейдерами что есть в DirectX, кроме разве что mesh шейдеров. Но это видео посмотрел с удовольствием, красиво рассказываешь и показываешь.
Пздато!!! После после того скажем "рекламного" ролика, думал все уже. Но нет, старый добрый виндертон все еще с нами!!! У меня в голове это было настолько не структурированна, что одним видео ты смог заставить понять все что я хотел понять очень давно!!! ЗА ЭТО РЕСПЕКТ!!!
@@cheelzone7896 "Hello, Triangle!" есть. Далее можно поэтапно изучать конвейер и экспериментировать. Можно конечно на Shadertoy, Processing, и др., но написание своего тоже полезно.
Спасибо за видео) Я конечно думал что компьютерная графика сложная, но чтобы настолько… После этого видоса какой-нибудь backend на Python кажется просто детской задачей
Отличный ролик! Всегда было интересно, как все эти шейдеры работают, но руки никак не доходили, а твой ролик рассказал почти о всем том, что было интересно) Хотелось бы вторую часть, но уже с текстурами, ибо как они натягиваются- вопрос. Ну и про то, как оно все работает, когда "камера" поворачивается, например.
Полгода назад нужно было разработать сложную анимацию для сайта и на неделю я засел в изучение темы. Тогда-то я и познакомился с OpenGL. Начал читать учебник по нему, но решили упростить и я забил. В общем, где-то в середине видео я начал вспоминать, что я был на том сайте с шейдерами, что-то копировал, что-то писал даже с ними.
Развитие передачи опыта в IT на божественном уровне, не иначе. Потому что только бог и сможет понять ЧТО ИМЕННО НОВИЧКАМ ДЕЛАТЬ ПОСЛЕ этого треугольника, чтобы двинуться дальше. Заебись, спасибо! Теперь пойду делать свой игровой движокааа... стоп. Осталось понять как написать импортер геометрии или понять как вставить уже готовый, а так же выяснить, ЧТО И КАК вписать между gl begin и gl end, в цикле работы программы, чтобы наконец то отрисовать свою модельку, созданную в 3д редакторе, чего НИКТО. НИКОГДА. НИ В ОДНОМ ВИДЕО (ДЛЯ НОВИЧКОВ ИМЕННО) НЕ ОБЪЯСНЯЕТ. Одни сраные треугольники. И таких тысячи. Шикарно вручную выставлять позицию вертексов. А может уже пора писать туторы о том, как сделать, чтобы автоматически выделялась память и запускался рендер под модельку, которую ты добавил, и чтобы это было вставлено в нужном месте в цикл условного draw()? А ну не, зачем, это же "сами уже должны будут понять после того как пройдут стадию новичков МАГИЧЕСКИМ ОБРАЗОМ с МАГИЧЕСКОЙ практикой". Или идти смотреть как Кармак писал на git квейк и дум, в условиях когда ничего не будет им понятно.
Та не, слишком сложно и бесполезно. Сложно в том плане, что для отрисовки одного треугольника, требуется 1000+ строк когда. Не веришь - загугли. А бесполезно в том плане, что его имеет смысл использовать, когда у нас на отрисовке очень много треугольников, а в данном примере мы используем только 2 и поэтому прироста в производительности не будет.
@@softwet4341 Я работал с вулканом. Я знаю о чём ты, просто ну хз. Сделать такой advanced-level гайд на что-то более продвинутое, мб как One Lone Coder, если знаешь такого.
Меня прикалывает, что буквально в тот же момент когда я начал погружаться в CPU и GPU графику, вышел этот видос. Я просто листал ленту, заполненную этой тематикой, и в ней оказалось это видео. Сказать что я охренел = ничего не сказать 😅
Самому интересно было разобраться в устройстве графического конвейера. Попросил ChatGPT собрать общую информацию об этапах и о том, что на них происходит с примерами - и это сработало. Видео помогло с проблемой "чистого листа". Prompt к чату: «Я хочу разобраться в работе всех стадий графического конвейера при отрисовке изображения на видеокарте. Опиши этапы графического конвейера и расскажи, что происходит в каждом из них. Я буду задавать вопросы, чтобы узнать подробнее, и озвучивать свои предположения о принципе работы. Ответь на заданные вопросы и оцени, верно ли я понимаю принцип, если не верно, то поправь меня - опиши чуть более понятно, приведя пример.»
не знаю насчет mix, но лерпать в шейдерах можно на основе любого значения. В случае с блюр-шейдером, например, если лерпать между оригинальным пикселем камеры и заблюренным, можно в альфу передать отрицательное значение, и эта блюр-функция станет противоположной (sharpen). А если нужно увеличить силу нормал-мапы, часто используется число выше 1. Например lerp(float3(0, 0, 1), normalMap, 2), где первый параметр - это плоская нормаль в пространстве касательных в Z-up движках (Unreal)
где-то неделю назад начал изучать игровые движки, долго не мог понять что за шейдеры, почему я могу наложить 10 разных текстур на один объект, как это будет работать, как он высчитывает все это. Стало немного понятнее, спасибо большое, захотелось углубиться в GLSL и посмотреть его аналог для вулкана, сравнить их
Аналога для Вулкана не существует. Можно писать шейдеры на GLSL или HLSL, а затем их придется скомпилировать в бинарный формат SPIR-V, кой и использует вулкан
Прямоугольник выводит белого цвета. В фалах vertex.shader и fragment.shader ошибка HLSL0010 непредвиденный маркер "out". непредвиденный маркер "in". Ошибка HLSL0029 Не удается разрешить тип "vec4". Не удается разрешить тип "vec2". ошибка HLSL0056 "main": не все пути к коду возвращают значение. ошибка HLSL0033 Переменная "gl_Position" не объявлена. Кто может объяснить причину, боду признателен.
Возможно потому что шейдеры написаны на языке GLSL, а компилируются компилятором языка HLSL. Это как написать программу на Python и попытаться ее откомпилировать с помощью C++
Есть расширение для VS, прям так и называется glsl, позволяет комплировать нативно исходник шейдера без запуска проги, подсвечивать синтаксис и находить ошибки
Не знал об этой библиотеке. Я когда-то в 2007 году нашел статьи по SDL и он мне после DirectX зашел лучше. Для моих подделок вполне годился и SDL для работы с OpenGL. Да и в том же году я осваивал Linux и мне было интересно писать кроссплатфоменный код на C++
Довольно быстро пробежали по коду и тому что где и почему он такой ) С функциями все ясно, не ясно чем это отличается от других вариантов взаимодействия с пикселями экрана. Тут наверно были бы к месту примеры альтернативных методов. Так же интересен следующий шаг - интерактивность )
Это очень обширная тема, и за пару видосов её не охватить. Потому берёте книги, видеокурсы и много практикуетесь. Плюс изучайте чужой код. Удачи, и надеюсь вас затянет в прекрасный мир графики)
скажи, а в чем смысл вот этих шрейдеров? Ведь все что ты рассказал, можно реализовать другим способом, это для того, чтобы перенести основную работу на видеокарту, освободив процесор? Просто я вообще в этом ничего не понимаю, но слушать было интересно, ты так быстро рассказываешь. что вызывает восхищение без э.э.э.эканий и запинок. Но я не понял для чего это все, просто интересно понять.
Помню как-то два месяца потратил чтобы понять такие основы и чтобы все заработало (жалко тогда ни chatgpt ни этого видео не существовало). В хорошее время живем(если учитывать только образовательный контент).
Чат неплохо помогает собрать информацию и подать в понятной форме с примерами кода. Для себя следующий prompt составил: «Я хочу разобраться в работе всех стадий графического конвеера при отрисовке изображения на видеокарте. Опиши этапы графического конвеера и расскажи, что происходит в каждом из них. Я буду задавать вопросы, чтобы узнать подробнее, и озвучивать свои предположения о принципе работы. Ответь на заданные вопросы и оцени, верно ли я понимаю принцип, если не верно, то поправь меня - опиши чуть более понятно, приведя пример.» Далее двигался по шагам, разбирая тему. Человека чат пока не заменит, но очень помогает, когда того рядом нет )
Блин, как жаль что это видео вышло не год назад, я неделю разбирала все то, что здесь выложено в 20 минутах... тогда я для курсовой создала игровой движок также на OpenGL (glad), GLFW А так очень классное видео, как по мне, все понятно, но возможно потому, что я уже работала с OpenGL Сейчас для диплома доделываю движок, и пытаюсь спроектировать и написать ии врага, надеюсь не улететь в академ в этом году:'D
У тебя наверняка сохранились куча полезных ссылок на литературу и др материалы? Тоже интересуюсь реализацией движка, но пока совсем начинающий так сказать, было бы интересно посмотреть на твои наработки или ссылки на источники
@@soul_loneliness, learnopengl, opengltutorial (он устарел, но для базы вполне себе хорош) - в основном с него берут код ребята с ютуба (и я особенно). Просто потом на движке сверху пишется логика, коллизия, и как-то работает. Также книга Джейсона Грегори очень хорошая, но там прям самая база, ее читать полностью наверное не стоит - слишком много времени уйдет, но благодаря ней я нашла другие источники инфы типа книгу про ии типа Game AI Pro. Короче эта книга больше как энциклопедия, а не как методичка. Ну и плюс смотрела документацию, разумеется, у GLFW она суперская. Потом смотрела видео других ребят, как они пишут свои движки, и часть кода у них брала, если это решало мою проблему - просто вбивала в поиск ютуба слова типа "game engine opengl" или "opengl движок", и там по плейлистам смотрела Но а так на первых этапах, когда я не знала, с чего начинать искать, так как тема рыли объемная, то я писала вопросы в чат гпт🤡🤡🤡... я была в отчаянии тогда, так как я выбрала тему, в которой не разбиралась ни я, ни мой научрук, а времени как бы 3 месяца до сдачи, ахаха, но это помогло мне понять, что мне примерно нужно искать И код с гитхаба я не покажу, там все грустно и некрасиво...
Еще у автора канала есть на гитхабе движок, можно в нем поразбираться, если есть умение читать чужой код (у меня нет, поэтому это не было в моих пунктах), то как бы можно Но вроде как большинство информации я все равно взяла с opengltutorial, там все в теории и на практике показывается
Интересно как это все происходит на уровне железа. Понятно что многие вещи делать в секретности, но для общего понимания процесса. Просто не совсем понимаю, как работает видеокарта. Cpu понятно читает инструкции из оперативной памяти и их выполняет, как при этом работает gpu и их взаимодействие. Вот тут лично у меня пробел.
блин вроде бы я программист, но тут все так запутанно, хотя может потому что я обычный школяра, 8 классник, который сам активно программирует, и мне еще рано это понять? или я один такой если можно так сказать, тупой?
конечно это видео непонятное. автор сам не понимает, что говорит "миллион шейдеров", "uniform для передачи данных из шейдера в шейдер" и т.п.. Если хочешь разобраться в графике (при условии, что уже понимаешь основы программирования), то попробуй серию статей learnopengl (у большей их части есть перевод на хабре) и статьи с сайта inigo quilez. Для старта этого более, чем достаточно.
Добрый день! Можно, пожалуйста, задать вам пару небольших вопросов: как хорошо вы знаете английский язык от 1 до 10. Как вы его учили и сдавали ли вы какие-нибудь тесты/экзамены?) А ещё - как вы переводите - какими переводчиками вы пользуетесь, а какие переводчики можете посоветовать (можно абсолютно любые на ваш вкус и цвет)? Расскажите, пожалуйста, мне правда интересно. Спасибо😇
10k лайков, и дропаю код с подробными комментами, инструкциями и так далее!
Наслаждайтесь
Как говорится, "Hey, TA (technical artist) / graphics programmer here".
Во-первых, респектос за такое добротное видео по теме, которая КРАЙНЕ сложна для понимания всем людям "со стороны". Граф. кодинг - это отдельная форма вуду-магии, от которой нормальные программисты шарахаются за километр. Вникнуть в это с ноля - прям титанический труд, браво.
Во-вторых, в видосе есть-таки неточности.
9:43 Формулировка не самая удачная. Шейдеры - они по природе своей SIMD. Так что там не "три/четыре вершинных шейдера", а шейдер, всё-таки, один. Но вызывающийся на разных ядрах для разных вершин. То же самое - с фрагментами.
10 часов по плюсам ,все еще ждем !
Где k это число от ноля до единицы?)
Вот бы ролики почаще выходили...
Вмндертн специально поставил яркую тему в пичарме чтобы мы плюсы изучали
Мой рекорд по лайкам, спасибо парни
И правильно сделал)
Согласен правильно
Нет это добро и зло
Имея вышку в теоретической математике и 10 лет опыта в инженерке, нихрена (почти) не понял за 25 минут, но просмотрел целиком и впечатлился. Подача - агонь. Лайк без вопросов. Пили больше!
Кайф, кайф, кайф, жду другие следующие истории, чуть-чуть теории и дальше практика, всё как я люблю
Очень годный видос, Спасибо Виндертон. Я очень надеюсь что будет дальнейший разгон данной темы.
я студент первого курса прикладной матеши и информатики. раньше имел слабое представление о том как устроена визуализация и 3д в частности. на линейной алгебре прошли задание плоскости с помощью матриц, и я сразу же представил себе два алгоритма один из которых будет отрисовывать геометрию вершин с помощью этих матриц, а второй будет трассировать и заполнять пиксели на экране. в целом посмотрев видео понял, что мое представление оказалось верным, этими двумя алгоритмами оказались вершинный и фрагментный шейдеры. вывод - учите матан и жить станет проще 😊
Вообще нет.
Когда доучишь матан до тензоров, групп и прочей интересной шняги(Раз ты примат, то скажешь привет теории стоящей за чмами), то поймешь сразу что ты в полной заднице. Говорю по собственному опыту
Как бы многие не говорили, математика - основа ВСЕГО. В своё школьное время был достаточно глуп, чтобы плотно заинтересоваться тригонометрией, но тем не менее много раз сидел с преподавателем после уроков, слушал и обсуждал многие моменты. После того, как в институте открыл для себя матрицы, понимание значительной части элементов в компьютере и в информатике подтянулось. Математикой описывается весь мир, и если хочется его познать, то без математики тут уж точно не обойтись. Многие конечно говорят, что можно без математики быть "айтишником" и успешно клепать формы да кнопки красить, но гораздо интереснее и приятнее работать с тем, что понимаешь, а не просто слепо веришь, что оно должно работать так.
Если тебе хочется смотреть такие видео, то да , математика не нужна
Добрый день. Я из ИТМО. А Вы где учитесь?
Это видео отличается сильно от предыдущих, очень круто! Такой формат где больше практического применения, даже на базовых вещах с треугольникам - отличный! Спасибо :)
Топовый ролик, пересматриваю уже второй раз.
за 13 минут после того как его выложили, 24 минутное видео
@@yonyonson6986 не мешай, он спидранит
Пересмотрели всей семьёй 9 раз
10% теории и 90% практики, идеально!
устаревшей*
@@vladimircreator + glBegin() как увидел прям расстроило. Дальше лень смотреть(
прошло 17 минут - запускаем ииии.... Круто, все работает!) (показывает окно с синим цветом)
Это не в минус, просто забавно)
А видео очень познавательное и интересное!
"мы создали экран смерти" 😊
Очень интересно, и доходчиво! Практика все видео это очень хорошо! Благодарю! Сам сейчас юзаю sfml.
Народ, навалите лайков, пожалуйста, если интересна тема графики и шейдеров. Хочу, чтобы заметили коммент.
Виндертон, сделай ещё что-нибудь крутое на тему компьютерной графики и шейдеров, пожалуйста! Правда чертовски интересно!
P.S. Вот у меня вроде нет особых проблем с математикой, тригонометрию понимаю без проблем, но писать шейдеры для меня - темный лес. Я вообще бэкенд разраб, но шейдеры всегда были сложны для меня и оставались невероятно крутой магией. Всегда кайфую от шейдеров и восхищаюсь людьми, которые умеют в программирование графики)
Узнал больше за это видео, чем за весь курс "Компьютерная графика" в бауманке
Один из лучших роликов по азам графики, который я видел!
Готов обтекать таким контентом и дальше, великолепный материал
как раз начал изучать glsl. Через все эти функции я уже проходил, хотелось бы что то более сложного/нового. Крутое видео!
Отличное видео и отличное объяснение. В свое время лет 7 назад была задач написать шейдер для реализации банальной анимации блюра бэкграунда (для мобильной игрушки). Наверное это был мой самый травматичный опыт в программировании. Очень сложно было найти инфу что бы въехать в нее (в тему шейдеров) с нуля, по каким то ошметкам приходилось формировать понимание. Которое потом достаточно быстро улетучилось (т.к. задача была разовая).
Офигенная тема и офигенный ты. Вопросов почти нет. Ждемс что-нибудь похожее.
Это же отлично! Спасибо за работу, буду надеяться на продолжение 😊
Мне хоть и приходилось писать 3D графику 5 лет назад, со всеми шейдерами что есть в DirectX, кроме разве что mesh шейдеров. Но это видео посмотрел с удовольствием, красиво рассказываешь и показываешь.
Пздато!!! После после того скажем "рекламного" ролика, думал все уже. Но нет, старый добрый виндертон все еще с нами!!!
У меня в голове это было настолько не структурированна, что одним видео ты смог заставить понять все что я хотел понять очень давно!!! ЗА ЭТО РЕСПЕКТ!!!
Дя, старый добрый любимый мягкий ТЁПЛЫЙ ХОРОШИЙ виндертон все ещё с нами уряяяяя > w <
Я так рад
Боже помоги нам
это великолепно! спасибо большое, это просто невероятно круто
Невероятно интересно, спасибо за труд
Очень крутая подача, понимаю мало чего, но с удовольствием смотрю, как ты объясняешь и рассказываешь)
Бро, мы с тобой. Ты лучший❤
Не понимаю эти бесполезные хвалебные отзывы в комментариях, как будто до этого видео, тема графики была закрыта для всех.😅😅😅
До этого видео я меньше знал о графике. Не суди по себе
Ну кто-то с этого видео с ней познакомился. Что в этом плохого? Не все же подписаны на те же каналы, что и ты 🤷♂️
В видео достаточно информации, чтобы переступить первый порог.
@@gimeron-db Переступил?
@@cheelzone7896 "Hello, Triangle!" есть. Далее можно поэтапно изучать конвейер и экспериментировать.
Можно конечно на Shadertoy, Processing, и др., но написание своего тоже полезно.
Спасибо за видео)
Я конечно думал что компьютерная графика сложная, но чтобы настолько…
После этого видоса какой-нибудь backend на Python кажется просто детской задачей
Отличный ролик!
Всегда было интересно, как все эти шейдеры работают, но руки никак не доходили, а твой ролик рассказал почти о всем том, что было интересно)
Хотелось бы вторую часть, но уже с текстурами, ибо как они натягиваются- вопрос. Ну и про то, как оно все работает, когда "камера" поворачивается, например.
Полгода назад нужно было разработать сложную анимацию для сайта и на неделю я засел в изучение темы. Тогда-то я и познакомился с OpenGL. Начал читать учебник по нему, но решили упростить и я забил.
В общем, где-то в середине видео я начал вспоминать, что я был на том сайте с шейдерами, что-то копировал, что-то писал даже с ними.
Главное, не прокидывать!.))
Развитие передачи опыта в IT на божественном уровне, не иначе. Потому что только бог и сможет понять ЧТО ИМЕННО НОВИЧКАМ ДЕЛАТЬ ПОСЛЕ этого треугольника, чтобы двинуться дальше. Заебись, спасибо! Теперь пойду делать свой игровой движокааа... стоп. Осталось понять как написать импортер геометрии или понять как вставить уже готовый, а так же выяснить, ЧТО И КАК вписать между gl begin и gl end, в цикле работы программы, чтобы наконец то отрисовать свою модельку, созданную в 3д редакторе, чего НИКТО. НИКОГДА. НИ В ОДНОМ ВИДЕО (ДЛЯ НОВИЧКОВ ИМЕННО) НЕ ОБЪЯСНЯЕТ. Одни сраные треугольники. И таких тысячи. Шикарно вручную выставлять позицию вертексов. А может уже пора писать туторы о том, как сделать, чтобы автоматически выделялась память и запускался рендер под модельку, которую ты добавил, и чтобы это было вставлено в нужном месте в цикл условного draw()? А ну не, зачем, это же "сами уже должны будут понять после того как пройдут стадию новичков МАГИЧЕСКИМ ОБРАЗОМ с МАГИЧЕСКОЙ практикой". Или идти смотреть как Кармак писал на git квейк и дум, в условиях когда ничего не будет им понятно.
иш ты, это ведь трудиться надо :)
сложно, критически непонятно, но досмотрел до конца. хорошее видео
На плюсах тоже можно устанавливать библиотеки менеджерами пакетов (даже на винде, например, с помощью vcpkg)
Блин, сделай аналог на вулкане, это же будет супер круто
Та не, слишком сложно и бесполезно. Сложно в том плане, что для отрисовки одного треугольника, требуется 1000+ строк когда. Не веришь - загугли. А бесполезно в том плане, что его имеет смысл использовать, когда у нас на отрисовке очень много треугольников, а в данном примере мы используем только 2 и поэтому прироста в производительности не будет.
@@softwet4341 Я работал с вулканом. Я знаю о чём ты, просто ну хз. Сделать такой advanced-level гайд на что-то более продвинутое, мб как One Lone Coder, если знаешь такого.
По кайфу делаешь, давай топи, ещё ещё
Очень понравилось. Огромное спасибо за видео.
Меня прикалывает, что буквально в тот же момент когда я начал погружаться в CPU и GPU графику, вышел этот видос. Я просто листал ленту, заполненную этой тематикой, и в ней оказалось это видео. Сказать что я охренел = ничего не сказать 😅
То же самое. Сейчас изучаю OpenGL, glsl, плюс вспоминаю матан. Очень хочу влиться в разработку движков для игр.
Самому интересно было разобраться в устройстве графического конвейера. Попросил ChatGPT собрать общую информацию об этапах и о том, что на них происходит с примерами - и это сработало. Видео помогло с проблемой "чистого листа".
Prompt к чату:
«Я хочу разобраться в работе всех стадий графического конвейера при отрисовке изображения на видеокарте.
Опиши этапы графического конвейера и расскажи, что происходит в каждом из них.
Я буду задавать вопросы, чтобы узнать подробнее, и озвучивать свои предположения о принципе работы. Ответь на заданные вопросы и оцени, верно ли я понимаю принцип, если не верно, то поправь меня - опиши чуть более понятно, приведя пример.»
На удивление, просмотр прошёл на одном дыхание! *т.к. тема не из лёгких 👍
Класс, продолжай видео по графике!
не знаю насчет mix, но лерпать в шейдерах можно на основе любого значения. В случае с блюр-шейдером, например, если лерпать между оригинальным пикселем камеры и заблюренным, можно в альфу передать отрицательное значение, и эта блюр-функция станет противоположной (sharpen). А если нужно увеличить силу нормал-мапы, часто используется число выше 1. Например lerp(float3(0, 0, 1), normalMap, 2), где первый параметр - это плоская нормаль в пространстве касательных в Z-up движках (Unreal)
как всегда большое спасибо за труд)
классный контент, спасибо❤
В этом ролике была реклама здорового блогера, не квк у других - скилбокс, реклама блогера курильщика😂
Коммент в поддержку канала
Спасибо за такое видео, помог разобраться во многом❤
где-то неделю назад начал изучать игровые движки, долго не мог понять что за шейдеры, почему я могу наложить 10 разных текстур на один объект, как это будет работать, как он высчитывает все это. Стало немного понятнее, спасибо большое, захотелось углубиться в GLSL и посмотреть его аналог для вулкана, сравнить их
Аналога для Вулкана не существует. Можно писать шейдеры на GLSL или HLSL, а затем их придется скомпилировать в бинарный формат SPIR-V, кой и использует вулкан
@@longforeseen понял, спасибо большое
Чувак,ты классный!!!👍👍👍👍👍
Бро спасибо за контент реально полезно
Прямоугольник выводит белого цвета. В фалах vertex.shader и fragment.shader ошибка HLSL0010 непредвиденный маркер "out".
непредвиденный маркер "in". Ошибка HLSL0029 Не удается разрешить тип "vec4". Не удается разрешить тип "vec2".
ошибка HLSL0056 "main": не все пути к коду возвращают значение. ошибка HLSL0033 Переменная "gl_Position" не объявлена.
Кто может объяснить причину, боду признателен.
Возможно потому что шейдеры написаны на языке GLSL, а компилируются компилятором языка HLSL. Это как написать программу на Python и попытаться ее откомпилировать с помощью C++
Всегда смотрю и восхищаюсь. Чувствую себя барашкой😂😂😂
Если бы в школе так преподовали, детям не пришлось бы страдать😊.
Есть расширение для VS, прям так и называется glsl, позволяет комплировать нативно исходник шейдера без запуска проги, подсвечивать синтаксис и находить ошибки
как же я ждал этого
Давай 3D! Было бы интересно про embree послушать
Молодец, спасибо за время и труд
Давай больше видосов про графику и шейдеры (и про разработку игровых движков в целом)
Спасибо, хороший видос, как диплом допишу, сяду потестить
Не знал об этой библиотеке. Я когда-то в 2007 году нашел статьи по SDL и он мне после DirectX зашел лучше. Для моих подделок вполне годился и SDL для работы с OpenGL. Да и в том же году я осваивал Linux и мне было интересно писать кроссплатфоменный код на C++
Хотелось бы больше видос связанных с игровой сферой и графикой
Довольно быстро пробежали по коду и тому что где и почему он такой )
С функциями все ясно, не ясно чем это отличается от других вариантов взаимодействия с пикселями экрана. Тут наверно были бы к месту примеры альтернативных методов.
Так же интересен следующий шаг - интерактивность )
Это очень обширная тема, и за пару видосов её не охватить. Потому берёте книги, видеокурсы и много практикуетесь. Плюс изучайте чужой код. Удачи, и надеюсь вас затянет в прекрасный мир графики)
Концепция ясна, но сложновато, думал попроще всё)
Классное видео
Классное видео
Мне не хватило расшифровки аббревиатур, на пример, glsl
Graphics Library Shading Language
Крутое объяснение
Ничего не понятно, но очень интересно
Оч крутое видео, обожаю работать с 3д
Ждем с++
Крутой видос, жаль времени нет сейчас почим что
а чего на плюсах vcpkg неиспользовать?
Надо было рассказать про матрицы, 3д и проекции)
Вот бы ролики почаще выходили...
Ждём гайд по реализации 3д движка)
топ
Спасибо. Максимум пользы
меняешь названия для видео чаще чем я меняю трусы
скажи, а в чем смысл вот этих шрейдеров? Ведь все что ты рассказал, можно реализовать другим способом, это для того, чтобы перенести основную работу на видеокарту, освободив процесор? Просто я вообще в этом ничего не понимаю, но слушать было интересно, ты так быстро рассказываешь. что вызывает восхищение без э.э.э.эканий и запинок. Но я не понял для чего это все, просто интересно понять.
Как обычно основы и ничего кроме основ. Хелло триангл в чатике генерируется спокойно.
Помню как-то два месяца потратил чтобы понять такие основы и чтобы все заработало (жалко тогда ни chatgpt ни этого видео не существовало). В хорошее время живем(если учитывать только образовательный контент).
Чат неплохо помогает собрать информацию и подать в понятной форме с примерами кода.
Для себя следующий prompt составил:
«Я хочу разобраться в работе всех стадий графического конвеера при отрисовке изображения на видеокарте.
Опиши этапы графического конвеера и расскажи, что происходит в каждом из них.
Я буду задавать вопросы, чтобы узнать подробнее, и озвучивать свои предположения о принципе работы. Ответь на заданные вопросы и оцени, верно ли я понимаю принцип, если не верно, то поправь меня - опиши чуть более понятно, приведя пример.»
Далее двигался по шагам, разбирая тему. Человека чат пока не заменит, но очень помогает, когда того рядом нет )
Как называется такое направление программирования?
самый сок, вкуснятина
Давай еще ролик про воксельную графику и отличие воксельной графики от полигональной
Блин, как жаль что это видео вышло не год назад, я неделю разбирала все то, что здесь выложено в 20 минутах... тогда я для курсовой создала игровой движок также на OpenGL (glad), GLFW
А так очень классное видео, как по мне, все понятно, но возможно потому, что я уже работала с OpenGL
Сейчас для диплома доделываю движок, и пытаюсь спроектировать и написать ии врага, надеюсь не улететь в академ в этом году:'D
У тебя наверняка сохранились куча полезных ссылок на литературу и др материалы? Тоже интересуюсь реализацией движка, но пока совсем начинающий так сказать, было бы интересно посмотреть на твои наработки или ссылки на источники
@@soul_loneliness, learnopengl, opengltutorial (он устарел, но для базы вполне себе хорош) - в основном с него берут код ребята с ютуба (и я особенно). Просто потом на движке сверху пишется логика, коллизия, и как-то работает.
Также книга Джейсона Грегори очень хорошая, но там прям самая база, ее читать полностью наверное не стоит - слишком много времени уйдет, но благодаря ней я нашла другие источники инфы типа книгу про ии типа Game AI Pro. Короче эта книга больше как энциклопедия, а не как методичка.
Ну и плюс смотрела документацию, разумеется, у GLFW она суперская.
Потом смотрела видео других ребят, как они пишут свои движки, и часть кода у них брала, если это решало мою проблему - просто вбивала в поиск ютуба слова типа "game engine opengl" или "opengl движок", и там по плейлистам смотрела
Но а так на первых этапах, когда я не знала, с чего начинать искать, так как тема рыли объемная, то я писала вопросы в чат гпт🤡🤡🤡... я была в отчаянии тогда, так как я выбрала тему, в которой не разбиралась ни я, ни мой научрук, а времени как бы 3 месяца до сдачи, ахаха, но это помогло мне понять, что мне примерно нужно искать
И код с гитхаба я не покажу, там все грустно и некрасиво...
Еще у автора канала есть на гитхабе движок, можно в нем поразбираться, если есть умение читать чужой код (у меня нет, поэтому это не было в моих пунктах), то как бы можно
Но вроде как большинство информации я все равно взяла с opengltutorial, там все в теории и на практике показывается
о, моя шарага
Винденторн лучший
Интересно как это все происходит на уровне железа. Понятно что многие вещи делать в секретности, но для общего понимания процесса.
Просто не совсем понимаю, как работает видеокарта. Cpu понятно читает инструкции из оперативной памяти и их выполняет, как при этом работает gpu и их взаимодействие. Вот тут лично у меня пробел.
Ну почему я не учил математику...
Начни учить
А где можно работать зная эту информацию?
Тексты для игр писать?
Почти усыпил всего за 13 мин видео на x2 скорости!
ахуенно!!!!
кайф
вау
Бро, всё круто, только NLP, а не NPL
Не могу жить без твоих видео!!!!
Сделай видос про вулкан апи
я тут с тобой
блин вроде бы я программист, но тут все так запутанно, хотя может потому что я обычный школяра, 8 классник, который сам активно программирует, и мне еще рано это понять? или я один такой если можно так сказать, тупой?
конечно это видео непонятное. автор сам не понимает, что говорит "миллион шейдеров", "uniform для передачи данных из шейдера в шейдер" и т.п.. Если хочешь разобраться в графике (при условии, что уже понимаешь основы программирования), то попробуй серию статей learnopengl (у большей их части есть перевод на хабре) и статьи с сайта inigo quilez. Для старта этого более, чем достаточно.
Лучше вернуться к этой теме после освоения дифференциального счисления и матричной алгебры.
🎉
Надо бы ещё 3д графику разобрать.
Добрый день! Можно, пожалуйста, задать вам пару небольших вопросов: как хорошо вы знаете английский язык от 1 до 10. Как вы его учили и сдавали ли вы какие-нибудь тесты/экзамены?) А ещё - как вы переводите - какими переводчиками вы пользуетесь, а какие переводчики можете посоветовать (можно абсолютно любые на ваш вкус и цвет)? Расскажите, пожалуйста, мне правда интересно.
Спасибо😇
Нет тут темы "Как работает GPU" только простой пример с мёртвым Gl