Мы используем файлы cookie и сторонние сервисы для улучшения работы сайта. Продолжая пользоваться сайтом, вы соглашаетесь с нашей Политикой конфиденциальности.
Если вы находитесь в рф настоятельно рекомендуем ознакомиться с пунтом 5 нашей Политики конфиденциальности.

Menu

Select: Русский

Идеальное зеркало для идеальных людей: Левши, Физика, Ray Tracing

Morguenal

Размещено: 2025 Обновлено: 2025-2-1

История о том, как отец парня, родившегося левшой, на примере видеоигр постарался объяснить ущербность такого физического явления, как отражение.

Как-то раз на мою долю выпала непростая задача. Не все молодые родители успевают подготовиться к ней заранее.

Задача: посвятить четырехлетнего сына в азы понимания устройства работы отражающих поверхностей (зеркал)

Я не подготовился и это моя ошибка, потому что ранний интерес к двойникам в зазеркалье спрогнозировать было не так сложно…

Дополнительное условие: наш с женой сын – левша

Я не вижу смысла в оправданиях, потому что мне работать с результатом, а не кому–то другому, но справедливости ради стоит уточнить, что ранее вопросы о теме преобладающей руки вращались исключительно вокруг бытовых нужд:

  • Найти прописи для левшей. И да, я считаю нормой начать учить письму в четыре года, особенно, если ребёнок в самом начале “отражал” некоторые буквы, когда писал их по памяти, а не обводил.
  • Подобрать геймпад. Помню, мы экспериментировали с геймпадом от Thrustmaster, но по итогу остановились на формате геймпадов Xbox One, что наводит меня на мысль о реальности перспективы стать амбидекстром. Мне вспоминаются доктрины испанских (если не ошибаюсь) школ ножевого боя, где человек “с ведущей рукой” считался человеком с ограниченными возможностями, потому что по их мнению боец должен быть симметричен.

Кстати, 4 ноября 1947 года боксёр по имени Майк Коллинс установил мировой рекорд: будучи левшой он появился в углу ринга в левосторонней стойке (стойка правши), а затем внезапно сменил стойку и нокаутировал своего соперника Пата Броунсона (Pat Brownson) с первого удара, на 4-й секунде матча. Круто, впечатляет.

  • Переключить ведущую руку в Майнкрафте. С одной стороны не есть хорошо то, что во всех играх нельзя переключить ведущую руку, но с другой – возвращаемся к пункту два и делаем выводы.

Интересный вывод будет в конце статьи.

Итак, к зеркалам меня не готовили и вообще - это непростая тема. Когда сын задал мне свой вопрос, я начал перебирать теги в облаках воспоминаний.

Что такое отражение?

Ущербная проекция!

Вообще, этот вопрос более уместен в психологии, потому что в нём не достаёт важного фрагмента. Я считаю, что ещё с детства нужно учить детей формулировать вопросы так, чтобы дети могли ненароком самостоятельно ответить на них или хотя бы начать подбираться к ответу.

Перефразируем: Что такое отражение света? – вот так уже верно, хотя для неподготовленного может прозвучать странно. Формулировка напоминает о том, что в полной темноте “зеркало работать не будет” создавая верную ассоциативную связь. Далее отвечаем на сам вопрос.

Отражение света – явление в физике, которое было открыто Галилео Галилеем. Учёный провёл эксперимент, в котором продемонстрировал, что часть света от луча падающего на поверхность – отражается, а другая часть поглощается объектом или проходит сквозь него.

Логично развить мысль.

Что такое луч света?

Луч света – это направленный в одном направлении свет, ограниченный в пространственном распространении, то есть, в тех направлениях, которые перпендикулярны (поперечны) изначальному направлению луча.

Ещё кое-что важное в контексте дальнейшей темы статьи, так как там я упомяну трассировку лучей в видеоиграх.

Человеческий глаз может увидеть луч света?

Может, если часть света рассеяна, например на частицах пыли колеблющихся в воздухе.

И, вот.

Что такое зеркало?

Зеркало – это гладкая поверхность с отражающем слоем. Когда свет падает на зеркало, случается быть закону отражения. Так и “отрисовывается” зазеркалье, что воспринимается нами, как отражение объекта.

Всё это не то, что даёт понятные ответы маленькому человеку, так что я далее задумчиво хмыкал.

Ребут Перельмана

В итоге я извлёк из памяти помятый и пожелтевший учебник физики для детей “Занимательная физика Перельмана” и с умным видом изрёк:

– Как ты думаешь, можем ли мы видеть зеркало, сын мой?

Это позволило мне выиграть время, но я также помнил, что точка невозврата “Зачем я вообще что-то спросил у этого задрота” всё ближе. Нужно спешить. Я нагуглил главу “Можно ли видеть зеркало” и стал её вслух читать. Успев позабыть содержание глав книги, которую мне читали в детстве, вскоре я понял, что этот пусть и неплохой учебник, нуждается в обновлённой редакции. Мне приходится очень много вводить цензуры в режиме реального времени, как будто я переводчик на переговорах двух враждующих фракций, порой оскорбляющих друг друга.

>> Наконец, у вашего зеркального двойника есть физический недостаток, от которого вы, надо думать, свободны: он левша. Он пишет, шьет, ест левой рукой, и если вы выразите готовность с ним поздороваться, он протянет вам левую руку.

Вот такие вещи я пробегал глазами наперёд, делая театральные паузы во время чтения и выдавал отредактированные версии:

>> Наконец, у нашего двойника есть физическая особенность, от который мы, надо думать, свободны: он правша. Он пишет, шьёт, ест правой рукой, и если мы выразим готовность с ним поздороваться, он протянет нам правую руку.

Это отражение сказки про отражение с цензурой, где я освободил текст от “недостатков”.

Тут вопрос не только в том, чтобы “ребёнок не расстроился”. Я допускаю, что быть левшой – преимущество, как максимум и, как минимум – идеальная база для развития в амбидекстра. Нестандартные условия повод не только для жалости к себе, но и для роста. Многим правшам (например мне) в детстве и не приходило в голову использовать левую руку наравне с правой, как и многих вещей я не замечал.

Помню смешной случай, как мы гуляли и сын указал мне на “медведя с майнкрафтовым мечом в заднице”. Я некоторое время всматривался и в итоге понял, что действительно – это пятно похоже на медведя (или огромного хомяка), которому воткнули меч из Майнкрафта прямо в задницу, но силуэт отражён и самостоятельно я не углядел бы этой сцены. Тем не менее чувак замечает подобные силуэты доступные и правшам.

Почему в зеркале я правша?

Так звучал вопрос.

Что же, я выиграл время. С ноутбука я читал главу занимательной физики Перельмана занимаясь устной цензурой, а тем временем шерстил интернет в телефоне. Удивляюсь, как у меня не разъехались глаза подобно лётчику вертолёта Апач.

Я дал ответ:

Давай сначала разберёмся с зеркалом. Зеркало – гладкое. Оно может показать нам то, что находится перед ним, но лишь тогда, когда есть свет. В полной темноте мы ничего не увидим в зеркале. Не только потому что будет темно и мы не будем видеть вообще ничего, но и потому что зеркалу нечего будет показать.

Зеркало копирует нас и мы можем увидеть, как примерно выглядим, но делает оно это с ошибками.

Не самое лучше и тем более точное объяснение, тогда я это тоже понимал и потому предложил продолжить и сравнить зеркала в играх с реальным зеркалом.

Реализация имитации зеркал в видеоиграх

Мы включили ютуб и начали смотреть разные видео про отражения. В силу того, что на момент написания статьи я изучаю Unity всего ничего (неделю) могу выдать не так много прикладной информации.

Что мы имели на момент совместного просмотра роликов:

  1. Мы разобрались с тем, что без света не будет отражения и визуально в играх этот принцип тоже работает;
  2. Отражение бывает не только в зеркалах и это аналогично актуально для современных 3D игр;
  3. До того, как я приступил к изучению Unity, я успел немного поработать с canvas js. Мне было достоверно известно, что световых волн в цифровом мире не существует, а отражения – это всего лишь имитации, вариантов реализаций которых несколько.

Я читал о том, что бликам на поверхностях в художественных школах посвящают не так мало времени, хотя этот блик вроде бы не так уж и сложно для художника воссоздать, ведь он навсегда застыл во времени, что отчасти актуально и в случае старых игр. Отражения и блики вручную прорисовывались для создания идеальной кат-сцены или же их расположение было просчитано на 100% в рамках заскриптованных сценариев, которые идеологически не так уж сильно отличаются от кат-сцен, ведь в этот момент управление заблокировано. Это мне напоминает ранние методологии Диснея, основанные на принципе покадровой анимации, которая впрочем стала винтажем и используются по сей день (Кошмар перед Рождеством, Барашек Шон), но в случае с видеоиграми ключевое – ранние, а нужно двигаться вперёд и удивлять казуальщиков (нет прибыли – нет игр).

В старых играх отражения чаще всего являются дубликатами локаций, но с более низким разрешением. Кроме того, дублируется и модель персонажа игрока, который в точности повторяет действия во время игры. Примеров знаю несколько: самый (или один из самых) ранний пример в игре Dark Edge (1992). Также, упомяну Super Mario 64, в котором благодаря низкому разрешению разработчики банально скопировали уровень. DOOM 3. И, конечно, вспомню холл из особняка в Resident Evil, где натёртый до блеска полупрозрачный “мраморный пол” на деле слой скрывающий под собой вертикальную копию всего зала, как и “клона” игрока.

Со временем лор игр лишь расширялся, отражающих и отражающих блики поверхностей становилось всё больше, так что не странно, что игропром обзавелся рядом решений этих почти что тривиальных задач.

Методологии создания отражений

Cube Maps – метод отчасти устаревший, но по-прежнему актуальный в связи со своей эффективностью. Тут основная идея заключается в наложении текстур, который используется в 3D-компьютерной графике (нечто подобное я делал в рамках canvas) и компьютерных играх с целью копирования окружения объекта или сцены. Cube Maps состоят из шести 2D-изображений, каждое из которых представляет собой вид с определённого направления, соответствуя одной из шести сторон куба. Обычно кубические карты применяются для имитации отражений в воде, стекле или на металлических поверхностях и с помощью выборки кубической карты рендер определяет, какая из сторон куба должна отображаться (отражаться) на поверхности объекта.

Planar Reflections – как я понимаю, суть в дополнительном этапе рендеринга, в который входит создание комнаты и виртуальная камера, имитирующая отражающее зеркало. Методология показывает большую эффективность, когда нужно отразить небольшие пространства без обилия деталей (декора и пр.).

Screen Space Reflections (SSR) – этот метод заключается в анализе содержимого экрана игроков. SSR не генерирует отражения для объектов, которые находятся за пределами вашего экрана. Это может быть для кого-то ограничением, а для кого-то как раз тем самым вариантом, который позволит сэкономить ресурсы машины игрока.

Ray Tracing – в 2024 году это самая обсуждаемая методология и самая ресурсоёмкая. Невиданный ранее (да и в реальной жизни) реализм достигается путём имитации воздействия световых лучей на объекты в сцене. Чаще всего лучи отбрасываются в сцену и трассируются при взаимодействии с тем или иным объектом соответствующе физике реального мира: при столкновении луча света с отражающими поверхностями будет создан отраженный луч, а в случае столкновения с преломляющими поверхностями – свет пройдёт через эту поверхность.

Всё это вероятно я лично вскоре опробую.

Идеальное зеркало для идеальных людей

Искаженную копия бага порождённого когда-то великим взрывом

Где-то в середине одного из роликов случилось кое-что важное. Сын сказал, что в играх зеркала работают “более правильно” и более правильно “копируют нас”. Там они работают без ошибок и странно, что мы их пытаемся сломать.

Ну, да. Действительно. Так и есть.

Мы обсудили тот факт, что трассировка лучей, которая вне всяких сомнений выглядит эффектно, тем не менее является искусственной деградацией изначально “правильной (более полезной в рамках конкретной задачи) физики” в 3D измерении. Любопытно то, что стремясь идеально скопировать нашу действительность, нам приходится ломать то, что этой самой действительности и не снилось в 3D пространстве, которое порой выглядит намного реалистичнее, чем мы на фотографиях или тем более в отражении. Представьте, если бы зеркала работали подобно камере, копируя и отображая на поверхности нашу точную копию, именно такую копию, которую видит наш собеседник. Это кстати близко к тому, когда жена красуется перед камерой смартфона – да, такое зеркало показывает нам, как мы выглядим точнее.

Игры помогли разобраться в ситуации и это стало промежуточным итогом

Когда наш с женой сын задал вопрос, я не брал паузы для подготовки. Он спросил это тогда когда ему было интересно, а не тогда, когда в очередной раз пристал я с какой-то своей ерундой. Мне показалось нужным дать ответ немедленно.

После этого он будто бы лучше разобрался в ситуации. Проявляется это так:

  1. Ситуация с отражением букв ушла, но тут влияет и то, что он продолжает писать прописи;
  2. Он практически полностью перестал путать стороны. Сейчас это уже задача социальная, а не механическая, потому что синонимом “ведущей руки” часто в разговорах людей и различных персонажей является “правая рука”;
  3. Самое важное: во время действия рукопожатия он протягивает ту руку, которую подаёт собеседник автоматически и без всяких сложностей. Это крайне важно и я думаю, что мы двигаемся в направлении симметричности.

Вывод: играйте в игры

Я беспокоился, что мог его запутать, потому не претендую на роль методиста, так как метода то и нет. Играйте в игры. Вы часто можете слышать, что игры преимущественно несут вред, но это неправда. Игры приносят пользу, особенно они могут быть полезны детям.

Элли не уступит дорогу
Вспоминая древнюю метафорической легенду о том, как великанша Элли (Старость) одним ударом охладила пыл бога войны Тора и он осел на одно колено, касательно учебников Перельмана скажу вот что: возможно я прочитаю ребёнку эти два учебника, но лучше сделать их вычитку заранее, а то получится, как у нас недавно с Тремя толстяками. Всё это изматывает мою оперативку, да.

Коллекция зеркал

С момента просмотра того видео мы делаем скриншоты из игр, где есть зеркала, оценивая их реализацию. Коллекция будет пополняться.

Категории: My Life

gaming mirrors

comments powered by Disqus