Войти
Unity

Unity

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

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

Статьи

Контент-ориентированная генерация уровня в 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
Простая машинка в Unity
Урок по созданию простой машинки в среде Unity при помощи компонента WheelCollider. Описаны базовые настройки этого компонента. Для понимания урока необходимы базовые знания среды Unity.

Читать | Комментарии [15]
19 июля 2011

Блог

На 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

Visual Studio Tools for Unity стал бесплатным
29 июля в блоге Microsoft без лишнего шума появилась новость о том, что официально выпущен бесплатный плагин для Visual Studio под названием Visual Studio Tools for Unity, ранее известный как UnityVS.
Его ключевой особенностью является возможность отладки проекта Unity в Visual Studio. Без этого плагина отладка возможна только с помощью MonoDevelop.

Ссылки на скачивание:


Инструкция по установке

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

Unity про поддержку Metal
Изображение
На недавней WWDC компанией Apple был представлен новый графический API под названием Metal, отличительной особенностью которого стала высокая эффективность, низкий уровень издержек и оптимизация под чип A7. Metal предоставляет разработчикам возможность воспользоваться всеми преимуществами устройств на iOS и добиться намного большего уровня реалистичности, детализации и интерактивности в играх, чем когда бы то ни было.
Unity очень скоро добавит поддержку Metal в свой инструментарий. Новая запись в блоге поможет узнать подробности о новой технологии, и разъяснит, почему это очень хороший вариант для разработчиков.

Ссылка
7 июля 2014

Форум

Как имея массив неотсортированных точек сформировать фигуру?25 сен. 20213:10manking
Добрый день!

Есть массив неотсортированных точек, которые визуально образуют фигуру.
В unity есть ли инструменты в которых можно создать фигуру из этих точек, заполнить ее цветом, обвести границу и задать толщину границы?

Изображение
Как получить позиции угловых точек тайла?24 сен. 202117:07manking
Добрый день!

А как получить координаты угловых точек тайла в гексогональной сетке tilemap hex top?
Изображение

Vector3Int Vector3IntPoint = new Vector3Int(4,8); // cell
Vector3 worldCenterPos = MyTileMap.CellToWorld(Vector3IntPoint);

Вот получаю координату клетки. А как получить координаты всех углов? Как узнать ширину и высотку тайла в мировых координатах?

Есть ли возможнось закодировать 5 масок в текстуру с 4-я каналами?23 сен. 202121:41Alerr
Привет всем!
Для постпроцесса нужно иметь текстуру-маску с 5-ю каналами так как текстуры с 4-я каналами не хватает.
Есть ли возможность как-то закодировать 5 каналов в текстуру с 4-я каналами? Какие есть подходы без создания доп.текстуры?
UMA2 создание новой рассы23 сен. 202117:11BokarevDanilaDev
Никто не работал с UMA2? Смотрел на разных форумах и видосы на ютубе и нигде так и не смог найти нормального гайда для создания новой рассы в UMA
Есть модель и ее нужно каким то образом внедрить в UMA
Unity цвет частиц разный в scene и game23 сен. 202114:22Osiris
Очень странная штука, аналогичная ситуация с этой темой на форуме Unity
https://forum.unity.com/threads/the-color-of-particle-in-scene-an… rent.1145504/

Может кто сталивался, что цвет отличается в сцене и игре, в игре он желтее, как будто блендинг выкрутили. При чем если тестовый проект из ассета смотрю - то там одинаково.

Может кто подкинуть идеи, что мне потыкать?

Как получить GET параметр с сайта?23 сен. 20215:58Padrre
Всем здрасте!
Ситуёвина следующая: есть приложение на WebGL, которое открывается через index.php. При открытии формируется GET запрос типа "TaskId=123456".

Вопрос: как мне получить значение этого запроса в приложение? Проблема в том, что даже если через echo вывести это поле, www.text возвращает всю страницу кроме этой переменной, хотя в браузере все отображается!

<?php

#получаем значение GET с нашей страницы
$get = $_GET['taskId'];
?>
<!DOCTYPE html>
<html lang="en-us">
<head>
    тут мой head
</head>
<body>
    <div>
        <?php
# тут выводим значение
            echo $get;
        ?>
    </div>

<div class="webgl-content">
    
  тут приложение
</div>
Unity IAP и аналитика21 сен. 202118:37Increaser
Есть ли возможность не трекать в аналитику покупки с тестовой карты?
По умолчанию туда приходят такие, и неудобно различать реальные покупки от тестовых.

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

Правка: 19:37

C# : возможно ли сделать список(List) ссылок на структуры?19 сен. 202117:01Alerr
Привет всем!
У меня есть пулл обхектов типа UI.Image. Из этого пулла я беру объекты, помещаю в DematerializatorUI и работаю с ними так:
struct DematerializatorUI{
  Image im;
  ...
}
DematerializatorUI d = new DematerializatorUI ( this, demBtn );// NEW OBJ

        demObjects.Add ( d );// COPY 1 !!!!
        demIconGroup.Add (demBtn, d);// COPY 2 !!!

Проблема в том, что создаются копии обхекта d, которые заносятся в списки. А должна быть не копия, а ссылка на один  и тот же объект.
Можно ли создать лист в котором находятся ссылки на структуры и как это сделать?

Работать с классами не хотелось бы так как он создает мусор.

Правка: 17:01

Подскажите пожалуйста, как в эту штуку передать параметры?18 сен. 202111:56FourGen
Продолжаю разбираться с Addressables, мне тут человек немного объяснил, как это работает в общих чертах. Вроде оно заработало стало грузиться, на мобилке вроде так же теперь ресурсы начали подгружаться, пытаюсь разобраться далее, что бы как-то вести учет того, что загружено что нет.

Вот я загружаю объект

Здесь, как я понимаю загружаю объект с указанным именем и далее вызывается процедура Load
и далее 2 варианта или выход или дождется пока загрузиться и вывалится.

    public void LoadObjects(object _name)
    {
        Interfacehandle = Addressables.LoadAssetAsync<GameObject>(_name);
        Interfacehandle.Completed += Load;       
    }   


Вопрос вот в этой процедуре Load:
Как сюда передать параметры? Что бы сразу записать созданный объект в массив? То есть хочу сразу передать ссылку, что бы оно записывало куда надо.

    private void Load(AsyncOperationHandle<GameObject> obj)
    {
        if (obj.Status != AsyncOperationStatus.Succeeded) return;
        GameObject _loadedObject = obj.Result;        
        _instantiatedObject = Instantiate(_loadedObject, _loadedObject.transform.position,    
        _loadedObject.transform.rotation);
        _instantiatedObject.name = _loadedObject.name;

Сейчас я сделал процедуру такого рода, где после загрузки по имени смотрю, что за объект, потом уже сохраняю в нужную переменную
        AddObjectToMas(_instantiatedObject);
(но это форменное извращение)

    }

А хотелось бы что-то типа такого:

private void Load(AsyncOperationHandle<GameObject> obj, GameObject _instantiatedObject)

_instantiatedObject = Instantiate(_loadedObject, _loadedObject.transform.position,    
        _loadedObject.transform.rotation);

Такое можно сделать или нет? На конструкцию выше естественно ругается.

Так же по ходу дела вопрос еще 1 может подскажете?
Я правильно понимаю, что если я делаю LoadAssetAsync, а потом Instantiate то, когда в будущем я удалю все объекты которые поставил после LoadAssetAsync то память очиститься сама и никаких Release делать не нужно (если этих объектов больше не будет на сцене)?

А если делать InstantiateAsync, то даже после удаления всех объектов надо обязательно делать Release?

C# GC: будет ли мусор от структуры, которая имеет link-поле?17 сен. 202114:04Alerr
Привет всем!
Извините за глупый вопрос, но я не смог найти на него ответ.
У меня есть структура MyStruct:
struct Ob{
  float g;
}
struct MyStruct{
  Ob c;
  int a, b;
  Transform trObj;
}

Если я создам экземпляр MyStruct, то будет ли от него мусор? В сети куча простых примеров, где используются структуры заполненные простыми типами (int, float, bool), а моей сиуации я не встречал.
Насколько мне известно, trObj содержит link. А link - это то, с чем работает GC. Так вот, на мой взгляд, мусор будет. Но я не уверен, потому спрашиваю здесь у профессионалов :)

Правка: 14:04