Вот и подходит к концу наш цикл статей по Windows Mixed Reality. В нем мы разрабатывали с нуля приложение со смешанной реальностью на Unity в формате lab work (лабораторной работы). Сегодня — завершающий аккорд, в котором мы поговорим об очень интересной теме — о HoloLens и адаптации проекта под это устройство. Присоединяйтесь!
Рубрика «unity3d» - 13
Адаптация проекта MR под HoloLens
2018-09-04 в 7:15, admin, рубрики: AR, AR и VR, hololens, microsoft, mixed reality, mixed reality toolkit, MR, unity, unity3d, Visual Studio, VR, Блог компании Microsoft, гайд, кейс, Разработка под AR и VR, разработка под windows, руководство, цикл статейUnity: знакомство со Scriptable Objects
2018-08-31 в 8:57, admin, рубрики: flyweight, scriptable objects, unity, unity3d, разработка игрВ этом туториале вы узнаете, как создавать и использовать Scriptable Objects в Unity. Scriptable Objects помогут усовершенствовать ваш рабочий процесс, снизить объём занимаемой памяти и даже позволят разделить архитектуру кода.
Согласно документации Unity, ScriptableObject — это код класса, позволяющий создавать в игре Scriptable Objects для хранения больших объёмов общих данных, не зависящих от экземпляров скриптов.
Существует множество причин для использования Scriptable Objects в Unity. Они могут снизить объём используемой под каждый дополнительный префаб памяти, потому что по своей сути Scriptable Object следуют паттерну разработки Flyweight.
Ещё одно преимущество Scriptable Objects, которое будет основной темой этого туториала, заключается в их использовании для удобной пересылки данных. Мы рассмотрим это свойство на примере создания лавки торговца мечами, в которой будут отображаться параметры, цены и описания различных мечей.
Читать полностью »
Создание простого ИИ на C# в Unity
2018-08-27 в 7:40, admin, рубрики: unity, unity3d, искусственный интеллект в играх, разработка игрПочти любой игре необходим взаимодействующий с пользователем искусственный интеллект (AI), чаще всего в виде враждебной игроку силы. В некоторых случаях ИИ должен помогать игроку, в других — бороться с ним, но у всех управляемых компьютером персонажей существует некоторое сходство. В зависимости от требований проекта ИИ может использовать простые или сложные поведения. Такими требованиями могут быть дипломатия с другим игроком или простое блуждание вперёд-назад по платформе. Как бы то ни было, необходимо сделать так, чтобы ИИ качественно выполнял свою работу.
В этом проекте я продемонстрирую очень простой искусственный интеллект. Допустим, мы создаём игру, в которой игрок должен тайком пробраться рядом с вражеским штабом. Когда игрока замечает камера слежения, рядом создаются враги и в течение короткого промежутка времени преследуют игрока. Именно это мы и реализуем в проекте на простейшем уровне. Завершив проект, вы получите управляемый объект игрока, круг, используемый в качестве камеры врага, и объект врага, который будет преследовать игрока, когда о его присутствии сообщит объект камеры.
Читать полностью »
Как создается звук для другой реальности
2018-08-23 в 7:30, admin, рубрики: AR, AR и VR, hololens, microsoft, mixed reality, mixed reality toolkit, MR, unity, unity3d, Visual Studio, VR, Блог компании Microsoft, гайд, кейс, Разработка под AR и VR, разработка под windows, руководство, цикл статейМы продолжаем цикл статей по Windows Mixed Reality и разрабатываем с нуля приложение со смешанной реальностью на Unity в формате lab work (лабораторной работы). Вы можете сами, параллельно с публикацией статей, создавать такое приложение. Сегодня поговорим о пространственном звуке и о том, как же создать ощущение пребывания в другой реальности.
Рендеринг воды в экранном пространстве
2018-08-22 в 8:28, admin, рубрики: fluid simulation, Physically Based Shading, unity, unity3d, разработка игрПоследней моей задачей технической графики/рендеринга был поиск хорошего решения для рендеринга воды. В частности, рендеринга тонких и быстро движущихся струй воды на основе частиц. За прошлую неделю я додумался до хороших результатов, поэтому напишу об этом статью.
Мне не очень нравится подход с voxelized / marching cubes при рендеринге воды (см. например, рендеринг симуляции жидкости в Blender). Когда объём воды находится в том же масштабе, что и используемая для рендеринга сетка, движение получается заметно дискретным. Эту проблему можно решить, увеличив разрешение сетки, но для тонких струй на относительно длинные расстояния в реальном времени это просто непрактично, потому что сильно влияет на время выполнения и занимаемую память. (Есть прецедент использования разреженных воксельных структур, улучшающий ситуацию. Но я не уверен, насколько хорошо это работает для динамических систем. Кроме того, это это не тот уровень сложности, с которым я бы хотел работать.)
Первой альтернативой, которую я исследовал, были меши экранного пространства Мюллера (Müller’s Screen Space Meshes). В них используется рендеринг частиц воды в буфер глубин, его сглаживание, распознавание соединённых фрагментов похожей глубины и построение из результата меша с помощью marching squares. Сегодня этот способ, вероятно, уже стал более применимым, чем в 2007 году (поскольку теперь мы можем создавать меш в compute-шейдере), но он всё равно связан с бОльшим уровнем сложности и затрат, чем бы мне хотелось.
В конце концов я нашёл презентацию Саймона Грина с GDC 2010 «Screen Space Fluid Rendering For Games». Она начинается точно так же, как и Screen Space Meshes: с рендеринга частиц в буфер глубин и его сглаживания. Но вместо построения меша получившийся буфер используется для затенения и композитинга жидкости в основной сцене (с помощью записи глубины явным образом.) Именно такую систему я и решил реализовать.
Читать полностью »
Разработка смешанной реальности: а вы ставили динамик в виртуальной гостиной?
2018-08-17 в 7:45, admin, рубрики: AR, AR и VR, hololens, microsoft, mixed reality, mixed reality toolkit, MR, unity, unity3d, Visual Studio, VR, Блог компании Microsoft, гайд, кейс, Разработка под AR и VR, разработка под windows, руководство, цикл статейМы продолжаем цикл статей по Windows Mixed Reality и разрабатываем с нуля приложение со смешанной реальностью на Unity в формате lab work (лабораторной работы). Вы сможете сами, параллельно с публикацией статей, создать такое приложение. В этой части рассмотрим поддержку контроллера движения и добавим префаб динамика в виртуальную гостиную.
Клиент-серверное взаимодействие в новом мобильном PvP-шутере и устройство игрового сервера: проблемы и решения
2018-08-13 в 10:43, admin, рубрики: client-server, Gamedev, pvp, unity, unity3d, Блог компании Pixonic, геймдев, клиент-сервер, мобильные игры, Проектирование и рефакторинг, разработка игр, разработка мобильных приложений, шутер, юнитиВ предыдущих статьях цикла (все ссылки в конце статьи) о разработке нового fast paced шутера мы рассмотрели механизмы основной архитектуры игровой логики, базирующейся на ECS, и особенности работы с шутером на клиенте, в частности, реализация системы предсказания локальных действий игрока для повышения отзывчивости игры. В этот раз подробнее остановимся на вопросах клиент-серверного взаимодействия в условиях плохого соединения мобильных сетей и способы повышения качества игры для конечного пользователя. Также вкратце опишу архитектуру игрового сервера.
Доступная смешанная реальность: как создать виртуальное пространство
2018-08-10 в 7:30, admin, рубрики: AR, AR и VR, hololens, microsoft, mixed reality, mixed reality toolkit, MR, unity, unity3d, Visual Studio, VR, Блог компании Microsoft, гайд, кейс, Разработка под AR и VR, разработка под windows, руководство, цикл статейМы продолжаем цикл статей по Windows Mixed Reality. В его рамках с нуля разработаем приложение со смешанной реальностью на Unity в формате lab work (лабораторной работы). Вы сможете сами, параллельно с публикацией статей, создать такое приложение. Сегодня поговорим о настройке среды VR, включая создание виртуальной комнаты.
Использование многослойной нейронной сети для обхода препятствий в играх
2018-08-05 в 10:50, admin, рубрики: unity3d, нейросети, разработка игрПоиск путей обхода препятствий в играх – классическая задача, с которой приходится сталкиваться всем разработчикам компьютерных игр. Существует ряд широко известных алгоритмов разной степени эффективности. Все они в той или иной степени анализируют взаимное расположение препятствия и игрока, и по результатам принимается то или иное решение по перемещению. Я попытался использовать для решения задачи обхода препятствий обученную нейронную сеть. Своим опытом реализации этого подхода в среде Unity3D я хочу поделиться в этой небольшой статье.
Мультиагентные системы в построении виртуальных пространств
2018-08-03 в 9:54, admin, рубрики: AI, api, AR, AR и VR, azure, jedium, lms, microsoft, ml, unity3d, VR, Блог компании Microsoft, нейронные сети, нейросети, облако, разработка игр, Разработка под AR и VRОдна из критических проблем, которые возникают при построении многопользовательских систем – масштабирование. Существуют различные варианты решения это проблемы: шардинг, сервисная модель, Entity-Component System. Сегодня рассмотрим все варианты, а также обсудим практический кейс решения вопроса. Присоединяйтесь!