Как стать автором
Обновить
1
Карма
0
Рейтинг

Пользователь

  • Подписчики
  • Подписки
  • Публикации
  • Комментарии

Скелетная анимация на стороне видеокарты

Разработка игр *Видеокарты
Из песочницы

Не так давно Unity представила ECS. В процессе изучения мне стала интерестно, а каким образом можно подружить анимацию и ECS. И в процессе поиска я наткнулся на интересную технику, которую применяли ребята из NORDVEUS в своем демо для доклада Unite Austin 2017.
Unite Austin 2017 — Massive Battle in the Spellsouls Universe.


Доклад содержит много интересных решений но сегодня пойдет речь о сохранении скелетной анимации в текстуре с целью дальнейшего ее применения.


Зачем такие сложности, спросите вы?


Ребята из NORDVEUS одновременно отрисовывали на экране большое количество однотипных анимированных объектом: скелетов, мечников. В случае использования традиционного подхода: SkinnedMeshRenderers и Animation\Animator, повлечет за собой увеличение вызовов отрисовки и дополнительную нагрузке на CPU по просчету анимации. И чтобы решить эти проблемы анимацию перенесли на сторону GPU, а точнее в вершинный шейдер.


Читать дальше →
Всего голосов 26: ↑26 и ↓0 +26
Просмотры 16K
Комментарии 38

Regex for lazy developers

PHP *Python *JavaScript *.NET *Регулярные выражения *
Tutorial

Регулярные выражения для ленивых людей?!

Regex – это модуль вашего языка программирования который позволяет работать со сложными и большими строками просто! Давайте разбираться в них вместе. Приятного прочтения ;)

Читать далее
Всего голосов 23: ↑16 и ↓7 +9
Просмотры 12K
Комментарии 32

Шейдеры в Unity — это не сложно. Часть 2 — диффузный шейдинг

Разработка игр *Unity *

Всем привет! Благодарен всем за замечания и комментарии к предыдущей статье. Благодаря всем нам мы наполняем интернет доступными знаниями и это действительно круто.
Сегодня продолжаем разбираться с шейдерами, а именно с работой с освещением. Рассмотрим тип освещения Ламберта, познакомимся с диффузным шейдингом, и, как обычно, напишем и разберём AD шейдер (Ambient Diffuse).

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Просмотры 1.9K
Комментарии 4

Об открытости данных в Android-приложениях

Блог компании True Engineering Разработка под Android *
Немного информации о том, какие данные в вашем приложении могут быть доступны для других программ и какие меры можно предпринять, чтобы это предотвратить.


Читать дальше →
Всего голосов 43: ↑40 и ↓3 +37
Просмотры 33K
Комментарии 17

Анатомия RAM

Компьютерное железо Научно-популярное Видеокарты Процессоры
Перевод
image

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

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

Зачем же ты, RAM-ео?


Процессорам требуется очень быстро получать доступ к данным и командам, чтобы программы выполнялись мгновенно. Кроме того, им нужно, чтобы при произвольных или неожиданных запросах не очень страдала скорость. Именно поэтому для компьютера так важно ОЗУ (RAM, сокращение от random-access memory — память с произвольным доступом).

Существует два основных типа RAM: статическая и динамическая, или сокращённо SRAM и DRAM.

Мы будем рассматривать только DRAM, потому что SRAM используется только внутри процессоров, таких как CPU или GPU. Так где же находится DRAM в наших компьютерах и как она работает?
Читать дальше →
Всего голосов 35: ↑34 и ↓1 +33
Просмотры 41K
Комментарии 30

Тайны файла подкачки pagefile.sys: полезные артефакты для компьютерного криминалиста

Блог компании Group-IB Информационная безопасность *IT-инфраструктура *Реверс-инжиниринг *Исследования и прогнозы в IT


В одной крупной финансовой организации произошел неприятный инцидент: злоумышленники проникли в сеть и «пылесосили» всю критически важную информацию — копировали, а затем отправляли данные на свой удаленный ресурс. Криминалистов Group-IB призвали на помощь лишь спустя полгода после описываемых событий…. К тому времени часть рабочих станций и серверов была уже выведена из работы, а следы действий злоумышленников уничтожены из-за использования ими специализированного ПО и из-за неправильного логирования. Однако на одном из серверов, участвовавших в инциденте, был обнаружен файл подкачки Windows, из которого эксперты получили критически важную информацию об инциденте.

В этой статье Павел Зевахин, специалист Лаборатории компьютерной криминалистики Group-IB, рассказывает о том, какие данные можно обнаружить в ходе криминалистического исследования в файлах подкачки Windows.
Читать дальше →
Всего голосов 35: ↑35 и ↓0 +35
Просмотры 36K
Комментарии 21

Рейкастинг в игровых 2D-движках

Работа с 3D-графикой *Разработка игр *Алгоритмы *
Перевод

Введение


На мой взгляд, рейкастинг — великолепная концепция, понять которую не так сложно, но качественных ресурсов по ней очень мало. Я расскажу о математике, лежащей в её основе, чтобы вы при желании с лёгкостью могли реализовать её в своих будущих проектах. Постараюсь сделать объяснение как можно более понятным, рассказать о всех тонкостях и проблемах, с которыми вы можете столкнуться. Также мы поговорим об оптимизации и о том, как сильно вам могут помочь пространственные хэш-карты. Ещё я напишу простые интерактивные примеры, с которыми вы сможете поэкспериментировать. Учтите, что демо написаны максимально простым образом, не ожидайте увидеть в них код уровня энтерпрайза — мы изучаем саму концепцию, а не реализацию.
Читать дальше →
Всего голосов 22: ↑22 и ↓0 +22
Просмотры 5.7K
Комментарии 0

Реалистичный боевой ИИ для 2D-игры

Разработка игр *Искусственный интеллект
Перевод
image

Хотя Close Quarters преимущественно является многопользовательской игрой, в ней всё равно должны присутствовать сложные ИИ-боты, чтобы игроки продолжали играть при плохом Интернет-соединении или отсутствии других онлайн-игроков. Кроме того, боты играют важную вспомогательную роль в некоторых режимах игры. Поэтому они должны вести себя правдоподобно и демонстрировать набор сложных поведений, в том числе использование укрытий, применение предметов в подходящее время, обход с флангов, бросание гранат и убегание от них.

Окружение и ограничения


Игровое окружение состоит из полигонов. Большинство полигонов блокирует движение, область видимости и стрельбу, однако есть и «низкие» полигоны, только блокирующие движение. Окружение плотно заставлено препятствиями и укрытиями.

ИИ тоже ограничен несколькими техническими факторами. Самый важный из них: сервер, на котором выполняются боты, когда онлайн находится мало игроков, должен быстро работать на недорогом VPS как минимум при десяти ботах. Кроме того, нагрузка на ЦП должна оставаться достаточно низкой, чтобы можно было выполнять несколько инстансов сервера на одном VPS без превышения лимита ЦП, и не при этом вызвать санкций со стороны поставщика услуг VPS.
Всего голосов 40: ↑40 и ↓0 +40
Просмотры 11K
Комментарии 2

Об исторической неточности средневековых градостроительных симуляторов

Разработка игр *Дизайн игр *
Перевод
image

Введение


Так как в эти сложные времена многие из нас работают из дома, можно предположить, что в компьютерные игры начало играть больше людей. Градостроительный симулятор — жанр компьютерных игр, в которых игрок проектирует город, добывает ресурсы, создаёт производственные цепочки и обеспечивает развитие поселения. Градостроительные симуляторы очень похожи на стратегические игры, они тоже вознаграждают за терпение и стратегическое планирование. В этой статье я рассмотрю один из поджанров этого типа игр — средневековый градостроительный симулятор, и объясню, насколько этот игровой жанр соответствует нашим знаниям о планировке средневековых поселений.
Читать дальше →
Всего голосов 39: ↑38 и ↓1 +37
Просмотры 17K
Комментарии 26

Steering behavior. Виды изменения направления движения персонажа на ходу

Программирование *Разработка игр *
Из песочницы
При разработке игр часто возникает необходимость реализации следования некоторому маршруту. Например, персонажу нужно проложить путь из точки A в точку B. Допустим рассчитали его по какому-нибудь алгоритму поиска пути, идем. И тут оказывается, что из точки C в точку D идет другой юнит и пересекает нам дорогу и надо бы его обойти. Что делать? Постоянно перестраивать путь – накладно, много лишних вычислительных расходов, когда достаточно слегка изменить направление уже во время движения, чтобы избежать столкновения.
Виды изменения направления по ходу движения и есть steering behaviors.
Читать дальше →
Всего голосов 22: ↑22 и ↓0 +22
Просмотры 21K
Комментарии 8

Декомпозиция света: как работает освещение в играх

Блог компании Pixonic Работа с 3D-графикой *Разработка игр *Игры и игровые консоли

Освещение в играх напрямую влияет на наше восприятие происходящего на экране — и даже может являться основой геймплея. Как и в реальном мире, это понятие комплексное, едва ли реализуемое при помощи одного метода. 

Пожалуй, ближе всего к этому смогла приблизиться трассировка лучей — простая по своей концепции, но требовательная к вычислительным ресурсам системы. И та получила свое развитие в игровой индустрии сравнительно недавно, с началом эпохи RTX. А ведь геймдев развивается гораздо дольше — и к сегодняшнему дню разработан уже не один метод симуляции распространения света в игровой сцене.

О методах реализации глобального освещения в играх (которые мы, кстати, используем и в своих проектах) и о том, что это вообще такое — далее в статье.

Читать далее
Всего голосов 25: ↑24 и ↓1 +23
Просмотры 5.6K
Комментарии 10

Разработка Unity плагинов для iOS и Android

Разработка под iOS *Разработка под Android *C# *Unity *
Есть куча ситуаций когда одной Unity недостаточно и нужно использовать возможности платформы. Банально, но до сих пор, в Unity нет работы с галерей и камерой из коробки. Понятно, что Unity не ограничивается мобильными платформами, но 60-70% всех мобильных игр, как бы говорят:

image
Читать дальше →
Всего голосов 9: ↑9 и ↓0 +9
Просмотры 1.4K
Комментарии 5

Упрощённые рейкасты в Unity

Разработка игр *C# *Unity *Разработка под AR и VR *

Всем привет, меня зовут Григорий Дядиченко, и я технический продюсер. Недавно я столкнулся с одной интересной задачкой в ходе реализации проекта, и подумал что стоит наверное рассказать про физику в Unity, про нюансы работы с ней и про то, какие существуют альтернативные варианты в решении разных задач. Как связывать это всё дело с EventSystem и расширять Unity классы. Если вам это интересно - добро пожаловать под кат.

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Просмотры 3.1K
Комментарии 1

Пузырь, соломинка и лапоть. Что происходит с программистами 1С

Программирование *ERP-системы *Управление разработкой *Управление персоналом *Читальный зал
Всё сказанное в тексте является сугубо моим личным мнением (так, на всякий случай уточняю).

Есть на свете такие штуки – называются франчи 1С. Это партнеры фирмы 1С, которые продают её программные продукты, помогают их внедрять и эксплуатировать, и умеют дорабатывать под нужды заказчика. Так вот, эти франчи пережили за несколько лет довольно забавную трансформацию.

Раньше как было. Возникла у клиента задача – он звонил во франч, к нему выезжал программист, разбирался, решал задачу. Либо на месте, либо забирал с собой и возвращался с решением через несколько дней.

Сейчас такого почти не бывает. В большинстве случаев придётся поработать с тремя забавными персонажами – пузырём, соломинкой и лаптем. Консультантом, аналитиком и разработчиком.
Читать дальше →
Всего голосов 98: ↑87 и ↓11 +76
Просмотры 54K
Комментарии 233

Как использовать Fiverr для озвучки игры

Разработка игр *Фриланс Звук
Из песочницы

Введение

Эта статья будет в первую очередь полезна инди-разработчикам, которые подумывают об озвучке своей игры. Все написанное ниже – исключительно мой личный опыт. Надеюсь, он поможет вам сэкономить время и силы.

Многие инди-разработчики делают игры в соло или небольшими командами. И зачастую, по причине ограниченных ресурсов, приходится расставлять приоритеты.

Так было и в нашем случае. На первое место мы поставили гейм-дизайн, визуальное оформление и написание кода.

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

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

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

Читать далее
Всего голосов 5: ↑5 и ↓0 +5
Просмотры 1.3K
Комментарии 2

Выходим из тюрьмы Apple. Установка произвольных приложений на iOS без джейлбрейка

Блог компании ITSumma Мессенджеры *Разработка под iOS *Законодательство в IT Смартфоны


App Store — не единственный способ установки приложений для iOS. Раньше люди специально делали джейлбрейк, чтобы установить каталог Cydia. Но в последнее время появилось несколько сторонних каталогов, которые работают вообще без джейлбрейка. Удивительно, но Apple пока не ставит им палки в колёса.

Эти каталоги приносят реальную пользу, ведь здесь независимые разработчики свободно распространяют свои программы без комиссий и цензуры. Apple не может произвольно отзывать со смартфонов такие приложения. А люди получают более широкий выбор программ, включая эмуляторы Linux, независимость от производителя и реальное право владения.
Всего голосов 45: ↑45 и ↓0 +45
Просмотры 33K
Комментарии 57

Code review по-человечески (часть 1)

Python *Программирование *Совершенный код *Отладка *
Перевод
Tutorial
В последнее время я читал статьи о лучших практиках code review и заметил, что эти статьи фокусируются на поиске багов, практически игнорируя другие компоненты ревью. Конструктивное и профессиональное обсуждение обнаруженных проблем? Неважно! Просто найди все баги, а дальше само сложится.

Так что у меня случилось откровение: если это работает для кода, то почему не будет работать в романтичных отношениях? Итак, встречайте новую электронную книгу, которая поможет программистам в отношениях со своими возлюбленными (обложка на иллюстрации слева).

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

• Обсуждение проблем с сочувствием и пониманием.
• Помощь партнёру в устранении недостатков.

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

Как вам нравится такая книжка? Предполагаю, что она вам не очень по душе.
Читать дальше →
Всего голосов 39: ↑38 и ↓1 +37
Просмотры 153K
Комментарии 36

Метод проб и ошибок: как мы создавали кастомный импортер в Unity3D для текстурных массивов

Блог компании Pixonic Работа с 3D-графикой *Разработка игр *C# *Unity *

Основной контент в играх — это почти всегда текстуры, поэтому нужно особенно внимательно следить за ними в целом, их размерами и сжатием. 

Раньше на проекте  War Robots у нас был устоявшийся и вполне рабочий пайплайн по импорту текстурных массивов, на выходе которого мы получали массивы в конечном формате (ASTC, ETC2), отлично удовлетворяющие нашим требованиям для мобильных платформ. С этим все у нас было хорошо — до поры. Проблемы начались тогда, когда возникла необходимость релиза на ПК. 

В этой статье мы поговорим о проблемах, с которыми мы столкнулись и какие нам пришлось преодолеть: о проблеме специфической поддержки текстурных массивов Unity и о проблеме разных форматов под разные платформы. Наконец, расскажем о работе ScriptedImporter, который помог нам решить обе: как делать нельзя и как нужно.

Читать далее
Всего голосов 24: ↑23 и ↓1 +22
Просмотры 1.9K
Комментарии 2

Доллары в глазах: сравниваем российские и американские зарплаты

Блог компании Get me IT IT-эмиграция Карьера в IT-индустрии Статистика в IT Удалённая работа

Задумываясь о релокации, в первую очередь оцениваешь свой текущий уровень дохода и потенциальные карьерные перспективы в новой стране. Вопрос сопоставления зарплат двух стран — сложный и комплексный. Поэтому в этом материале мы не просто собрали данные, но и подробно расписали нюансы, которые нужно учесть для правильных выводов.

Данный материал будет полезен разработчикам, Product Manager-ам, аналитикам, тестировщикам, Data Scientist-ам, HR-ам, опытным специалистам уровня middle+, а также всем-всем-всем мечтающим релоцироваться в США.

Читать далее
Всего голосов 64: ↑60 и ↓4 +56
Просмотры 102K
Комментарии 254

Германия: руководство пользователя

IT-эмиграция
Tutorial

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

Статья будет полезна 9% населения РФ, которые по статистике обдумывают возможности выезда за границу для постоянного места жительства. Инертный человек здесь найдет аргументы против переезда, а целеустремлённый – руководство к действию.

Поехали!
Всего голосов 82: ↑81 и ↓1 +80
Просмотры 23K
Комментарии 131

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность