Войти
Unity

Unity

Создание игр на движке Unity

СтатьиФорумИнфо

Статьи

Создание веревки в Unity на базовых SpringJoint.
Создание веревки в Unity на базовых SpringJoint.

В этой статье я расскажу к какому способу создания веревок (тросов, цепей) я смог прийти в ходе разработки игры для конкурса Платформеров на GameDev.ru. Пример будет разобран на 2Д проекте, но думаю нет никаких сложностей адаптировать его для 3Д проекта.

Читать
24 дек 2021

Контент-ориентированная генерация уровня в Unity в конкурсе «Храм Хаоса»
Контент-ориентированная генерация уровня в Unity в конкурсе «Храм Хаоса»

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

Читать | Комментарии [8]
15 мая 2020

Unity Character Motor
Unity Character Motor

Когда-то давно, еще во времена Unity 3, мне стало интересно как работает физика персонажа. И я заглянул в класс CharacterMotor. Класс был написан на JavaScript, был огромный, страшный и непонятный. Я решил переписать его на C#, попутно отрефакторив. Недавно я вспомнил про свой старый CharacterMotor, решил еще немного подправить его и поделиться им. Тем более, тема физики персонажа не очень популярная (я вообще не видел никакой информации), хотя довольно интересная.

Читать | Комментарии [61]
29 июня 2016

Реализуем multi-touch жесты самостоятельно
Реализуем multi-touch жесты самостоятельно

В этой статье будет рассмотрена реализация pan (перемещения) и pinch zoom (масштабирования двумя пальцами) изображения. В результате получится некий аналог приложения для просмотра фотографий.

Читать | Комментарии [2]
20 окт 2012

Блог

Unity приобрела Ziva Dynamics

Компания Unity пополнила свои покупки компанией Ziva Dynamics – лидером в симуляции компьютерных персонажей. В линейку приобретений компании уже входят Weta Digital, SpeedTree, SyncSketch, Pixyz, and RestAR.
Подробнее…

Ссылка | Комментарии [45]
25 янв 2022

Unity приобрела создателя SpeedTree

Компания Unity приобрела компанию Interactive Data Visualization (IDV) — разработчика пакета SpeedTree. SpeedTree — инструмент моделирования растительности для игр и компьютерных симуляций.

Трехмерное моделирование вручную и с нуля растительности, такой как трава и деревья, достаточно сложное и трудоемкое занятие. Однако SpeedTree через автоматизацию позволяет ускорить и облегчить этот процесс. Инструмент SpeedTree достаточно популярен и занимает лидирующие позиции на рынке. SpeedTree использовался для моделирования растительности в таких проектах, как Horizon: Zero Dawn, Call of Duty: War Zone, The Witcher 3, Assassin’s Creed: Valhalla, Hitman III, and Ghost of Tsushima.

Запустить видео по клику - Как делать игрыЗапустить видео по клику - Как делать игры

Ссылка
22 июля 2021

На Stackoverflow добавлена community-документация

На Stackoverflow в рамках проекта Documentation создан раздел для Unity.
Это позволяет пользоваться документацией к Unity, созданной сообществом.

У такой документации есть преимущества:

  • Любую недоработку в документации может исправить кто угодно.
  • В любой момент можно добавить недостающую информацию.
  • Карма, полученная в рамках этого проекта, идёт в общую карму stackoverflow.

Есть и недостатки:

  • Данный ресурс не является официальным источником информации.
  • Поиск нужного раздела может быть затруднён, так как проект страдает от последствий унификации интерфейса с основным сайтом stackoverflow.

Запросы на добавление недостающей документации можно добавлять через кнопку "Request Topic".
Также можно голосовать за добавление недостающих разделов на главной странице тега Unity.

Ссылка
24 июля 2016

В Unity 5.4 будет прекращена поддержка WebPlayer

Согласно Unity 5.4.0b1 release notes и Роадмап Unity Web Player, в Unity 5.4, выпуск которого запланирован на март 2016 года, будет прекращена поддержка платформы WebPlayer.

Официальный блог Unity3D рекомендует переводить игры, использовавшие WebPlayer, на платформу WebGL.
Тем не менее, сами Unity признают, что WebGL всё ещё накладывает серьёзные ограничения на некоторые игры, изначально создаваемые для WebPlayer.

Чтобы помочь разработчикам сориентироваться в новой технологии WebGL, на форуме Unity была создана специальная тема WebGL Roadmap, которая помогает понять, какие ограничения есть у WebGL и как их можно обойти. Тема была создана полгода назад, поэтому рекомендуется следить за Unity roadmap и официальным блогом, чтобы быть в курсе изменений платформы WebGL.

Ссылка | Комментарии [10]
14 янв 2016

Редактор Unity появится на Linux

Unity Technologies планируют портировать редактор Unity на Linux.
Он обязательно будет поддерживать Ubuntu версии не менее 12.04 и будет настолько же функциональным, как и его версии для Mac OS и Windows, кроме сборки игр под iOS.
В данный момент редактор существует в виде отдельной экспериментальной ветки внутри компании. Unity Technologies планируют в скором времени собрать экспериментальную сборку редактора и представить её публике.

Ссылка | Комментарии [9]
12 июля 2015

Видеоуроки по программированию на C# Unity для начинающих

Программирование на C# под Unity.
Смотрим на Ютубе.

Ссылка | Комментарии [2]
29 июня 2015

Вышел Unity 4.6

Сегодня вышла новая версия Unity 4.6. Главным нововведением в этой версии стала новая система создания пользовательского интерфейса, которая позволяет легко настраивать интерфейс игры в редакторе.
Подробнее…

Ссылка
27 ноя 2014

Открытая бета Unity 4.6 доступна для скачивания
Unity4.6 Open Beta | Открытая бета Unity 4.6 доступна для скачивания

Стала доступной открытая бета-версия Unity 4.6: http://unity3d.com/unity/beta/4.6
Главное новшество в ней - новая система UI, которая наконец-таки соответствует современным стандартам.

Приятным бонусом также является исходный код встроенных в Unity шейдеров, который можно скачать на той же странице. Это является следствием инициативы Unity по открытию исхдных кодов своих компонентов: http://blogs.unity3d.com/2014/08/20/more-open-source-initiatives-from-unity/

Ссылка | Комментарии [9]
21 авг 2014

Форум

Насколько сложно закодить ИИ?18 сен 20221:42Dartmor

Я научился кодить исключительно ради контроля над проектом и экономии денег на программисте. Программирую так себе, хотя игру что я хочу сделать - смогу сделать. Но если я хочу боевую систему с живыми боями - нужно наверное кодить ИИ. У меня был опыт когда я 2 года безуспешно пытался закодить физику и теперь я знаю что не всё могу сделать.

Абсолютно серьёзно спрашиваю - насколько сложно закодить ИИ? Сколько стоит программист, который это делает? Есть ли примеры алгоритма с ценой, чтобы я понимал? Мне или отказываться от боевой системы живой, или кодить самому, или нанять кого-то.

Глитч VFX11 сен 202210:43DemiosFantasimo

Раскуриваю VFX Graph. Наткнулся на такое. Один эмиттер под некоторым углом начинает просвечивать через другой. Шо делать?

Запустить видео по клику - Как делать игрыЗапустить видео по клику - Как делать игры

Скрипт для камеры. 2d платформер.6 сен 202213:56Bringor

Привет. Нам надо скрипт для камеры. Сейчас стоит "затычка", при которой персонаж просто по центру и при свободном падении анимации дергаются раз в кадр (раньше дергались вообще при движении, но это исправили).
Нужна камера которая будет держать обзор перед гг (гг находится ближе к краю), а не держаться по центру. Так как у проекта очень высокая динамика, надо чтобы обзор увеличивался от увеличения скорости гг. Еще надо чтобы камеру можно было как то ограничивать, чтобы она не попадала за сцену в некоторых местах.

Юнити Фотон подбор объектов( Возможно не так настроил кнопку)26 авг 20220:06Spayswolf

Не синхронизируется подбор объектов. Я продебажил условия и они не работают.

+ Показать

помогите пожалуйста 2 неделю бьюсь.

установку Unity под Linux25 авг 202215:34Eugeny1984

Друзья, добрый день! Я проходил все уроки на юнити 2d 2019 год версии Windows. Сейчас я не имею возможности работать на Windows, а есть только Linux на работе, а обучение хочу проходить. Подскажите, пожалуйста, возможно ли и как установить версию Юнити под Linux?

Использование языка OverScript в Unity23 авг 202210:17overscript-project

Привет! OverScript — это статически типизированный интерпретируемый язык. Его легко подключить в Unity, и он имеет более высокую производительность, чем другие используемые в Unity языки, написанные на C# (MoonSharp, MiniScript и др.). Интерпретатор не использует компиляцию кода.

Я сделал библиотеку .NET Standard 2.1 для Unity. Добавьте OverScriptStandard.dll к ассетам и подключите в C# так: using OverScriptStandard;
В настройках плеера задайте api compatibility level - .NET Standard 2.1. Теперь можно выполнять OverScript код:

Executor executor = new Script(@"C:\MyScripts\Test.txt"); 
executor["Debug"] = typeof(Debug);
executor.Execute();
//когда экзекутор больше не будет использоваться, его нужно уничтожить через Dispose
//executor.Dispose();

OverScript код в C:\MyScripts\Test.txt:

static object Debug = GetGlobal("Debug");
Debug->Log("Hello World!");

Можно через делегат:

Executor executor = new Script(@"C:\MyScripts\Test.txt"); 
executor["Print"] = new System.Action<object>((object val) => Debug.Log(val));
executor.Execute();

OverScript код:

static object Print = GetGlobal("Print");
Print.Raise("Hello World!");

Можно создавать делегаты в OverScript и вызывать их из Unity. OverScript код:

object d = Delegate(StrToInt(""), "System.Func`2[System.String,System.Int32]");
SetGlobal("StrToInt", d);

int StrToInt(string s){
  return s.ToInt();
}

C# в Unity:

Executor executor = new Script(@"C:\MyScripts\Test.txt"); 
executor.Execute();
var strToInt = (System.Func<string, int>)executor["StrToInt"];
int x = strToInt("123");

Функции в OverScript коде можно вызывать и так:

int x = (int) executor.Call("StrToInt", "123");

но через делегаты будет работать быстрее.

Максимальное кол-во одновременно существующих экзекуторов равно по умолчанию 64. Задать этот лимит можно один раз перед созданием первого экзекутора: ExecPool.Capacity = 128;

Библиотека имеет следующие зависимости:

"dependencies": {
  "Newtonsoft.Json": "13.0.1",
  "System.Text.Encoding.CodePages": "5.0.0"
}

В некоторых версиях Unity может вылетать ошибка, что Newtonsoft.Json не найден. Я тестировал в Unity 2021.3.8f1, и работает хорошо. Но Mono может в некоторых случаях работать не так, как .NET, а времени протестировать всё у меня, к сожалению, пока нет. Поэтому, если найдёте ошибки, пишите мне на .

Как сделать обнаружение пустоты с помощью IDropHandler22 авг 20220:08Stiven53

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

public void OnDrop(PointerEventData eventData)
{
  if (eventData.pointerDrag.gameObject != true)
            {
            //Выполнять что то...
            }
}
Как обратиться к переменной в классе list20 авг 202211:51Stiven53

У меня есть вот такой код, никак не могу понять как обратится к переменным класса BlockTexture который в свою очередь является list.

    public List<BlockTexture> BlocksSize;

    [Serializable]
    public class BlockTexture
    {
            public Sprite ui;
            public Texture Top;
    }
    
    void GenerateInvertory()
    {
    GameObject SlotCreated;
    for (int i = 0; i < BlocksSize.Count; i++)
        {
        SlotCreated = Instantiate(Slot, new Vector2(50, 50), Quaternion.Euler(0, 0, 0), parent);
        SlotCreated.GetComponent<Button>().id = i;
        SlotCreated.GetComponent<Image>().sprite = Тут как обратится к переменным BlockTexture;
        }
    }
Помогите вставить правмльную формулу в код19 авг 20220:52Spayswolf

Всем привет делаю систему строительства. Она работает, но криво реализовано поднятие платформ вверх(чтобы крышу там или 2 этаж построить очень херово в верх поднимается.) Все блоки двигаются по определенной сетке, но я хочу чтобы сетка было только x  и z , а y могла плавно подниматься вверх. Какую формулу надо применить.Вот код.

+ Показать
Шейдеры(Unity)18 авг 202219:42VeshevoePirogino

Всем привет, в шейдерах полный ноль, подскажите с чего начать. Знаю что в юнити есть шейдер граф, но так же шейдеры пишут на HLSL(DirectX)/GLSL(OpenGL). У чего есть свои преимущества, и с чего все таки начать, какие туторы смотреть/читать, на чем практиковаться.