Виконувати свою роботу швидко стає не просто перевагою, а необхідністю. Адже чим більше крутих проєктів ти зробиш – тим більше клієнтів захоче з тобою співпрацювати. Але є одне “але”: поспішний процес часто призводить до помилок, які можуть погіршити якість роботи. Саме тут на допомогу приходить штучний інтелект, який пропонує безліч інструментів для оптимізації робочого процесу!
Наш Head of 3D Department Василь Дяченко розповів, як ШІ може допомогти в 3D моделюванні та які інструменти можна використовувати.
Як використання ШІ змінює хід гри?
Автоматизація рутинних завдань
Уяви, що у тебе є інструмент, який виконує всі повторювані одноманітні завдання, на які ти витрачаєш багато часу, як-от створення базових моделей, застосування текстур, налаштування освітлення… А ти тим часом можеш зосередитися на творчості та пошуку креативних рішень для твого проєкту! Чому б не дозволити ШІ виконувати рутинні завдання, звільнивши час для чогось більшого?
Це особливо корисно, якщо ти працюєш над, скажімо, серією прототипів продукту. І замість того, щоб годинами налаштовувати текстури та освітлення, за тебе це зробить ШІ та значно прискорить роботу.
Які базові завдання може виконувати ШІ?
По-перше, він може спростити процес розробки концептів та пошук референсів. Тут можна використати добре відомий Midjourney. Або ШІ, вбудований в Adobe Photoshop. Ці інструменти допомагають значно знизити час на пошуки референсів, які краще передають бачення фінального результату.
ШІ також може стати в пригоді, коли необхідно швидко розробити базову модель, з якою надалі можна буде працювати. Такі інструменти дозволяють побачити, яким буде об’єкт у 3D, з ними можна одразу отримати базову форму та правильний силует (наприклад, у персонажів).
Для цього можна використовувати сервіси ШІ, які конвертують зображення у 3D моделі*. Наприклад, MeshyAI або Alpha3D.
*Важливо пам’ятати, що такі моделі не мають якісної топології та вимагають значного доопрацювання та оптимізації під необхідні завдання.
Коли ми оптимізували модель, її необхідно пофарбувати. Для цього теж є ШІ інструменти, які значно прискорюють роботу. Наприклад такі, як аддон для Blender “Dream Texturing”. За запитом користувача він аналізує геометрію та генерує текстуру кольору для моделі. А якщо з текстурами (згенерованими, або власноруч розробленими) виникли проблеми – виправити їх допоможуть інструменти зі ШІ в Adobe Photoshop.
Також, ШІ-інструменти допомагають і з анімуванням. Так ми можемо зробити якісний мокап з відео та інтегрувати його у 3D середовище. Для анімування можна використовувати Rokoko Vision та DeepMotion.
Розумні пропозиції, точніші результати
Штучний інтелект може не лише виконувати якесь завдання, а й підказати, як покращити твою роботу теж. Розумні підказки допоможуть покращити геометрію, естетику та забезпечити структурну цілісність. Завдяки цьому, ти можеш швидше приймати обґрунтовані рішення й упевнено створювати бездоганні моделі!
Наприклад, коли ми працюємо над ідеєю або концепцією, то можемо звернутись за допомогою до ChatGPT, який може додати нам свіжих ідей або розширити наше бачення готового результату. Також ChatGPT може допомогти з генерацією промпту для інших нейромереж, які будуть генерувати зображення.
Створення ідеального вигляду
Текстури та матеріали можуть додати магії та довершеності навіть найпростішим 3D-моделям. Але створення текстур з нуля може бути кропіткою працею та займати багато часу. ШІ може перетворити ваші важливі дані на високоякісні текстури, які нададуть глибини та реалістичності вашим моделям – без численних проб і помилок.
Це буде особливо корисно, коли ти створюєш, наприклад, серію гіперреалістичних текстур для нової лінійки продуктів. Інструменти на основі ШІ можуть швидко й точно генерувати ці текстури, які не лише додадуть витонченості вашим проєктам, а й значно заощадять час, витрачений на налаштування кожної деталі.
Тут ми можемо використовувати утиліти зі ШІ в Abode Photoshop або генератори текстур на базі ШІ, які інсталюються з аддонами для Blender, наприклад Dream Texturing.
Швидка процедурна генерація
Коли мова йде про великомасштабні середовища або складні деталі, моделювання кожного елемента вручну займає багато часу. ШІ може процедурно генерувати ці елементи на основі ваших параметрів, створюючи складні деталізовані сцени швидше, ніж можна було б зробити це зробити вручну.
Уявімо, тобі треба розробити величезне середовище у відеогрі. Замість того, щоб відмальовувати кожне дерево, скелю чи інші предмети ландшафту, штучний інтелект виконує процедурну генерацію, створюючи наповнений деталізований світ, а ти зосереджуєшся на вдосконаленні історії та ігрового процесу!
У роботі з такими завданнями важливо розуміти, скільки часу можна приділити на окреме пропрацювання кожного компоненту (окремо скелі, окремо дерева тощо). Наприклад, Unreal Engine має ШІ-інструменти, які дозволяють генерувати усе й одразу, від ландшафту та річок до дерев та доріг.
Також, за допомогою ШІ можна пропрацювати кожен компонент окремо. У Photoshop генеруються окремо карти, де будуть розміщуватись об’єкти на рівні (наприклад, карта висот для гір та перепадів землі на ігровому рівні). Потім декілька таких карт, кожна з яких відповідає певну частину генерованих ассетів, можна накласти одна на одну для отримання цікавішого результату.
Але варто пам’ятати, що одного лише гарного ландшафту замало. На кожній локації мають бути точки інтересу та головні об’єкти, на які звертає увагу гравець або глядач. Локації мало бути просто гарною, вона має бути цікавою, а це ШІ самостійно робити поки не може 😉
Тож, який висновок ми можемо зробити?
За допомогою штучного інтелекту ми можемо досягати кращих результатів швидше. Автоматизуючи рутинні завдання, ШІ дозволяє зосередитися на важливому – створенні надзвичайних 3D-моделей, які нікого не залишать байдужим 🙂
Унікальний мобільний застосунок на основі ШІ, який допомагає користувачам перевіряти безпечність косметичних засобів та створювати нові. Це проєкт, у якому програмування та математика межує з хімією, а штучний інтелект поєднується з науковими дослідженнями!
З появою тисяч різноманітних продуктів косметики дуже легко заплутатися, який з них найкраще відповідає твоїм потребам. Тому до нас звернувся клієнт з ідеєю створити платформу із застосуванням штучного інтелекту.
Мета застосунку полягає в тому, щоб дозволити користувачам легко знаходити безпечні косметичні продукти для догляду за шкірою, враховуючи індивідуальні потреби людини.
Основною ідеєю було використовувати технологію штучного інтелекту для обробки наукових досліджень, щоб перевіряти склад кожного косметичного продукту на вміст токсичних або небезпечних інгредієнтів і створити перевірені посібники з безпеки, які будуть доступні користувачам.
Як це працює:
Користувач/-ка заповнює анкету при реєстрації.
ШІ аналізує та підбирає персоналізовані рекомендації з догляду за шкірою, на основі персональних критеріїв, які вказали користувачі
ШІ, опрацювавши наукові дослідження, перевіряє косметичні продукти на вміст токсичних чи небезпечних інгредієнтів
Користувач/-ка отримує науково обґрунтовану добірку екологічно чистих інгредієнтів та продуктів, які ідеально підходять йому/їй
Застосунок допомагає обирати екологічно чисті продукти для догляду, відповідно до віку, унікального типу шкіри, потреб та способу життя. Також дозволяє користувачам перевіряти рецептури продуктів на безпечність. А система рекомендацій підбирає персоналізовані поради з догляду за шкірою, на основі індивідуальних критеріїв кожного користувача чи користувачки.
Перевіряючи рецептуру та обираючи той чи інший складник косметичної формули, користувачі зможуть побачити його властивості, аналоги, токсичність тощо. Крім цього, засоби можна порівнювати між собою.
Переваги застосунку:
Персоналізованість: Система рекомендацій будується індивідуально до кожного користувача
Великий каталог інгредієнтів: Проаналізовано понад 800 000 інгредієнтів, що дозволяє користувачам підібрати той, що найкраще підходить саме їхній шкірі.
Оцінка продуктів: На основі опрацьованих наукових досліджень застосунок може оцінювати косметичні продукти на безпечність та екологічність
Трохи статистики:
На сьогодні додаток проаналізував понад 45 000 продуктів Перевірив 200 000+ формул Створив 100 000+ каталогів інгредієнтів Проаналізував 21 000+ джерел наукових досліджень
Grow – це внутрішня система кар’єрного зростання, яка дає змогу чітко розділити знання кожного колеги по рівнях. Тут можна ставити цілі для розвитку, фіксувати свої досягнення та подавати запит на рев’ю тоді, коли ти до цього готовий.
Ідея створення системи, яка могла б чітко розділити знання кожного колеги на рівні з можливістю зростати, з’явилася в нашого Head of Node.JS Department Валерія два роки тому. Спершу це була одна велика таблиця Exel, в якій були прописані рівні підготовки та перелік питань, відповіді на які мали знати колеги.
“Сенс був у тому, щоб показати людям що вони повинні мати певні знання на певний рівень. Дуже часто розробник може сидіти на одному проєкті багато років і не розуміти, наскільки він значущий на ринку ІТ. Тож, для того, щоб він відчував себе в потоці та чітко розумів, які знання має, була зроблена така стандартизація, – розповів Валерій.
Спершу цю систему Валерій впровадив у своєму Node.JS департаменті.
“Я виокремив питання для кожного рівня та записував їх до таблиці. Коли в когось із мого департаменту наближалася дата рев’ю, я переглядав який в нього рівень та на який він претендує зараз. Зважаючи на це, ставив питання з таблички. Це значно спрощувало процес рев’ю, оскільки я відразу бачив прогрес мого колеги. Чи “виріс” він з моменту попереднього перегляду та чи готовий до наступного рівня”.
Пізніше з’явилася необхідність це автоматизувати, а відтак і запропонувати формат іншим департаментам нашої компанії. Його ідею підтримала наша Executive Team, роботу підхопили розробники з його департаменту й почали розробляти майбутню систему “Grow”
“Головна ідея “Grow” – дати можливість кожному самостійно керувати своїм рев’ю. Подавати запит на перегляд свого рівня знань та зарплати тоді, коли ти до цього готовий, а не чекати дату, яку визначив твій керівник. Також планувалося, щоб у цій системі можна було створити свого персонажа та “прокачувати” його, як у грі. Ти здобуваєш знання, виконуєш завдання та отримуєш за це нові рівні та нагороди”.
Функціонал “Grow” для керівників департаментів дозволяє самому створювати рівні, наповнювати їх, слідкувати за прогресом колег у команді та отримувати від них запити на рев’ю. Розробники ж можуть керувати своїми завданнями: задавати їм статус виконання, залишати коментарі тощо; а також керувати своїм персонажем: слідкувати за його прогресом, рівнями та навичками.
Також є календар подій, щоб завжди бути в курсі нових конференцій, MeetUp-ів та інших технічних подій; та сторінка з технічними статтями й новинами з різних технологій.
“Кожен Head of Departament може налаштувати RSS-посилання для своїх відділів. Команда може в будь-який момент почитати свіжі статті, новини й усе, що відбувається у світі, з їхньої технології”.
Зараз команда імплементує оновлену сторінку навичок, яка має на меті слідкувати не лише за загальним прогресом, а й за специфічними навичками.
“Зараз детальніше працюємо над сторінкою навичок. Адже крім базових знань є вузькоспеціалізовані, для вивчення яких треба більше часу, до прикладу, знання якоїсь payment системи. Тому ми створюємо сторінку, яка матиме вигляд бджолиних стільників з усіма специфічними навичками: загальними та конкретними. До прикладу, ти засвоїв Angular 10: на сторінці навичок ти маєш позначити знання Angular 10, як вивчене. Це підтверджує твій техлід або голова департаменту, після чого навичка тобі присвоюється й виводиться на “стільники навичок”. Так вибудовується прогрес кожного колеги. Далі усі вивчені скіли будуть підсвічуватися, для легкої навігації розробника та його техліда в майбутньому.
Оскільки вся робота відбувається у вільний від комерційних проєктів час, можна сказати, що “Grow” росте разом з нами, – сміється Валерій, – допомагають також правки від колег, котрі вже користуються ним. Звісно, всі помилки виправляються не так швидко, як того хотілося б, але все ж головну свою функцію система виконує добре – полегшує процес рев’ю та кар’єрний розвиток колег”.
Розповідаємо, як створювався та розвивався єдиний онлайн-довідник перейменування вулиць Кропивницького, написаний одним розробником!
Для Onix-Systems Rename.kr.ua – внутрішній некомерційний проєкт. На момент старту над ним працювала невелика команда:
Богдан Стасюк – співавтор ідеї, підготовка інформації про перейменування
Дмитро Дурач – співавтор ідеї, моральна підтримка проєкту
Максим Сінченко – підготовка інформації про вулиці
Сергій Холін – менеджмент
Костянтин Алтухов – розробка
Костянтин Свідзінський – дизайн.
Однією з ідей проєкту є відкритість даних. Рушій сайту є в загальному доступі, його можна скопіювати та створити такий проєкт для свого міста. Також на сайті є API, до якого можна звернутися й отримати всі ці перейменування у вигляді JSON файлу, щоб за потреби використовувати їх в інших сервісах.
Як усе було
Історія створення сайту Rename.kr.ua почалася, відколи в Україні стартували процеси декомунізації. По ходу розгортання перейменувань вулиць та об’єктів міської географії, ставало дедалі важче слідкувати за змінами. Водночас картографічні сервіси теж не встигали відстежувати й вірно показувати назви вулиць чи знаходити потрібні адреси.
Першими, хто зрозумів, що потрібно створити такий онлайн-довідник, стали дніпряни. Вони створили сайт Rename.dp.ua, після того, як 2015 році міська влада прийняла рішення перейменувати одразу понад триста топонімічних об’єктів за кілька днів.
На той час у ще Кіровограді цей процес лише розпочинався. Тому Богдан Стасюк, котрий захоплювався краєзнавством, спільно з Дмитром Дурачем, CEO Onix-Systems, вирішили створити подібний сервіс для нашого міста.
Дмитро познайомив Богдана із Сергієм Холіним, COO Onix-Systems, який взяв на себе обов’язки менеджера цього проєкту. Богдан Стасюк забезпечував контент. У цьому йому допомагав Максим Сінченко, котрий, за його словами, робив наймаруднішу роботу – шукав інформацію про тих, на честь кого були перейменовані вулиці. Розробкою займався Костянтин Алтухов, дизайном – Костянтин Свідзінський.
24 лютого 2016 року створили репозиторій та почали роботу над сайтом. Розробка зайняла один місяць, – розповів Сергій Холін, – на той момент компанія була набагато меншою, тому наших двох Костянтинів розділяло буквально кілька столів.
Оскільки сайт є довідником і становить собою один великий список, його треба було візуально “полегшити”, – пояснив Максим Каменщиков, Арт Директор Onix, – В UI-дизайні цього вдалося досягнути за допомогою кольорів та шрифтів, а також додавши “повітря” між елементами. З боку UX вирішили додати пошук та алфавітний порядок, щоб людина, котра не пам’ятає повної назви вулиці, могла вказати лише першу літеру й швидко знайти потрібну адресу. Головним для цього сайту було два критерії: зручність споживання такого контенту й відтворення атмосфери Кропивницького.
Rename.kr.ua 2.0
Велика хвиля декомунізації вулиць тривала близько півтора року. Весь цей час сайт активно наповнювався та мав популярність у містян. Коли процес перейменувань сповільнився, сайт існував сам собою. Лише інколи виникала потреба в підтримці.
Та на початку 2022 року сайт отримав друге дихання. В місті почалася нова масова хвиля перейменувань.
Я це добре пам’ятаю, – сказав Володимир Гордієнко, Head of PHP Department, – у середині лютого 2022 року до мене звернувся Сергій Холін та розповів про Rename.kr.ua і про те, що він потребує нашої підтримки. Ми зрозуміли, що технічно сайт застарів і працював не так швидко, як того хотілося б, також він був незручним в адмініструванні. Тому ми вирішили повністю перебудувати його з нуля.
Ми обрали чудову технологію – PHP/Swoole, побудували новий бекенд та запровадили сучасні системи деплою. Словом, полегшили роботу розробників. А вже потім додали “адмінку”, онлайн-мапу, систему зворотного зв’язку та інші фічі, – розповів Володимир.
Зараз онлайн-довідник перейменування вулиць Кропивницького стабільно приймає близько ста користувачів на день та перебуває під наглядом розробника Володимира Міхава, котрий відповідальний за всі некомерційні проєкти у відділі PHP.