Author Topic: Уроки Unity  (Read 436 times)

0 Members and 1 Guest are viewing this topic.

Offline Easyskanker

  • Blogger
  • *
  • Posts: 9064
on: December 26, 2018, 19:53
Пишу главным образом для себя, потому что жизнь такая штука, на каждое действие противодействие, причем очень неслабое, и если придется на долгое время отвлечься от своих проектов, эти уроки помогут вникнуть обратно.

Reply #1 on: December 26, 2018, 19:56
Дело №1. Как экспортировать под андроид с Unity 2018.

1. Гуглим Android JDK - https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html, устанавливаем в program files/java 

2. Гуглим Android NDK - https://developer.android.com/ndk/, распаковываем тоже в папку java 

3. Гуглим Android SDK - https://developer.android.com/studio/#downloads, создаем папку android на каком-нибудь наиболее свободном “диске”, запускаем скачанный экзешник и ставим в эту папку, то есть у вас в папке android создастся папка android studio 

4. Идем в папку android, в android studio/bin, запускаем файл studio64.exe если у нас операционка 64-разрядная или studio.exe если 32-разрядная

5. Создаем в папке android, куда устанавливали Android Studio, папку SDK, устанавливаем SDK в эту папку

6. Открываем Юнити, создаем пустой проект

7. Edit >> Preferences >> External Tools, браузим пути для SDK, JDK и NDK

8. File >> Build Settings, выбираем платформу android, жмем switch platform.

9. В той же вкладке жмем player settings

10. В player settings меняем Company name на название своей организации, Product name на название своего приложения, выбираем картинку для default icon

11. Листаем ниже, в Other settings, в Identification меняем в Package name названия на название своей организации и своего приложения

12. Задерживаем дыхание и жмем Build в File >> Build Settings

13. Если проект забилдился без ошибок, и забилдился в принципе, значит своенравная богиня Юнити милосердна к вам. Но подождите праздновать, сначала закачайте полученный apk на свой гаджет, попытайтесь установить, открыть (если что, там где-то в настройках надо поставить галочку для разрешения подозрительных приложений, или как-то так, на разных “андроидах” эта настройка спрятана в разных местах и названа по-разному)

14. Если созданное вами приложение открылось, и открылось корректно, крикните “УРА”, позовите гостей, откройте шампанское и закатите банкет. Если нет, значит разрабы Юнити и/или Андроид опять что-то поменяли и вам необходимо искать более свежее руководство.

Offline Karakurt

  • Posts: 20128
  • Gender: Male
Reply #2 on: December 26, 2018, 21:16
4. Идем в эту папку, в android studio/bin, запускаем файл studio64.exe если у нас операционка 64-разрядная или studio.exe если 32-разрядная
Зачем запускать студию? (про установку не писали)
6. Открываем Юнити, создаем пустой проект
Т.е. сначала устанавливаем?
7. Edit >> Preferences >> External Tools, браузим пути для SDK, JDK и NDK
Нету.
͡° ͜つ ͡°

Offline Easyskanker

  • Blogger
  • *
  • Posts: 9064
Reply #3 on: December 27, 2018, 14:09
про установку не писали
Не заметил. Сейчас поправлю.

Зачем запускать студию?
Чтобы
устанавливаем SDK

Т.е. сначала устанавливаем?
Подразумевается, что Юнити у вас уже установлена. Как бы
Пишу главным образом для себя
, поэтому нулевой урок решил не составлять.

Нету.
А вы выполнили пункт
6. Открываем Юнити, создаем пустой проект
?

Reply #4 on: December 27, 2018, 17:52
Дело №2. GPS-location

1. В ассетах создаем C#-скрипт, называем его Gpslocation
2. Создаем Canvas >> Text, Width и Height делаем по 400, чтобы всё поместилось, выравнивание по центру, размер шрифта 25
3. Открываем скрипт в Visual Studo либо в MonoDevelop, как вам удобнее
4. Кнтрл+а, копипастим с заменой вот такой код:


longitude - долгота, latitude - широта, вот их определяем и выводим в text, \n перед lon нужна нам, чтобы перенести строку.

5. Билдим проект под андроид, устанавливаем полученный apk на гаджет, открываем и видим свои координаты.

Offline Bhudh

  • Posts: 54874
  • Gender: Male
  • aka 蝎
    • Сайты по языкознанию
Reply #5 on: December 27, 2018, 17:54
устанавливаем полученный apk на гаджет, даём ему разрешение на доступ к геолокации, открываем
Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

Offline Easyskanker

  • Blogger
  • *
  • Posts: 9064
Reply #6 on: December 27, 2018, 18:11
У меня при установке запрос на разрешение доступа к интернету и к GPS вылез, на автомате "окей" нажал. Ну так-то да, само собой разумеется.

Reply #7 on: December 29, 2018, 21:34
Unity позиционируют как движок, на котором можно создавать игры, не зная программирования. Это верно только в том случае, если вы будете тупо покупать платные ассеты в Юнити-стор пачками и тупо лепить их друг к другу, получая примерно то же, что вы могли получить в начале десятых в 3D Game Maker (ныне Cyberix3D, кажется). Иначе это очередная маркетинговая чушь: вам понадобится знать даже в два раза больше, чем язык программирования, потому что надо также знать приемы и закидоны Юнити, а потом еще их переучивать, когда поменяются с обновлениями или добавятся новые. В общем, в этом посте буду постепенно накапливать ссылки на учебные материалы по C#, по которым начинаю обучаться, и начинаю я с самых азов.

https://download.microsoft.com/documents/rus/msdn/c_sharp2.pdf - Мартин Дрейер "C# для школьников"

Reply #8 on: December 30, 2018, 22:46
Дело №3. Туман

Порядок конечно удивительный, но это тот порядок, в котором у меня возникает потребность в какой-либо фиче :)

В общем, так:
1. Ищем нашу камеру, в пустой сцене вы просто выбираете камеру в списке объектов, но у меня FPScontroller, поэтому выбираю FirstPersonCharacter в этом FPScontroller и смотрю на раздел Camera в Inspector, то есть в свойствах объекта.

Spoiler: осторожно, png! ⇓⇓⇓

В разделе Camera у нас есть поле clear flags, по дефолту в нем стоит значение skybox, то есть рендерится "небо", можно также выставить значение depth only или don't clear, чтобы почувствовать себя художником-абстракционистом, но нам нужно значение solid color. В выплывшем поле background выбираем цвет, если вы делаете туман как туман, то выберите какой-нибудь серенький, но я делаю туман как темноту (у меня на объектах шейдер unlit/texture, такие дела), поэтому цвет выберу черный.

2. Теперь в главном меню, то есть где file, edit и прочая лабуда, выбираем windows >> rendering >> lighting settings. В открывшемся окошке идем вниз, находим раздел other settings, в нем ставим галочку на fog. Color сделаю черный, mode - linear, чтобы больше походило на темноту, start 2, end 12. Вы конечно же выставляете все эти значения под себя, подбираете такие, как вам надо. Готово. Для удобства окошко ligthing settings можно перетащить к inscpector, потянув за шапку:

Spoiler: осторожно, png! ⇓⇓⇓

Reply #9 on: December 31, 2018, 13:29
Пожалуй лучше все-таки вместо слова "урок" использовать слово "дело", ближе по смыслу.

Reply #10 on: March 24, 2019, 00:48
Создание платформера на Unity, урок 1:
https://habr.com/ru/company/microsoft/blog/236125/

Reply #11 on: March 25, 2019, 18:12
Дело №4. Экспорт модели с анимацией из DAZ в Unity.


DAZ:

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


-- Во вкладке Scene (по умолчанию это на панели справа) нажмите ПКМ по персонажу -> Select -> Select All, чтобы выбрать персонажа со всеми его деталями.


-- Нажмите ПКМ на маленьком черном треугольничке (он над левом верхним углом всплывшего меню на скрине), выберите Bake to Studio Keyframes.


-- File -> Export, выберите формат fbx. В Output Options выберите "FBX 2014" и расставьте галочки как на скрине. Нажмите Accept.



Unity:

-- Создайте проект в Unity, в Assets создайте папку для модели. В проводнике Windows откройте папку, куда экспортировалась модель, перетащите мышкой содержимое в созданную нами папку в Assets.

-- В свойствах модели перейдите в раздел Materias и выставьте следующие настройки, нажмите Apply.


-- Для удобства создайте плоскость (GameObject -> 3D Object -> Plane). Перетащите мышкой модель на плоскость прямо из созданной нами папки.

-- Вы заметите, что глаза, ресницы и волосы модели накрылись медным тазом. Это легко исправить.
В созданной нами папке будет папка Materials, откройте ее. В свойствах материала Eyemoisture выберите Shader -> Legacy Shaders -> Transparent -> Diffuse, выберите текстуру Checkmark. Для материала Cornea то же самое (у модели второго поколения, Genesis 2, вместо этих материалов будут EyeReflection, Cornea и Tear). В свойствах материалов для глаз, ресниц и волос выбирайте Rendering Mode -> Fade, пока результат вас не устроит. Для материала Eyelashes бегунок Metallic можно выкрутить на максимум, до единицы.

-- В созданной нами папке нажмите ПКМ, Create -> Animator Controller.

-- Выберите модель непосредственно в сцене. Перетащите Animator Controller мышкой в свойства объекта, вкладка Animator, параметр Controller, вот в этот параметр.

-- Зайдите в Window -> Animation -> Animator. Перетащите модель персонажа из созданной нами папки в открывшуюся вкладку.


-- Теперь можете запустить игру и посмотреть, как работают анимации.

Reply #12 on: March 25, 2019, 18:59
Пока мной было замечено, что Unity очень сильно не дружит с дазовскими моделями восьмого поколения (Genesis 8). Возникают ужасные артефакты (впрочем, для какого-нибудь инди-хоррора это интересная находка). Будем посмотреть, как ведут себя модели других, более ранних поколений.

Посмотрел. Третье и восьмое поколения лучше не использовать. Со вторым поколением всё идеально, рекомендую использовать только его.

Проблема я так понял в морфах. Без морфов G3 и G8 более-менее адекватно себя ведут, не разлетаются в лапшу, как с морфами, но все равно возникают какие-то левые кадры.

Reply #13 on: March 30, 2019, 22:13
Итак, без морфов G3/G8 корректно импортируются, с анимацией, одеждой, волосами, формами, со всем, что нужно, надо только в Unity во вкладке Rig у модели выбрать тип анимации "humanoid", ну и при экспорте из DAZ снять галочку с морфов, конечно.

Попробовал импортировать модель из iClone 7, всё отлично импортируется, анимации и материалы корректны. Опять же без морфов, они тут по-моему вообще не предусмотрены (хотя iClone 7 мне еще долго курить, буквально вчера установил впервые).

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

 

With Quick-Reply you can write a post when viewing a topic without loading a new page. You can still use bulletin board code and smileys as you would in a normal post.

Note: this post will not display until it's been approved by a moderator.
Name: Email:
Verification:
Type the letters shown in the picture
Listen to the letters / Request another image
Type the letters shown in the picture:
√49 Напишите ответ строчными буквами:
«Сто одёжек, все без застёжек» — что это?: