+
Вход

Въведи своя e-mail и парола за вход, ако вече имаш създаден профил в DEV.BG/Jobs

Забравена парола?
+
Създай своя профил в DEV.BG/Jobs

За да потвърдите, че не сте робот, моля отговорете на въпроса, като попълните празното поле:

108-53 =
+
Забравена парола

Въведи своя e-mail и ще ти изпратим твоята парола

Мост между креативността и кода: Хората зад land-based игрите на Amusnet

Текстът е предоставен от Amusnet

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

Зад успеха на компанията стои екип от над 850 експерти в различни направления, които ежедневно разширяват портфолиото. Днес то включва над 300 класически и съвременни казино игри, достъпни на повече от 2000 операторски платформи по целия свят.

За DEV.BG Васил Захариев, Front-End Software Engineer, и Никола Къкрински, Manager Art Team в Amusnet, разказват как трансформират креативността в код и как заедно вдъхват живот на land-based игрите на компанията. В разговора се включват още Есин Якуб и Илиян Киряков, които са на позицията Software Engineering Manager, както и Калоян Стоянков, Head of Land-Based R&D Division.


Никола, как постигате баланс между визуалното въздействие и оптимизацията на производителността, когато работите в среди с ограничен хардуер?

Всеки визуален елемент преминава през етапи на анализ и планиране, като използваме комбинация от техники според нуждите на продукта – различни утвърдени софтуери, както и вътрешно разработени практики.

Например Figma е използвана за концептуално споделяне, брейнсторминг и UI/UX дизайн, докато с Photoshop създаваме растерни изображения. В Illustrator работим с векторни елементи, текстури и pattern-и, които интегрираме в различни формати. 

За грабващи и реалистични ефекти използваме Adobe After Effects, и когато е необходимо – Element 3D и Blender за 3D елементи. Завършеният продукт се анимира и оптимизира в Spine 2D и се имплементира във Front-end-a.

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

Днес те питаме…

Колко дни платен годишен отпуск са реално нужни, за да се избегне бърнаут в IT сферата?
Loading ... Loading …

Васил, каква роля играят техническите ограничения (например памет, GPU performance) при вземането на решения, когато работите с художествени ресурси?

Бих казал – основна. Ограничения като памет и натоварване на видеокартата ни карат внимателно да балансираме между артистичната стойност и производителността.

Например трябва да подсигурим непрекъсната и гладка работа на машината без рестарти, което се оказа предизвикателство. Проучихме и открихме, че можем да разширим инструмент за Pixi.JS с функционалност за засичане на memory leaks.

Такъв изследователски подход е интересен аспект от работата ни, тъй като част от tech stack-a ни е популярен в по-нишови индустрии като gaming, filmmaking и advertising. Съответно не всеки проблем, който срещаме, е толкова добре документиран, и вече разрешен в Stack Overflow. Но за сметка на това библиотеките са open-sourced, което ни позволява да се запознаем подробно с технологията и логически да достигнем до нужните решения, вместо да ги получаваме наготово.

Какво е най-важно в колаборацията ви, за да гарантирате, че UI елементите са не само функционални, но и естетически в синхрон с цялостния дизайн на играта?

Никола: За всяко задание за изработка на визуален елемент, функционалност или модул правим дискусии с Front-end екипа. Обсъждаме и анализираме всички аспекти на разработката и интеграцията, като се стремим към оптимални решения, които отговарят на специфичните ни нужди. 

Правим проверки на изготвеното съдържание в предпродуктова среда на тестови установки. Това ни дава възможност лесно да правим корекции до постигане на желаните резултати – както визуално, така и функционално. Използваме различни техники за контрол върху крайния продукт, като често се обръщаме към Spine 2D за гъвкавост и бързи резултати, което намалява необходимостта от чести намеси на Front-end екипа.

Васил: Най-важният фактор за нашия успех е откритата и постоянна комуникация, взаимното разбиране на ограниченията и възможностите на всеки от нас. Когато изграждаме нови компоненти, често провеждаме брейнсторминг сесии за различни идеи и подходи за използване на Pixi.JS и Spine. 

Разглеждаме задачите от всички възможни ъгли, което ни позволява да се предизвикваме взаимно и да разширяваме както знанията, така и уменията си.

Explore more

Виж
RabbitMQ обявите
Събрани на едно място
Right Arrow
Виж
Databricks обявите
Събрани на едно място
Right Arrow
Виж
jQuery обявите
Събрани на едно място
Right Arrow
Виж
Chef обявите
Събрани на едно място
Right Arrow

Екипът на Amusnet за разработката на land-based игри

Илиян Киряков, Software Engineering Manager, Back-end teams

Зад всяка визуализация в игрите стои стабилна техническа основа, изградена от Back-end екипа, който създава невидимия механизъм зад играта.

Ролята на един Back-end разработчик е в сърцето на игровата логика – от завъртанията и бонус механиките до обработката на данни и математическите алгоритми. Работим в тясно сътрудничество с Front-end, QA, математическите и хардуерни екипи, за да осигурим безупречен синхрон между всички компоненти на продукта.

Есин Якуб, Software Engineering Manager, Front-end & Back-office teams

Екипите комуникират ежедневно, за да създадат най-доброто продуктово изживяване за потребителя. Използваните технологии в land-based игрите осигуряват гъвкавост, стабилност и визуална привлекателност, както и лесна поддръжка в дългосрочен план. Ключови са ефективното управление на паметта, екранното пространство и рендерирането, за да се гарантират бързи реакции при докосване и плавност на движението.

Финалният продукт е резултат от сътрудничеството между механична конструкция, хардуер, арт, Backend и Front-end екипи. Необходима е постоянна колаборация между продуктови и engineering мениджъри, инженери и QA специалисти за създаване на комплексни, но и атрактивни за пазара решения.

Калоян Стоянков, Head of Land-Based R&D Division

Първоначално планирахме да ползваме C++ с OpenGL за Front-end разработката, но решихме да преминем към TypeScript поради няколко причини. На пазара има значително повече разработчици на TypeScript, отколкото на C++ и очакваме тази тенденция да се запази.

Използването на TypeScript също е в съответствие с визията на компанията, като насърчава сътрудничество, поддръжка на общи библиотеки и обмен на знания между екипите, а това създава по-силна общност в Amusnet

Имаме и вълнуващи планове за бъдеща разработка, която е интересно техническо предизвикателство и ще бъде по-лесно и оптимално разрешено с помощта на TypeScript в сравнение със C++.

Какъв съвет бихте дали на някого, който иска да навлезе в game development света?

Васил: Game development-ът е както забавен, така и предизвикателен – най-важното е просто да започнете. Не е важно какъв език или engine ползвате, тъй като онлайн има безброй ресурси, които могат да ви помогнат. 

Илиян: Всеки ред код ви приближава към целта. Успешните игри започват с идея и отдаденост, а грешките и постоянството спомагат най-много за придобиването на опит.

Калоян препоръчва книгата „Game Programming Patterns“ и съветва да започнете с репликирането на не твърде сложни и вече познати игри, както и разглеждането на open-source проекти и игрови механики.