heyphoto - это удивительный инструмент, позволяющий вам трансформировать свои фотографии в соответствии с вашими желаниями. С ним вы сможете изменить направление взгляда, форму носа, макияж, состояние кожи, возраст, эмоции и многие другие параметры вашего лица.
Основные возможности heyphoto:
Изменение внешности: С heyphoto вы можете преобразить свой облик на фотографиях. Выбирайте любые параметры, которые хотите изменить, и смотрите, как ваше лицо трансформируется перед вашими глазами.
Легкость использования: Этот инструмент имеет простой и интуитивный интерфейс, что делает его доступным для пользователей с разным уровнем опыта. Процесс редактирования становится простым и увлекательным.
Множество возможностей: heyphoto предлагает множество параметров для редактирования, что позволяет вам создавать уникальные и креативные фотографии.
Подписка: Некоторые продвинутые функции heyphoto могут потребовать платной подписки, но базовые возможности доступны без дополнительных затрат.
С heyphoto, вы сможете создавать фотографии, которые соответствуют вашим желаниям и позволяют выразить себя. Трансформируйте свои изображения и делайте их по-настоящему уникальными.
Кстати, мы сделали бесплатного тг-бота для генерации изображений и бесплатный гайд по генерациям изображений - ПОПРОБУЙТЕ
Иногда вам может потребоваться преобразовать растровые изображения в векторные, и Vectorizer.AI - идеальный инструмент для этой задачи. Это приложение предоставляет бесплатный доступ во время бета-тестирования и не требует VPN.
1. Преобразование Растровых Изображений в Векторы:Vectorizer.AI позволяет вам быстро и легко конвертировать растровые изображения в векторные форматы, такие как SVG. Это открывает новые возможности для редактирования и использования ваших изображений.
2. Простота и Удобство: Использование Vectorizer.AI просто и удобно. Вам нужно всего лишь загрузить свое растровое изображение в приложение, и оно автоматически выполнит конвертацию в вектор.
3. Бесплатно во время бета-тестирования:Vectorizer.AI доступен бесплатно во время бета-тестирования, что делает его доступным для всех желающих.
Vectorizer.AI - это мощный инструмент для тех, кто работает с изображениями и хочет получить больше возможностей для их редактирования и использования. Преобразуйте ваши растровые изображения в векторы быстро и легко с этим удобным онлайн-инструментом.
Кстати, мы сделали бесплатного тг-бота для генерации изображений и бесплатный гайд по генерациям изображений - ПОПРОБУЙТЕ
Designs.ai - это многофункциональная платформа, которая позволяет создавать короткие видеоролики с озвучкой. Этот инструмент идеально подходит для создания качественных видео-контентов для различных целей, включая маркетинг, обучение и развлечение.
Основные функции:
Создание видео с озвучкой:Designs.ai позволяет вам быстро и легко создавать видеоролики с закадровой озвучкой, при этом текст видео остается простым и легким для восприятия.
Разнообразные форматы: Платформа поддерживает разнообразные форматы видео, что делает ее универсальным инструментом для разных целей.
Мультиязычность:Designs.ai поддерживает несколько языков, включая русский, что делает ее доступной для глобальной аудитории.
Настройка: Вы можете выбрать тематику вашего видеоролика, а также закадровый голос, что позволяет создать видеоконтент, наиболее подходящий для вашей аудитории.
Редактирование: Возможность отредактировать готовый результат, включая замену кадров, добавление переходов и загрузку собственных изображений.
Стоимость:
Designs.ai предоставляет разнообразные тарифы, начиная от $29 в месяц, существует также бесплатная пробная версия.
Помимо создания видеороликов, Designs.ai предлагает множество других опций, включая инструменты для дизайнеров, конвертер текста в речь, и программу для копирайтинга. Здесь также доступны множество шаблонов и бесплатный фотосток. Designs.ai - это всеобъемлющий инструмент для создания видеоконтента с высоким качеством.
Кстати, мы сделали бесплатного тг-бота для генерации изображений и бесплатный гайд по генерациям изображений - ПОПРОБУЙТЕ
В ZBrush есть много параметров, с помощью которых её можно настроить под себя. Обычно они настраиваются в процессе работы в ZBrush, но есть параметры, которые стоит изменить сразу. Расскажем о них в статье.
Запуск домашней страницы
Когда вы впервые запустите ZBrush, у вас откроется домашняя страница (Home Page) — дополнительное окно с новостями программы. При следующих запусках окно продолжит появляться. Убрать его запуск полностью нельзя, но можно настроить так, чтобы окно запускалось только при наличии новых новостей.
Для этого нажмите на шестерёнку в самом окне и в появившемся меню выберите show if news updated:
Автоматический запуск LightBox
Помимо домашней страниц, при каждом запуске у вас будет открываться LightBox — окно с папками, в которых находятся кисти, материалы, меши и другие элементы программы. Вы вряд ли будете использовать его каждый раз, поэтому запуск можно отключить. Для этого вверху программы выберите Preferences → LightBox и нажмите Open At Launch, чтобы кнопка перестала гореть.
Теперь сохраните настройки: Preferences → Config → Store Config
Чтобы открыть окно, когда оно вам понадобится, нажмите на соответствующую кнопку вверху слева:
Открытие нескольких панелей одновременно
По умолчанию в ZBrush можно открыть только одну панель. Если открыть ещё одну, первая закроется. Открыть несколько панелей можно 2 способами:
Зажать Shift
Когда у вас открыта одна панель и вы хотите открыть вторую, зажмите Shift при клике на вторую панель.
Изменить настройки
При этом способе несколько панелей будут открываться без дополнительных действий.
Для этого зайдите в Preferences → Interface → Palettes, отожмите кнопку One Open Subpalette и сохраните настройки.
Настройка рабочей области
Размер и цвет рабочей области в ZBrush можно настроить, и лучше это сделать с самого начала.
Зайдите в Document в верхней части программы, выберите нужный цвет и настройте размер у показателей Width и Height. Если у вас есть градиент и вы хотите его убрать, поставьте показатель Range на 0.
После этого нажмите кнопку Save As Startup Doc выше, чтобы сохранить новый вид рабочей области.
Уменьшение количества автосейвов
В процессе работы ZBrush будет делать быстрые сохранения. Это удобно, но есть свои минусы.
Автосохранения весят много, а ZBrush не удаляет их. Сами сохранения могут быть частыми, и память вашего компьютера может быстро забиться.
Чтобы избежать этого, можно уменьшить количество автосохранений. Для этого зайдите в Preferences → QuickSave и в Max QuickSave Files поставьте своё число. Ниже есть кнопка Delete QuickSave files, с помощью которой автосохранения можно удалить. После внесения изменений сохраните настройки.
На первое время этого будет достаточно. Позже вы, возможно, захотите изменить расположение кнопок и кастомизировать интерфейс. Как это сделать мы рассказывали в этой статье.
Уже давно настала эра WYSIWYG - редакторов текстов, и при написании наших веб проектов мы конечно же стараемся их использовать по максимуму.
Один из таких редакторов ну просто с сумасшедше-огромной функциональностью - это небезызвестный CKEditor, который недавно (шучу, давно уже) зарелизился замечательной 5-й версией.
Ее мы сегодня и будем импортировать в наш проект на Laravel 10. Скриншотик (и пасхалочка, кто знает тот поймет) внизу.
И активировать его на textarea через ClassicEditor.create().
Но есть нюанс.... что если авторы решат уйти из РФ и ограничит доступ? Или же РКН решит что "ты не пройдешь!" и ... ты не пройдешь. Нужно любить всех своих пользователей, а не заставлять их расчехлять VPN потому что на сайте не работает редактор.
Да и мы ведь серьезный проект пишем! Нам нужно свое! Да еще и желательно с кастомным билдом под наши задачи!
По этому мы пойдем по второму пути - сложному, который делится еще на два.
Назовем их "следовать инструкциям" и "догадаться самим".
Но перед тем как начать - нам нужно собрать кастомный билд с нужными нами модулями и настройками. Что можно спокойно сделать на сайте. Я использовал билд на базе ClassicEditor, выбрал нужные мне модули в том числе и модуль watchdog на будущее (сейчас активировать его в коде я его конечно-же не буду). В общем, качаем билд и распаковываем его в "Новая папка (3)" на рабочке. Он нам понадобится, но несколько позже.
Распакованный архив с кастомным билдом
Следуем инструкциям.
По инструкции на сайте мы берем скачанный билд, копируем его в папку с проектом в директорию public\assets\ckeditor5, импортируем .js файл в blade шаблон и так-же активируем его через EditorWatchdog() или CreateEditor(). Легко и просто, и в принципе все гайды в интернете по интеграции в Laravel пишут нам что так делать правильно.
Но нас то не обманешь! У нас серьезный проект! И ведь действительно, вдруг нам потом понадобится модуль, который мы не добавили в наш билд? Пересобирать заново? Да ну его! По этому мы пойдем своим путем! Поехали!
Догадываемся сами
К нашему счастью в Laravel встроен замечательнейший инструмент под названием Node.js, который мы и будем использовать. И не только его.
Установка
Идем консолькой в папку с нашим проектом и запускаем (не забудь включить vpn)
Сразу нам устанавливается множество зависимостей, однако наш любимый Laravel 10 этот модуль сразу не увидит. Для того чтобы это исправить нам нужно сделать еще кое-что. Поехали интегрировать.
Интеграция
Нам нужно чтобы наш Laravel увидел CKEditor, да собирал его под наши нужды "на лету". Для этого мы будем использовать vite, благо он идет в составе Laravel. У авторов CKEditor для него есть отдельный модуль с названием @ckeditor/vite-plugin-ckeditor5, его и будем использовать. Также нам понадобится модуль @ckeditor/ckeditor5-theme-lark.
Далее ищем в корне нашего проекта файл vite.config.js и вносим в него следующие строки как показано на скриншоте (слева - старый файл, справа - внесенные изменения)
Помните ту конфигурацию, что мы делали на сайте CKE? Она то нам сейчас и понадобится.
Открываем Новую папку (3) и в подпапке src находим файл ckeditor.ts. Это файл с настройками нашего билда. Копируем его в папку с проектом, в директорию resources/js. Также из папки samples копируем style.css в resources/css. И дополнительно создаем файлик editor.js - его мы и будем встраивать в наш шаблон.
Содержимое editor.js
import ClassicEditor from './ckeditor';
ClassicEditor.Editor // Note that you do not have to specify the plugin and toolbar configuration — using defaults from the build. .create( document.querySelector( '#editor' ), { language: 'ru', removePlugins: [ 'MediaEmbedToolbar' ] }) .then( editor => { console.log( 'Editor was initialized', editor ); } ) .catch( error => { console.error( error.stack ); } );
Для наблюдательных - я специально не использовал watchdog здесь. Импортировать его я планирую потом.
Дальше нам нужно загрузить недостающие модули.
Открываем редактором ckeditor.ts и видим вверху множество импортов.
Открываем папку "node_modules/@ckeditor" внутри проекта и ищем недостающие модули. Если такие есть - устанавливаем их через npm install --save %имя_модуля%.
В дальнейшем есть шанс получить следующую ошибку от TailWindCSS (при запуске npm run dev)
[vite:css] Nested CSS was detected, but CSS nesting has not been configured correctly.Please enable a CSS nesting plugin *before* Tailwind in your configuration.
Она вызывается из-за того, что мы используем кастомный css для ckeditor
Чтобы этого не происходило, нам необходимо в файле postcss.config.js в корне нашего проекта добавить следующие строки:
'postcss-import': {}, 'tailwindcss/nesting': {},
как на скриншоте
postcss.config.js
Почти все
Нам осталось только в нашем шаблоне между тегов <head> добавить
И теперь любой <div> или <textarea> с указанием id="editor" будет вызван с редактором CKEditor5.
Запускаем проект через npm run dev и радуемся полученному результату!
Результат
Результат
А Вы заметили пасхалочку на скриншоте?
Все что вам осталось - это настроить дизайн редактора в css файле.
Ну и как-же без ложки дегтя - почему-то конфигурация "language: ru" не срабатывает и редактор остается английским. Возможно не хватает какого-то модуля или же что-то необходимо донастроить. Пока еще не разобрался, но в целом на данном этапе разработки это не сильно критично. Если у Вас есть идеи - welcome!
Update: С языком разобрался. Действительно его необходимо было имортировать. Для этого в ckeditor.ts необходимо вставить строку после импорта { ClassicEditor }
Update2: Также нашел проблему при вставке видео с внешнего источника, например Youtube. В редакторе оно вставляется, а вот в пост не переносится. Лечится доп конфигом там-же в ckeditor.ts в секцию defaultConfig
mediaEmbed: { previewsInData: true }
Исправленная локализация
Надеюсь что данный гайд поможет Вам в проектах.
Если вы хотите немного потрындеть, или быть может знаете Laravel или например умеете верстать, ну или просто у вас есть желание как-нибудь помочь с разработкой проекта, милости прошу в мою потрынделку.
В кратце - да, старый добрый, с блекджеком и шлюпками.
«Чат на чат» — новое развлекательное шоу RUTUBE. В нем два известных гостя соревнуются, у кого смешнее друзья. Звезды создают групповые чаты с близкими людьми и в каждом раунде присылают им забавные челленджи и задания. Команда, которая окажется креативнее, побеждает.
Сейчас фиксированная камера это дешёвое и стильное решение для инди-проектов и особенно хорроров. Но вообще-то у неё большая и интересная история — мы рассказали её в ролике «Как неудобная камера меняла игры», посмотрите, если ещё не.
А в этом гайде мы расскажем, как сделать фиксированную камеру в Unreal Engine 5 с помощью блюпринтов. И чтобы приблизить ситуацию к реальной игре, камеру сделаем с двумя условиями:
Камера должна переходить из третьего лица в фиксированный угол и наоборот — такое решение чаще встречается в современных АА-играх, а значит будет полезнее, если вы захотите идти в геймдев
Камера должна подсвечивать фокусную точку. Это поможет вам освоить ключевое преимущество фиксированной камеры — возможность делать правильные акценты на объектах.
Создаём проект
Зайдите во вкладку Games, выберите шаблон Third Person и создайте проект
Выберите шаблон Third Person и создайте проект. Если не планируете серьёзный проект или экспериментируете, выбирайте Blueprint — в ином случае С++
Content Browser не пригодится — его можете скрыть. Чтобы поставить паузу, используйте клавишу ESC.
Создание фокусной точки
Фокусная точка сцены — импровизированная статуя. Выделили для наглядности
С помощью фиксированной камеры можно легко и наглядно делать акценты на главных объектах сцены, делая из них фокусные точки. Давайте создадим подобную фокусную точку — у нас это будет статуя.
Хоткеи: Q — выделить; W — двигать; E — вращать; R — менять размер
Хоткеи: Q — выделить; W — двигать; E — вращать; R — менять размер
Один из стартовых объектов на сцене похож на пьедестал. Он состоит из четырёх элементов. Выделите их, объедините командой Ctrl + G в одну группу и перенесите.
Увеличьте размер объекта, потянув стрелку нужной оси.
Перенесите маленький подъём, который видно на гифке, и измените его размер аналогичным образом.
Чтобы повернуть, активируйте Rotate Tool, нажав на английскую клавишу E.
Для самой статуи выберите меш из Content Drawer в левом нижнем углу. Путь к нужной папке: All → Content → Characters → Mannequens → Meshes. Понравившийся перенесите на нужное место.
Поза не важна. Главное увеличьте статую так, как увеличивали пьедестал: через скейл, вытягивая по размеру мышкой.
Смена материала
Мы решили сменить металлический материал статуи на каменный. Если хотите, можете сделать так же.
Для этого нажмите на объект, потом вкладку Details и подменю Materials. Аналог камня — SimpleBuldge, чтобы его найти — введите название в поиск.
Мы применили каменный материал сразу к статуе, пьедесталу и подъёму.
По инструкции для статуи можно поменять материал любого другого объекта
Добавляем камеру и триггер
Вам нужны Camera Actor и триггер-коллизия. Первая и будет нашей фиксированной камерой, а вторая будет активировать сегмент с камерой в определённом месте.
Экспериментируйте с расположением камеры, чтобы получить интересный и неочевидный результат
В меню Place Actors найдите Camera Actor и поставьте её в нужное место.
Нажмите правой кнопкой по камере и в выпавшем меню выберите Pilot Camera Actor. Вручную обозначьте область, которую она будет захватывать, используя кнопки W, A, S, D и мышку.
Выйдите из режима настройки камеры.
Прямоугольная форма коллизии — самая распространённая и удобная для триггера событий
Далее во вкладке Place Actors введите в поисковик Collision и выберите Collision Box. Его размер — это угол обзора, который будет показывать фиксированная камера.
Добавляем логику переключения камеры
Первое — откройте Level Blueprint
Референс в блюпринт и для камеры и для коллизии делается одинаково
Первый шаг в Level Blueprint должен выглядеть так
Чтобы создать логику переключения и простые анимации, сначала создайте референсы объектов: камеры и коллизии.
Откройте Level Blueprint. Его расположение отмечено на скриншоте:
Нажмите ЛКМ по коллизии и ПКМ в окне блюпринта и выберите Create a Reference to (...)
Для триггер-бокса и для камеры действия идентичны.
Чтобы вызвать поисковик нод, кликните ПКМ по свободному месту в окне Level Blueprint.
Нужные ноды легче всего добавлять через поисковик
Второй шаг в Level Blueprint
Добавьте Event BeginPlay и Overlap для коллизии и соедините их.
Для этого нажмите ПКМ по свободному месту и найдите Event BeginPlay. Потяните мышкой от референса TriggerBox — у вас появится поиск. Найдите Assign On Actor Begin Overlap и добавьте, также с ним появится ещё нода OnActorBeginOverlap_Event. От Event BeginPlay протяните линк к Bind Event to on Actor Begin Overlap — от белой стрелке к белой стрелке.
Всего два действия: нашли, соединили
Третий шаг в Level Blueprint
Теперь добавьте окончание ивента.
Снова потяните мышкой от ноды TriggerBox, найдите Assign On Actor End Overlap и соедините его с Bind Event to on Actor Begin Overlap. Для этого потяните от (...) Begin Overlap линк от белой стрелке к белой стрелке.
Создание входной анимации и новые элементы добавления скрипта
Добавьте в скрипт персонажа. Фактически это и станет анимацией, которая будет воспроизводиться в начале.
Кликните ПКМ по пустому месту, в поисковике выберите Get Player Controller. Протяните линк от него и в меню найдите Set View Target With Blend.
OnActorBeginOverlap_Event свяжите с Set View Target With Blend от белой стрелки к белой стрелке.
Camera Actor свяжите с функцией New View Target ноды Set View (...). Потом на ней выставите Blend Time в секундах. У нас это 1,0, вы можете экспериментировать со значениями.
В конце гифки видно самое важное — компиляцию скрипта и сохранение, не забывайте об этих двух пунктах
Новые элементы выхода из камеры
Теперь сделаем выход из камеры.
Скопируйте через CTRL+V три ноды: Get Player Controler, Set View Target With Blend и CameraActor и вставьте их в пустое место.
От (...) End Overlap сделайте линк к Set View Target With Blend.
Camera Actor замените на Get Player Character и отправьте его к функции New View Target на соседнюю ноду Set View (...).
Установите Blend Time чуть меньше, чем был до этого. Мы поставили 0,5 секунд.