14 Apr 12:09 avatar

Создание C++ плагина для Unity3D

C++ in Unity3D tutorial (C# Marshaling)
www.youtube.com/watch?v=w3jGgTHJoCY

ericeastwood.com/blog/17/unity-and-dlls-c-managed-and-c-unmanaged

www.gamedev.net/articles/programming/general-and-gameplay-programming/c-plugin-debug-log-with-unity-r3349/?tab=comments

www.snowbolt.com/index.php/blog/28-tech/91-pinvoke

www.alanzucconi.com/2015/10/11/how-to-write-native-plugins-for-unity/#step1

  • При создании проекта в VS2017 надо выбирать тип проекта C++ -> библиотека DLL
  • Следить за тем, чтобы была установлена правильная разрядность и Build type — Release
  • Возможно играет роль то, какие параметры установлены для dll в редакторе Unity (зайти в редакторе в папку плагинс кликнуть на длл и проверить в инспекторе параметры)
  • Проекты CallCppFromUnity и CallUnityFromCpp загружены на гугл диск в папку работы с террасой и имеют минимальную функциональность
15 Mar 18:29 avatar

Профайлер в Unity3d

Для далеких из мира Unity3d: Update вызывается каждый кадр! Вместо того, чтобы просто обновить один раз вьюшку, когда модель обновится, мы устраиваем маленький ddos мобильника. И вообще, нужно минимизировать количество Update/FixedUpdate и переходить к event-логике, а еще лучше к конечным автоматам.


1 Dec 17:15 avatar

Перевод статьи Mastering Unity Project Folder Structure - Version Control Systems

Перевод статьи Mastering Unity Project Folder Structure — Version Control Systems

unity3d.com/ru/learn/tutorials/topics/production/mastering-unity-project-folder-structure-version-control-systems?playlist=17117
9 Nov 00:10 avatar

Работа с Unity UI

habrahabr.ru/post/248273/

xgm.guru/p/unity/ui-manual

docs.unity3d.com/ru/520/Manual/HOWTO-UIMultiResolution.html

docs.unity3d.com/ru/520/Manual/HOWTO-UICreateFromScripting.html

sgteam.ru/%D0%BA%D1%80%D1%83%D1%87%D1%83-%D0%B2%D0%B5%D1%80%D1%87%D1%83-%D0%B7%D0%B0%D0%BF%D1%83%D1%82%D0%B0%D1%82%D1%8C-%D1%85%D0%BE%D1%87%D1%83-%D1%83%D0%B3%D0%BB%D1%8B-%D1%8D%D0%B9%D0%BB%D0%B5%D1%80%D0%B0/

www.youtube.com/watch?v=gqLmoKpeWhQ
Элементы интерфейса по-умолчанию привязаны к центру родительского прямоугольника. 
Данное означает что они сохраняют постоянное смещение относительно центра.

Если с данной настройкой разрешение было изменено под альбомное соотношение сторон, кнопки могут выпасть из своих прямоугольных областей, где они изначально должны были быть расположены.Одним из способов сохранить расположение кнопок в области экрана является изменение компоновки таким образом, чтобы места их расположения были связаны с их соответствующими углами на экране. Привязка левой верхней кнопки может быть также установлена в левом верхнем углу при использовании в инспекторе выпадающего списка Anchors Preset (наборы привязок), или путём перетаскивания треугольных ручек привязок в видовом окне сцены (Scene View). Лучше сделать это пока текущее разрешение экрана, установленное в игровом режиме (Game View) является тем разрешением, для которого изначально всё и было задумано, где места расположения кнопок были бы подобраны более разумно и как говориться к месту.(Ознакомьтесь со страницей UI Basic Layout для получения более подробной информации по привязкам.). 
Так же например привязки для левой нижней и правой нижней кнопок могут быть выставлены в левый нижний и правый нижний угол соответственно.

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










Thread {
    try {
      val user = githubApi.user()
      userRepository.store(user)
      handler.post {
        threadsTV.text = "threads: [$user]"
      }
    } catch(e: IOException) {
      handler.post {
        threadsTV.text = "threads: [User retrieval failed.]"
      }
    }
  }.start()
1 Oct 02:02 avatar

Реализуем перемещение объектов во время выполнения как в редакторе (Unity 3d runtime transform gizmos). Часть 1.

Данной статьей начинается цикл о создании гизмо, пригодных к использованию во время выполнения unity-приложения

30 Sep 22:11 avatar

Начало работы с булевыми операциями (Boolean operations / CSG) в Unity3d