Зацикленная прокрутка фона для 2D
В первую очередь это может пригодиться для создания скроллера. Например, какая-нибудь аркада, где не камера движется за игроком, а создается иллюзия движения, потому что двигается фон. Точнее говоря, сдвигается только текстура, сам объект, на котором она висит – тоже не движется. При этом, возможно сделать сразу несколько фонов, которые как бы перемещаются в пространстве, с разной скоростью. Это позволяет добавить эффект глубины. Данный скрипт анимирует до трех фонов, что должно быть достаточно в принципе для любой игры, хотя если внести несколько правок по примеру, можно добавить еще.
Так как нам нужно управлять материалом, мы будем использовать в качестве фона — Mesh Renderer, а не спрайты. Добавляем на сцену 3D объект Quad и назовем его например BG_1. Теперь кидаем на наш квадрат нужную текстуру, она должна быть бесшовной. Растягиваем квадрат по экрану и настраиваем материал меша, выбираем шейдер Unlit:
Если нужна прозрачность, то выбираем Transparent.
Не обязательно использовать именно этот шейдер, но если вы делаете игру из спрайтов, тогда это то — что нужно.
Теперь добавим пустой объект и вешаем на него скрипт MoveBackground:
using UnityEngine; using System.Collections; public class MoveBackground : MonoBehaviour < public enum ProjectMode ; public ProjectMode projectMode = ProjectMode.moveX; public MeshRenderer firstBG; public float firstBGSpeed = 0.01f; public MeshRenderer secondBG; public float secondBGSpeed = 0.05f; public MeshRenderer thirdBG; public float thirdBGSpeed = 0.1f; private Vector2 savedFirst; private Vector2 savedSecond; private Vector2 savedThird; void Awake() < if(firstBG) savedFirst = firstBG.sharedMaterial.GetTextureOffset("_MainTex"); if(secondBG) savedSecond = secondBG.sharedMaterial.GetTextureOffset("_MainTex"); if(thirdBG) savedThird = thirdBG.sharedMaterial.GetTextureOffset("_MainTex"); >void Move(MeshRenderer mesh, Vector2 savedOffset, float speed) < Vector2 offset = Vector2.zero; float tmp = Mathf.Repeat(Time.time * speed, 1); if(projectMode == ProjectMode.moveY) offset = new Vector2(savedOffset.x, tmp); else offset = new Vector2(tmp, savedOffset.y); mesh.sharedMaterial.SetTextureOffset("_MainTex", offset); >void Update() < if(firstBG) Move(firstBG, savedFirst, firstBGSpeed); if(secondBG) Move(secondBG, savedSecond, secondBGSpeed); if(thirdBG) Move(thirdBG, savedThird, thirdBGSpeed); >void OnDisable() < if(firstBG) firstBG.sharedMaterial.SetTextureOffset("_MainTex", savedFirst); if(secondBG) secondBG.sharedMaterial.SetTextureOffset("_MainTex", savedSecond); if(thirdBG) thirdBG.sharedMaterial.SetTextureOffset("_MainTex", savedThird); >>
Итак, тут мы устанавливаем наши фоны целых три, и регулируем их скорость. Фон может быть и один, не обязательно три ставить. Кроме того, есть возможность выбрать направление движения — по оси Х или по Y. Если нужен реверс по осям, то просто ставим отрицательное значение скорости.
Вот как-то так.. Вроде мелочь, но может быть полезной.
Вертиго, буллет-тайм и другие спецэффекты
Vertigo effect (он же dolly zoom, он же «эффект тромбона») – оптический эффект, при котором предметы на переднем плане остаются на месте, а задний фон стремительно начинает отодвигаться назад. Эффект был впервые применен в художественном кино в ленте Альфреда Хичкока «Головокружение» (Vertigo, 1959). Дабы передать боязнь высоты одного из персонажей, кадру была придана «засасывающая» глубина, произведшая эффект на многих зрителей (интересно, что автора этого приема – оператора второй съемочной группы Ирмина Робертса – Хичкок забыл даже упомянуть в титрах). С тех пор «эффект “Вертиго”» использовали многие постановщики, поскольку никакого специального оборудования для этого не требуется – только широкоугольная линза и тележка.
Сделать кадр наподобие того, что использован Стивеном Спилбергом в «Челюстях», при наличии фотокамеры может любой желающий. Технология состоит в том, что объектив подкручивается для увеличения находящегося в кадре объекта, а сама камера в это же время пятится от объекта назад (либо наоборот, используется обратный зум и наезд на объект). При таком одновременном действии меняется только глубина кадра, а сам предмет остается относительно зрителя неподвижным. Необязательно даже иметь под рукой специальную тележку для камеры, можно поставить закрепленный на треноге фотоаппарат на скейтборд или на магазинную тележку, и после нескольких тренировок у вас получится не хуже, чем у Спилберга. Главное – не забыть отключить автофокус, в данном случае он совершенно излишен.
Склейка Дэймона
В 2002 году перед режиссером Дагом Лайманом встала практически неразрешимая задача: как заставить зрителя поверить, что Мэтт Дэймон способен драться, как Брюс Ли? Ответ был найден, и мы можем наблюдать его в «Идентификации Борна»: все драки сняты несколькими трясущимися ручными камерами, причем зритель видит только отдельные части дерущихся людей, а не бой в полный рост. Все это нарезано клиповой лапшой, получившей название «склеек Дэймона» и с тех пор изрядно распространившейся по Голливуду. Теперь для создания ощущения плотного экшена, реально горячей перестрелки, драки или напряженной автомобильной погони (как, например, в фильме «Неизвестный») фильммейкеру достаточно помахать парой камер, накрошить получившийся футадж монтажными ножницами и склеить из 1-2-3-секундных кусочков сцену, которая будет производить впечатление реально захватывающей – если только от мельтешения на экране вас не стошнит.
Режиссеры обнаружили, что новая техника съемки дает возможность значительно экономить на стоимости трюков, так как позволяет разбивать сложнопостановочные кадры на отдельные элементы, а воображение мувигоера потом само склеивает из этих пазлов общую картину. Так что если лет через 10 все файтинги будут выглядеть «в духе Борна», фанаты Чака, Брюса и Жан-Клода, вы знаете, чья в этом вина!
Буллет-тайм
Наверняка вы не раз задумывались над тем, что же это за прием из «Матрицы», позволивший камере неспешно облететь вокруг зависшей в прыжке Тринити. Технология эта называется «полет пули», он же bullet time (название впервые встречается в сценарии «Матрицы», так что братьев Вачовски можно считать его авторами), а реализуется такой эффект с помощью большого количества камер, размещенных вокруг снимаемого объекта: сделав серию одновременных фотографий, на которых повисший в воздухе объект виден с разных сторон, и склеив их в серию, можно добиться эффекта «облета». Если камеры не расположены по периметру, а выстроены в ряд, достигается схожий эффект: снимаемый объект замирает, а взгляд зрителя «движется» вдоль него. Возможность делать 24 кадра в секунду или более расширяет творческую палитру монтажера, т.к. позволяет пользоваться не только «одновременными» снимками – имея под рукой кадры, сделанные с разницей в доли секунды, он может подбирать их таким образом, что при «облете» камеры замерший в прыжке объект не просто висит в воздухе, а продолжает двигаться с небольшой скоростью. В некоторых фильмах можно наблюдать «фальшивый» bullet time, целиком нарисованный на компьютере (см., например, «Пароль “Рыба-меч”»), но даже в таком виде он смотрится впечатляюще, поскольку замедлившееся время, совмещенное с круговым парением камеры (т.н. orbital shot), – это всегда красиво.
Первый кирпич в фундамент технологии «полета пули» был заложен еще до изобретения кинематографа, когда английский фотограф Эдвард Майбридж научился делать серию одновременных снимков галопирующей лошади с помощью набора фотографических аппаратов, срабатывающих одновременно. Целью эксперимента Майбриджа было победить в споре с губернатором Калифорнии и выяснить, действительно ли все четыре ноги лошади отрываются от земли при галопе. Считается, что это невинное пари, результатом которого стала сконструированная Эдвардом игрушка под названием «зоопраксископ», подсказало Томасу Эдисону идею насчет его «кинетоскопа» – первого коммерческого киноаппарата. «Фотографические истоки» технологии «буллет-тайм» неслучайны – ведь, по сути, в знаменитой сцене из «Матрицы» мы наблюдаем не видео как таковое, а замаскированный под видео набор отдельных фотографий, склеенных прихотливым образом. Что, конечно, не мешает «полету пули» оставаться одним из самых ярких и впечатляющих спецэффектов, взятых кинематографом на вооружение в последние годы.
Специалист по спецэффектам Джон Гаэта, заставивший камеру огибать повисшую в воздухе Тринити, говорит, что вдохновлялся клипами Мишеля Гондри (такими, например, как Midnight Mover для группы Accept), у которого, как сейчас видно, еще в 80-е годы имелись отличные идеи насчет bullet time, но не было достаточной финансово-технической базы для их реализации. Братья Вачовски, которых похожий эффект привлек в анимационной «Акире», сошлись с Гаэтой на том, что потенциал технологии нуждается в раскрытии, сделали ставку на «полет пули» – и выиграли. А сегодня все то же самое доступно любому энтузиасту, наскребшему денег на 50 камер GoPro. Не верите – поройтесь в YouTube.
Цейтраферная съемка
Не только slow motion пленяет зрителей – на ускорение очень медленных процессов тоже бывает интересно посмотреть. Кадры со стремительно укатывающимся за горизонт солнцем, расцветающими бутонами или, пардон, ускоренно разлагающейся пищей (как в фильме «Господин Никто») сегодня встречаются во многих художественных и документальных лентах. Чтобы достичь такого эффекта, камера делает одиночные снимки движущегося объекта каждую секунду (либо каждую минуту, либо каждый час – в зависимости от того, какой темп процесса вам нужен), в результате получается «разогнанное» видео, на котором облака скользят по небу со скоростью курьерских поездов. Когда-то для цейтраферной съемки выпускались специальные кинокамеры, сегодня она отдана на откуп цифровым фотоаппаратам – в конце концов речь идет об анимированной серии фотографий, а не о видео как таковом. Цейтрафер (zeitraffer – от нем. слов «время» и «собирать»), бывший когда-то специальным устройством, в наши дни превратился просто в одну из автоматических функций фотокамеры.
Традиционно цейтраферная съемка делалась с помощью плотно закрепленной на одном месте кинокамеры. Но с годами прием эволюционировал: в новых фильмах часто можно наблюдать, что положение меняют не только снимаемые объекты, но одновременно с этим куда-то «плывет» и сама камера – такой себе «bullet time наоборот». Сам эффект этот, прозванный «таймлапсом» (англ. – time lapse), или, если по-русски, «интервальной съемкой», долгое врем считался уделом профессионалов. В наши дни он доступен не только обладателям продвинутых фотоаппаратов, но и простым пользователям с GoPro в кармане: в Сети можно встретить разнообразные советы на тему того, как с помощью напильника и суперклея превратить обычный заводной таймер во вращающуюся платформу для панорамных оборотов камеры в стиле time lapse. Главное, отправляясь в ближайший лес запечатлевать для YouTube рост опят или ползучую виноградную лозу, не забудьте запастись выносливыми аккумуляторами.
Транк-шот
Если вам нравятся фильмы Квентина Тарантино, наверняка в каждом из них вы видели «визитную карточку» режиссера – кадр, снятый из багажника автомобиля. Данный прием носит название trunk shot (от слова trunk – багажник), и он применялся кинематографами задолго до Тарантино: одно из первых его появлений замечено еще в нуаре Энтони Манна «Он бродил по ночам» (1948), также «транк-шот» успешно использовался в знаменитом детективе Ричарда Брукса «Хладнокровное убийство» (1967). Но Тарантино упорным трудом добился того, что trunk shot стал ассоциироваться именно с его киноработами. И поскольку все, чего касается Квентин, превращается в золото, после выхода «Бешеных псов» и «Криминального чтива» у подобного метода съемки сразу нашлась масса поклонников: сегодня транк-шоты можно встретить не только во многих кинофильмах, но и в сериалах, и в видеоклипах.
Считается, что сделать такой кадр довольно просто: если вы хотите снять сцену глазами человека, лежащего в багажнике, вам нужно просто засунуть туда оператора месте с камерой (на съемках «От заката до рассвета» Тарантино, выступавший на проекте сценаристом и актером, уговорил режиссера Роберта Родригеса попробовать, и тот, к счастью, туда поместился). Однако багажники часто бывают слишком тесными, а операторы чересчур длинноногими, поэтому им приходится идти на хитрость: снаружи снимать одну машину, а изнутри – совсем другую, убрав стенку багажника и задние сиденья и устроившись на полу внутри салона. Если подлог слишком заметен, но авторы обязательно хотят иметь в своем фильме «транк-шот» и в связи с этим готовы пустить по ветру энную сумму бюджетных средств, то задник машины вовсе отпиливается и снимается отдельно от нее, так что оператор может расположить камеру под любым углом. Желаете снять нечто подобное? Главное, не ставьте свое авто багажником к солнцу, не то получите лишь темные силуэты вместо тех, кто стоит у багажника (или просто снимайте нужную сцену после наступления темноты, как сделал Тарантино в первой части «Убить Билла»).
Эрроу-кам
В последние десятилетия в Голливуде вошли в моду высокие скорости. Неудивительно, что очень востребованным оказался спецэффект под названием «эрроу-кам» (arrow cam – «камера-стрела»), позволяющий зрителю проследить не только за натягиванием тетивы, но и за полетом стрелы до самого ее соприкосновения с целью. Как вариант, это может быть и полет пули, но принцип везде один и тот же: стремительное движение камеры навстречу объекту.
В качестве одного из ранних и самых известных примеров использования приема можно рассматривать ленту «Робин Гуд: Принц воров» (1991). Забавно, что изначально использованный в ней кадр с летящей стрелой предназначался только для трейлера, в первой монтажной сборке он отсутствовал – но зрителям находка так понравилась, что «полет стрелы» оперативно добавили в фильм перед самым выходом ленты в прокат. Для Голливуда это было откровение сродни «буллет-тайму» из «Матрицы» – в последующие годы кадр из «Робин Гуда» не пародировал только ленивый (достаточно вспомнить «Горячие головы 2», где была использована аналогичная техника съемки, только протагонист за неимением стрел зарядил лук… живой курицей). В 90-е годы стрела традиционно крепилась к объективу, так что наконечник торчал вперед, создавая иллюзию полета. Позже к кадру с приближающимся объектом стали добавлять еще один – со стрелком, от которого стремительно отдалялась камера. Прием прижился на Голливудских холмах: его можно увидеть в «Быстром и мертвом», «Спасти рядового Райана», «Перл-Харборе» (в последнем случае вместо стрелы была использована торпеда) и десятках других лент.
Сегодня, когда компьютерная анимация заняла в Голливуде главенствующее место, стрелы уже не крепят к камере, а пририсовывают к нужным кадрам после съемок, на постпродакшене (см., например, комическую сцену «Хоукай против Локи» во «Мстителях»), но сам способ съемки ускоренного движения остался прежним. В Голливуде его внедрил в конце 70-х годов изобретатель стабилизационной системы «Стэдикам» Гаррет Браун. До тех пор плавный кадр кинематографистам удавалось получить только на тех локациях, где можно было проложить рельсы для тележки. Во всех остальных случаях приходилось использовать ручную камеру, которая давала слишком тряскую картинку. Молодой оператор-экспериментатор Браун придумал систему противовесов, которая гасила все вибрации камеры и давала эффект плавного парения даже тогда, когда оператор бежал по пересеченной местности. Знаменитый кадр, в котором камера «летит» за Сильвестром Сталлоне вверх по ступенькам длинной лестницы в фильме «Рокки», стал лучшей рекламой для изобретения – и вскоре к Гаррету обратился продюсер Джордж Лукас, которому нужно было снять погоню на спидерах для шестого эпизода «Звездных войн». Как изобразить бреющий полет над лесными полянами? Для «Возвращения джедая» Гаррет снова напряг творческо-техническую мысль и оснастил свое устройство двумя дополнительными гироскопами. Локацией стал калифорнийский секвойный лес, на время съемок превратившийся в чащу Эндора. С камерой VistaVision, делающей один кадр в секунду, Браун прошел по запланированному маршруту, двигаясь со скоростью около 8 км/ч. Когда отснятый материал позже был разогнан до привычных глазу 24 кадров в секунду, создался эффект полета камеры со скоростью в 200 км/ч. По словам оператора, это было одно из самых трудных заданий в его карьере, «настоящая потогонка», поскольку для съемки трехминутной сцены потребовалось сделать несколько сотен дублей. Браун мог пройти полкилометра, стараясь не запутаться в тропинках, держа камеру на одном и том же расстоянии до земли и стараясь целиться в одну и ту же условную точку на уровне горизонта (корректирующие команды ему подавали два помощника), потом допустить маленькую ошибку, отвлекшись и вильнув камерой в сторону, и кадр был испорчен – все приходилось начинать заново. Пиротехнические эффекты, так же как и актеры, якобы едущие верхом на спидере, снимались отдельно и были добавлены в сцену уже на стадии постпродакшена. Результатом стала одна из самых захватывающих погонь в истории кинематографа.
Эффект быстрого скольжения быстро стал модным: годом позже Майкл Крайтон, снимавший фантастический экшен «Охоте на роботов», аналогичным способом изобразил полет самонаводящейся мини-ракеты. «Зарядить» камеру стрелой догадались лишь несколькими годами позже, но именно стрела в итоге дала название спецэффекту. А сегодня, когда в продаже появились дешевые «Стэдикамы», повторить этот трюк при определенной сноровке может любой желающий (можно, конечно, сделать еще проще и купить китайскую микрокамеру, которая легко крепится прямо на стрелу, но полученное таким образом изображение сильно проигрывает по эффектности брауновским наработкам). Вы готовы немного напрячься, снимая короткометражку с эффектом «эрроу-кама»? Тогда вперед!
Полностью адаптивный фон с использованием CSS
В этом руководстве мы в деталях изучим технологию создания респонсивного фонового изображения, которое будет занимать всю область просмотра в браузере при любом разрешении. И использовать мы будем CSS — свойство background-size . Без JavaScript :
Примеры использования адаптивных фоновых изображений
На сегодняшний день очень популярны сайты, в которых фоновое изображение покрывает всю отображаемую область страницы.
Ниже приведены некоторые из таких веб-сайтов:
Если вы хотите добиться схожей « внешности » в вашем проекте — вы на правильном пути.
Основные понятия
Вот план нашей игры.
Используем свойство background-size для покрытия всей области просмотра
CSS -свойство background-size может принимать значение cover . Значение cover предписывает браузеру автоматически и пропорционально масштабировать фоновое изображение по длине и ширине таким образом, чтобы оно оставалось равным, или же больше, чем ширина/высота области просмотра.
Используем медиа-запрос при получении уменьшенной версии фонового изображения для мобильных устройств
Для уменьшения времени загрузки страницы на маленьких разрешениях экрана мы будем использовать медиа-запрос, чтобы получить уменьшенную версию фоновой картинки. Но это не обязательно и можно опустить. Данная технология прекрасно работает и без этого.
Но все же использовать уменьшенные версии фона для мобильных устройств идея неплохая, и я объясню почему.
Изображение, которое будет использовано в примере, имеет размер около 5500 на 3600px .
С этим разрешением мы имеем в плюсе то, что добиваемся покрытия всей области просмотра на большинстве широкоформатных мониторов выпускаемых в настоящее время, но в минусе имеем размер изображения. Это около 1,7 Мб.
Оставлять такой объем для загрузки одного лишь фонового изображения не очень хорошая идея в любом случае, а в случае с мобильными устройствами это очень плохая идея. К тому же, подобное разрешение просто излишне на экранах с маленьким разрешением ( об этом я расскажу подробнее позже ).
HTML
Ниже показано все, что понадобится из разметки:
. Содержимое вашей страницы.
Мы назначим фоновое изображение элементу body и таким образом добьемся полного покрытия фоном.
Однако эта техника сработает на любом блочном элементе ( таком как div или form ). В случае если ширина-высота вашего блочного контейнера подвижна, фоновое изображение будет также менять размер, чтобы занять всю область контейнера.
CSS
Мы объявляем свойства элемента body следующим образом:
body < /* Местоположение фоновой картинки */ background-image: url(images/background-photo.jpg); /* Фоновое изображение выровнено по центру в горизонтальной и вертикальной плоскостях */ background-position: center center; /* Фон не повторяется */ background-repeat: no-repeat; /* Фон зафиксирован в области просмотра и потому не двигается, когда высота контента превышает высоту изображения */ background-attachment: fixed; /* Это свойство заставляет фон менять масштаб при изменении размеров содержащего его контейнера*/ background-size: cover; /* Цвет фона, который будет отображаться при загрузке фоновой картинки*/ background-color: #464646; >
Самое важное свойство-значение в этом списке:
background-size: cover;
Стоит заострить на нем внимание. Здесь и происходит чудо. Эта пара значения-свойства и дает указание браузеру на масштабирование фонового изображения в таких пропорциях, что высота-ширина будет оставаться равной или превышать высоту-ширину самого элемента. ( В нашем случае этот элемент — body .)
И тут возникает неприятная ситуация с парой свойство-значение. В случае, когда фоновое изображение будет иметь меньшее разрешение, чем размеры элемента body , а случиться это может либо при отображении страницы на экранах высокого разрешения, либо же когда у вас тонны контента на странице, — браузер будет растягивать изображение.
А как вы знаете, когда мы растягиваем изображение сверх его настоящего размера — мы теряем качество изображения ( другими словами появляется пикселизация ):
Когда изображение масштабируется в сторону увеличения родного размера — падает качество изображения .
Не забудьте об этом, когда будете подбирать фон. В демо-примере мы используем фото размером 5500 на 3600px для больших экранов, и потому в этом случае вряд ли произойдет нечто подобное.
Для того чтобы наш фон был выровнен по центру, мы объявили следующее:
background-position: center center;
Это установит масштабирующие оси в центр области просмотра.
Далее нам стоит разобраться с ситуацией, когда высота контента больше чем высота области просмотра. Когда подобное происходит — появляется скролл-бар.
Мы сделаем вот что. Установим свойство background-attachment в значение fixed , чтобы быть уверенными в том, что изображение останется на своем месте, даже если мы будем скролить страницу вниз:
background-attachment: fixed;
В демо пример я включил возможность « загрузить некий контент » для того, чтобы вы смогли пронаблюдать поведение фона при прокрутке страницы.
Все что вам остается сделать — скачать демо-пример и немного поэкспериментировать со свойствами позиционирования ( background-attachment и background-position ) чтобы увидеть, как они влияют на поведение страницы и фона при прокрутке.
Следующие значения свойств говорят сами за себя.
Краткая запись CSS
Выше, для наглядности, я определял CSS — свойства в полном виде.
А так выглядит краткая запись:
body
Все, что вам остается сделать, это сменить значение url на путь к вашей картинке.
Опционально: медиа-запрос на получение уменьшенной версии фоновой картинки
Для экранов с меньшим разрешением нам понадобится Photoshop для пропорционального уменьшения разрешения картинки до 768 на 505px . Также я пропустил ее через Smush.it для уменьшения размера файла. Это позволило уменьшить размер с 1741 до 114 килобайт. Это уменьшило объем файла на 93%.
Не поймите меня неправильно, но 114 килобайт это все равно довольно много для использования в некоторых видах веб-дизайна. И мы будем загружать эти 114 килобайт только в случае необходимости, потому как, смотря на статистику, следует находить компромиссы между дизайном для настольных и мобильных устройств.
А вот и сам медиа-запрос:
@media only screen and (max-width: 767px) < body < /* Здесь размер файла уменьшен на 93% чтобы увеличить скорость загрузки страницы с мобильных устройств */ background-image: url(images/background-photo-mobile-devices.jpg); >>
Ключевая часть медиа-запроса заключена в свойстве max-width: 767px , которое, в нашем случае, означает, что если область просмотра браузера больше чем 767px — используется большое изображение.
Минус этого способа состоит в том, что, если вы изменяете размер окна браузера, с, допустим, 1200px до 640px ( или наоборот ), вы увидите мерцающий экран, пока меньшее или большее изображение будет подгружаться.
И вдобавок, из-за того, что некоторые мобильные устройства могут работать в большем разрешении — к примеру, iPhone 5 с Retina -дисплеем разрешением в 1136 на 640px , меньшее изображение будет выглядеть некрасиво.
Заключение
Весь использованный в этом руководстве код вы можете взять с GitHub.
Если и можно что-то добавить на счет этой техники, то это следующее.
Используйте вышеописанное с осторожностью, потому как файлы большого размера могут повлиять на пользовательское взаимодействие, в особенности когда пользователь не имеет достаточно быстрого соединения с интернетом. И это еще одна причина, по которой стоит устанавливать корректный цвет фона, чтобы посетитель вашего сайта смог видеть содержимое еще до того, как фоновое изображение будет полностью загружено.
Оптимизируйте ваши картинки для Веб, прежде чем использовать.
Лицензия: общественное достояние
Если вы хотите использовать код из этой статьи в своих целях — нет необходимости спрашивать, можно ли это делать; весь код размещен как общественное достояние на основе CC0 1.0 Universal.
Исходный код в репозитории GitHub repo не защищен какими либо авторскими правами. Вы можете использовать, продавать, модифицировать и распространять исходный код. Запрос на это вам не нужен.
( Владельцем фоновой картинки я не являюсь. Она принадлежит Unsplash ).
В инстаграме появился эффект с заменой фона. И это лучшая новая маска
В начале мая пользователи твиттера начали писать о Green Screen, новом эффекте в приложении Instagram, который заменяет фон на картинку из библиотеки фотографий. Коротко рассказываем, почему это лучший новый эффект в приложении.
Как работает эффект
Маска оставляет в кадре только лицо и тело человека, а все остальное удаляет и заменяет на фотографию, видео или скриншот из библиотеки. Вероятно, лучше всего она будет работать с фронтальной камерой новых айфонов или любой другой камерой, у которой есть датчик глубины.
На самом деле, эффекты с заменой фона уже были в инстаграме и раньше — по запросу «Green Screen» приложение выдает множество загруженных пользователями масок. Но у них есть один большой недостаток — они сжимают растягивают картинку так, чтобы подогнать ее соотношение сторон до 9:16, то есть как в камере инстаграма. Конечно, это выглядит ужасно.