Optymalizacja gry i kompilacja jej na androida.

Ogólne pytania na temat Unity3D

Optymalizacja gry i kompilacja jej na androida.

Postprzez TreektusPL » 27 Gru 2018, 13:59

Witam.
Znajdują się w unity jakieś narzędzia, które pokażą mi np. wykorzystanie procesora, pamieci itp. podczas odpalenia gry?
Ogólnie po kompilacji gry na PC gra działa świetnie. Wykorzystanie podzespołów praktycznie się nie zmienia gdyż gra jest bardzo prosta. Jakość również jest bardzo dobra. Niestety po kompilacji tej gry na androida i po uruchomieniu jej, jakość gry jest fatalna (np. pikselowe cienie) i występują wielkie lagi. Wiem, że pc i android posiadają całkiem inne podzespoły ale posiadam gry na telefonie, które mają o wiele lepszą jakość przy większym wykorzystaniu podzespołów i działają bezbłędnie. Może są jakieś ważne opcję do ustawienie podczas kompilacji na androida?
TreektusPL
 
Posty: 33
Rejestracja: 23 Wrz 2018, 20:16
Has thanked: 0 time
Been thanked: 0 time

Re: Optymalizacja gry i kompilacja jej na androida.

Postprzez Palanthir » 27 Gru 2018, 14:57

Mobilne urządzenia jak sam napisałeś maja dużo słabszą moc i mogą lagowac. Tworząc grę na mobile trzeba cały czas brać pod uwagę wydajność i przyglądać się profilerowi. Takie narzędzie to właśnie profiler albo może coś takiego się nada.
Palanthir
 
Posty: 96
Rejestracja: 31 Sie 2017, 16:13
Has thanked: 0 time
Been thanked: 0 time

Re: Optymalizacja gry i kompilacja jej na androida.

Postprzez TreektusPL » 27 Gru 2018, 15:14

Palanthir napisał(a):Mobilne urządzenia jak sam napisałeś maja dużo słabszą moc i mogą lagowac. Tworząc grę na mobile trzeba cały czas brać pod uwagę wydajność i przyglądać się profilerowi. Takie narzędzie to właśnie profiler albo może coś takiego się nada.


O tym narzędziu to ja wiem, tylko że ono mi mało mówi.

Kawałek nagrania z profilera: https://www.youtube.com/watch?v=C5RI4AZ ... e=youtu.be

No wykresy są dość duże i mocno czasami skaczą. Na co najbardziej zwrócić uwagę? Da radę jakoś sprawdzić co powodują te skoki i zobaczyć optymalne zużycie tych podzespołów jakie w miarę powinno być?
TreektusPL
 
Posty: 33
Rejestracja: 23 Wrz 2018, 20:16
Has thanked: 0 time
Been thanked: 0 time

Re: Optymalizacja gry i kompilacja jej na androida.

Postprzez EvilArev » 27 Gru 2018, 20:24

Real-time'owe cienie na telefonach (poza najwyższą półką) to bardzo zły pomysł. Postaraj się opracować styl graficzny, który nie będzie ich wymagał. Poza tym używaj prostych shaderów (mobile lub legacy) i minimalizuj ilość real-time'owych świateł do absolutnego minimum.
EvilArev
 
Posty: 368
Rejestracja: 14 Kwi 2013, 15:32
Has thanked: 0 time
Been thanked: 0 time

Re: Optymalizacja gry i kompilacja jej na androida.

Postprzez TreektusPL » 28 Gru 2018, 11:10

EvilArev napisał(a):Real-time'owe cienie na telefonach (poza najwyższą półką) to bardzo zły pomysł. Postaraj się opracować styl graficzny, który nie będzie ich wymagał. Poza tym używaj prostych shaderów (mobile lub legacy) i minimalizuj ilość real-time'owych świateł do absolutnego minimum.


Shadery ustawia się w Edit>Project Settings>Graphics ?
TreektusPL
 
Posty: 33
Rejestracja: 23 Wrz 2018, 20:16
Has thanked: 0 time
Been thanked: 0 time

Re: Optymalizacja gry i kompilacja jej na androida.

Postprzez Ether_141 » 28 Gru 2018, 11:18

Shader ustawiasz w materiale. Masz np. shader Normal, Bumped Diffuse itd.
Awatar użytkownika
Ether_141
 
Posty: 414
Rejestracja: 29 Sie 2015, 11:47
Has thanked: 0 time
Been thanked: 0 time

Re: Optymalizacja gry i kompilacja jej na androida.

Postprzez TreektusPL » 24 Sty 2019, 20:36

Korzystałem wtedy z "Post Processing Stack" co było mocno zabójcze dla całej gry i samych FPS. Zanim się o tym dowiedziałem, stworzyłem grę od nowa i przeglądałem się co jakiś czas różnym statystykom. Aktualnie jest na pewno lepiej, niż było, lecz na telefonie pojawiają się spadki do 15-25 FPS co jest dość zauważalne i na pewno przeszkadzające.

Shadery każdego materiału są ustawione na Legacy Shaders/Bumped Diffuse.

Ustawienia kamery na każdym poziomie to:
https://zapodaj.net/5dada8df15b16.png.html

Ustawienia światła:
https://zapodaj.net/0c8059bcc94ca.png.html

Lighting:
https://zapodaj.net/c65063e494836.png.html

ProjectSettings>Quality
https://zapodaj.net/97a24bf609dca.png.html

W jaki sposób mogę jeszcze zwiększyć optymalizacje gry?

Dołączam jeszcze build raport: https://pastebin.com/KBdx4Z2U
TreektusPL
 
Posty: 33
Rejestracja: 23 Wrz 2018, 20:16
Has thanked: 0 time
Been thanked: 0 time

Re: Optymalizacja gry i kompilacja jej na androida.

Postprzez Marcin » 24 Sty 2019, 20:59

Wyślij dane z profilera z urządzenia
Marcin
 
Posty: 296
Rejestracja: 25 Lip 2016, 10:44
Has thanked: 0 time
Been thanked: 0 time

Re: Optymalizacja gry i kompilacja jej na androida.

Postprzez dawid621 » 25 Sty 2019, 07:05

Mobilki bardzo nie lubią draw calli, im więcej masz osobnych materiałów na obiektach, tym będziesz miał gorszą wydajność. Rozwiązaniem na ten problem jest tworzenie atlasów textur ręcznie, albo asset który zrobi to za Ciebie: https://assetstore.unity.com/packages/t ... baker-5017.

Koniecznie też na materiałach musisz mieć zaznaczoną opcję "Enable GPU Instancing", co również może znacznie zmniejszyć liczbę draw calli.
dawid621
 
Posty: 185
Rejestracja: 07 Sie 2016, 18:52
Has thanked: 0 time
Been thanked: 0 time

Re: Optymalizacja gry i kompilacja jej na androida.

Postprzez Hostur » 25 Sty 2019, 09:56

Tak jak pisał EvilArev pierwszym tropem powinny być Cienie, wyłącz je całkowicie i sprawdź różnicę, mogą powodować spadek wydajności rzędu np. ze 100fpsów na 2fpsy (z doświadczenia kolegów).
Hostur
 
Posty: 687
Rejestracja: 05 Sie 2015, 07:36
Has thanked: 0 time
Been thanked: 0 time

Następna

Wróć do Wsparcie Unity

Kto jest na forum

Użytkownicy przeglądający to forum: Brak zarejestrowanych użytkowników oraz 1 gość