Скриншоты недели.
Самое впечатляющее: ии легко перенес XeGTAO из репозитория в URP рендер фичу на компьют пассах. Косяки были, проблемки были, но решались. Так как от меня толку ноль, агент сам ходил в Graphics репозиторий Юнити, смотрел исходники. Фантастика.
А ну всратый пакинг текстур в Speed Tree впечатлил не меньше. Но прога - пушка.
Знакомство с AMD GPU профайлерами для стим-дека, у амд, на самом деле, прикольные штуки тоже.
Самое впечатляющее: ии легко перенес XeGTAO из репозитория в URP рендер фичу на компьют пассах. Косяки были, проблемки были, но решались. Так как от меня толку ноль, агент сам ходил в Graphics репозиторий Юнити, смотрел исходники. Фантастика.
А ну всратый пакинг текстур в Speed Tree впечатлил не меньше. Но прога - пушка.
Знакомство с AMD GPU профайлерами для стим-дека, у амд, на самом деле, прикольные штуки тоже.
❤4🔥1
Forwarded from Иван Валерьевич
This media is not supported in your browser
VIEW IN TELEGRAM
Film grain рендер фича для твоего хоррора
сделанная почти по статье. Но с упрощениями: шум, конечно, заранее сгенерирован и предварительно коррелирован (в статье корреляция от картинки зависит, но не уверен, что это супер важно, но было бы прикольно менять форму зерна, там суть в визуальная в основном, не знаю пока как это дешево сделать). И я не рассчитываю зависимость амплитуды от яркости пикселя (что меня и зацепило в папире), вместо этого тоже предрасчёт в 1D Lut, умножение и наложение.
сделанная почти по статье. Но с упрощениями: шум, конечно, заранее сгенерирован и предварительно коррелирован (в статье корреляция от картинки зависит, но не уверен, что это супер важно, но было бы прикольно менять форму зерна, там суть в визуальная в основном, не знаю пока как это дешево сделать). И я не рассчитываю зависимость амплитуды от яркости пикселя (что меня и зацепило в папире), вместо этого тоже предрасчёт в 1D Lut, умножение и наложение.
🔥4
This media is not supported in your browser
VIEW IN TELEGRAM
Скриншоты недели буду однообразны, покажу один.
В основном эксперимент с вайб-код-ии-ассист-рендер-пайплайном ), часть про куллинг. Описание в html
В основном эксперимент с вайб-код-ии-ассист-рендер-пайплайном ), часть про куллинг. Описание в html
🔥3👍2
Forwarded from Иван Валерьевич
попросил бананью прикинуть, что получится если я буду монетизировать свои дебаг-скриншоты как современное искусство.
😁10👍5
Что-то Валв там навайбкодили, что еле подключил стим-дек к клиенту, народ жалуется.
Вот и первый билд вайб-код-аи-ассист-рендер-пайплайна.
Клиент дека, кстати, теперь содержит (а может всегда содержал) еще один уродливый профайлер - GPUVis. Ладно, на деле любопытная штука, заявлено что с ним легко сравнивать связку CPU и GPU.
Список жирненьких метрик с амд профайлера.
Вот и первый билд вайб-код-аи-ассист-рендер-пайплайна.
Клиент дека, кстати, теперь содержит (а может всегда содержал) еще один уродливый профайлер - GPUVis. Ладно, на деле любопытная штука, заявлено что с ним легко сравнивать связку CPU и GPU.
Список жирненьких метрик с амд профайлера.
⚡5👍1
Forwarded from Иван Валерьевич
This media is not supported in your browser
VIEW IN TELEGRAM
Чет седня был повод вспомнить, что вот это на 95 процентов ии. Руками только разрезал на части меши и текстуры натягивал в пэинтере. Ну обработка мешей после генерации автоматов в инсталоде. Я тогда еще про кодексы не знал и копипастил в гпт.
Какая-то моя древняя идея, которая казалась чрезвычайно контентно зависимой. И я проверил, а что если генерить. И для такой фигни генеративное 3д прям на ура.
Какая-то моя древняя идея, которая казалась чрезвычайно контентно зависимой. И я проверил, а что если генерить. И для такой фигни генеративное 3д прям на ура.
❤4👍1
Forwarded from Иван Валерьевич
Иван Валерьевич
Чет седня был повод вспомнить, что вот это на 95 процентов ии. Руками только разрезал на части меши и текстуры натягивал в пэинтере. Ну обработка мешей после генерации автоматов в инсталоде. Я тогда еще про кодексы не знал и копипастил в гпт. Какая-то моя…
Мне, конечно, быстро надоело, и я не доделал, но помню, что вот, например, хотелось сатисфайного взаимодействия. Я примерно знал какими способами этого добиться, и какие настройки мне нужны и тут, конечно, скорость итерирования была капец огонь. Типа «сделай, чтоб тапы на деталь накапливали поворот и она двигалась непрерывно, но выведи кривую того и сего», нужен баунс на том и сем, и такие-то его настройки. И так далее.
Потом сидишь пробуешь, отмечаешь че не хватает
Потом сидишь пробуешь, отмечаешь че не хватает
❤3
Forwarded from Alex
MrF, [26/02/18 21:10]
нашёл свой код
MrF, [26/02/18 21:10]
MrF, [26/02/18 21:10]
в шейдере
localNormal = QuatRotate(IN.Normal.xyzw, float3(0,0,1));
IN.Tangent.xyz = QuatRotate(IN.Normal.xyzw, float3(0,1,0));
OUT.Tangent = normalize(mul((float3x3)vWorldMatrix, IN.Tangent.xyz));
float sign = IN.Normal.w > 0 ? 1 : -1;
OUT.Binormal = (cross(vNormalW, OUT.Tangent) * sign);
MrF, [26/02/18 21:10]
вот по сути знак quat.w это знак бинормали)))
MrF, [26/02/18 21:10]
в шейдере
нашёл свой код
MrF, [26/02/18 21:10]
var quat = Quaternion.LookRotation(normal, tangentXYZ);// rotationMatrix.rotation.normalized;
if (quat.w < 0) quat = new Quaternion(-quat.x, -quat.y, -quat.z, -quat.w);
float bias = 1.0f/32767;
if (quat.w < bias)
{
float nfactor = Mathf.Sqrt(1.0f - bias*bias);
quat = new Quaternion(quat.x*nfactor, quat.y*nfactor, quat.z*nfactor, bias);
}
var testBinormal = Vector3.Cross(normal, tangentXYZ).normalized;
if (Vector3.Dot(binormalOrig, testBinormal) <= 0) quat = new Quaternion(-quat.x, -quat.y, -quat.z, -quat.w);
MrF, [26/02/18 21:10]
в шейдере
localNormal = QuatRotate(IN.Normal.xyzw, float3(0,0,1));
IN.Tangent.xyz = QuatRotate(IN.Normal.xyzw, float3(0,1,0));
OUT.Tangent = normalize(mul((float3x3)vWorldMatrix, IN.Tangent.xyz));
float sign = IN.Normal.w > 0 ? 1 : -1;
OUT.Binormal = (cross(vNormalW, OUT.Tangent) * sign);
MrF, [26/02/18 21:10]
вот по сути знак quat.w это знак бинормали)))
MrF, [26/02/18 21:10]
в шейдере
localNormal = QuatRotate(IN.Normal.xyzw, float3(0,0,1));
IN.Tangent.xyz = QuatRotate(IN.Normal.xyzw, float3(0,1,0));
OUT.Tangent = normalize(mul((float3x3)vWorldMatrix, IN.Tangent.xyz));
float sign = IN.Normal.w > 0 ? 1 : -1;
OUT.Binormal = (cross(vNormalW, OUT.Tangent) * sign);
👍2🔥1
Положу сюда. Описание, что как работало во Фросбайте на момент написания. Много интересного.
Как мы знаем, Юнити в hdrp, во многом, наследует идеи фросбайта (автор один), книжка содержит и ответ на загадку, почему же в Юнити smoothnes в свойствах материала, а не рафнесс как везде.
https://media.contentapi.ea.com/content/dam/eacom/frostbite/files/course-notes-moving-frostbite-to-pbr-v2.pdf
Как мы знаем, Юнити в hdrp, во многом, наследует идеи фросбайта (автор один), книжка содержит и ответ на загадку, почему же в Юнити smoothnes в свойствах материала, а не рафнесс как везде.
https://media.contentapi.ea.com/content/dam/eacom/frostbite/files/course-notes-moving-frostbite-to-pbr-v2.pdf
🔥4✍3
Forwarded from WellMOR
🔥2