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