danilaxxl danilaxxl

CollectableItemData.cs

[CreateMenuItem(fileName = "newItem", menuName = "Data/Items/Collectable", order = 51]

GoloGames GoloGames

vadya_ivan, рад, что вам игра показалась интересной : )

P.S. Кстати уже доступна бесплатная демо-версия в Steam

vadya_ivan vadya_ivan

Визуал, задумка, музыка , механики, все в цель

GoloGames GoloGames

Ato_Ome, спасибо за позитивные эмоции, будем стараться : )

Ato_Ome Ato_Ome

Потрясающий результат, все так четенько, плавненько)
То ли саунд, то ли плавность напомнили мне игрушку World of Goo, удачи вам в разработке и сил побольше дойти до релиза!)

Cute Fox Cute Fox

Graphics are a little cool, good HD content. But this game doesn't cause nary interest me.
However the game is well done.

GMSD3D GMSD3D

Почему действие после всех условий выполняется?
[step another object]

Zemlaynin Zemlaynin

Jusper, Везде, но наугад строить смысла нет. Нужно разведать сперва территорию на наличие ресурсов.

Jusper Jusper

Zemlaynin, а карьеры можно будет везде запихать?
Или под них "особые" зоны будут?

Zemlaynin Zemlaynin

Это так скажем тестовое строительство, а так да у города будет зона влияния которую нужно будет расширять.

Jusper Jusper

А ссылка есть?

Jusper Jusper

Я не оч понял из скриншота, как вообще работает стройка. У игрока будет как бы поле строительства?

split97 split97

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

split97 split97

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

ViktorJaguar ViktorJaguar

Почему я нигде не могу найти нормальный туториал, где покажут как экипировать предмет (например, меч) в определенную (выделенную под оружие) ячейку???

Логотип проекта Unity

Используем DLL в Unity

Сегодня я хотел бы познакомить вас с темой, которую сам я не очень мог понять, пока не познакомился с UnityVS. А именно - как создавать DLL через студию да так, чтобы Unity не ругался. Обычный способ в нашем случае становится нетривиальным, ибо у Unity свои взгляды на эту тему. Тема простая, но нужная.
Приступим!

Подготовка

Для начала нам необходимо поставить UnityVS. Скачать его можно тут.
После установки не забудьте встроить пакет UnityVS в вашем проект.
Для этого используйте меню в движке: Assets/Import Package/UnityVS.
Так же в настройках проекта (Edit/Preferences.../External Tools) убедитесь, что скрипты будут открываться с помощью UnityVS.

Используем DLL в Unity — Unity — DevTribe: инди-игры, разработка, сообщество

Процесс

Откройте студию.
Щелкнув правой кнопкой по решению выберите пункт Add/New project...

Используем DLL в Unity — Unity — DevTribe: инди-игры, разработка, сообщество

Теперь по обычаю. Выбираем "Class Library" (Библиотека классов), указываем имя и путь.
Путь не должен относиться к папке Assets вашего проекта. Иначе скрипты будут конфликтовать.
Идеальный путь - папка вашего проекта.
Для создаваемой DLL укажите платформу .NET Framework 3.5 (сейчас это нужно лишь для того, чтобы потом не пришлось удалять ссылки на не поддерживаемые библиотеки).

Используем DLL в Unity — Unity — DevTribe: инди-игры, разработка, сообщество

Зайдите в свойства вашего нового проекта (правой кнопкой по проекту - Preference)
Теперь измените вашу платформу на Unity 3.5 .net Subset Base Class Libraries.

Используем DLL в Unity — Unity — DevTribe: инди-игры, разработка, сообщество

Заново откройте свойства, так как после подтверждения окно закроется.
На вкладке Build установите путь для вашей DLL, куда она отправится после компиляции. В качестве папки укажите любую папку в папке Assets вашего проекта.
Если ваша DLL - для редактора, то есть к игре не относится, вы должны поместить ее в папку Assets/Editor/ или другую папку в таком духе.

Используем DLL в Unity — Unity — DevTribe: инди-игры, разработка, сообщество

Сохраните ваши настройки.

Удалите нерабочие ссылки из вашего проекта:

Используем DLL в Unity — Unity — DevTribe: инди-игры, разработка, сообщество

Добавьте ссылку на другие ваши проекты в том же решении если это необходимо (References -> Right click -> Add Reference... -> Project). //Однако, это вовсе не нужно имхо, ибо сама суть DLL обычно состоит в том, что она должна жить сама по себе, без этой зависимости с проектом, к которому она относится.
Добавьте стандартные Unity библиотеки.
Стандартные пути в Unity5 для них такие:
UnityEngine: C:\Program Files\Unity\Editor\Data\Managed\UnityEngine.dll
UnityEditor: C:\Program Files\Unity\Editor\Data\Managed\UnityEditor.dll
Для каждой добавленной библиотеки в свойствах укажите Copy Local = false

Используем DLL в Unity — Unity — DevTribe: инди-игры, разработка, сообщество

Однако всё.

Компиляция DLL происходит как обычно в студии принято - вручную.Отладка производится так же как и с обычными проектами при использовании UnityVSПри необходимости можете включить unsafe mode и работать с указателями. Здесь он прекрасно работает.

Смотрите также:


Комментарии



Воу, а я для этих темных дел использовал отдельное решение и для проектов, которые используются в юнити ставил в "On After Build Success Event" скрипт для копирования этой библиотеки в папку "Plugins" внутри юнити проекта, но имхо этот метод круче!) Надо будет таки поставить UnityVS

Два вопроса:
Сканает ли для билда в линуксе (родные юнити длл так и остаются длл)?
Есть способ для моно?

MF, тут идет речь про dll управляемого кода, так что на линуксе это тоже будет работать.

Справка