μλ νμΈμ!
μ΄λ²μλΒ μλλ‘μ΄λμμΒ κ²μμ μ΅μ ν νλ κ³Όμ μΒ μ 보 곡μ λΒ κ²Έν΄μ μλλ€.
----------------------
μΌλ§μ μ μ€λλ§μ νΈλν°μμ κ²μμ λλ €λ³΄λ€κ° λ μ΄ μκ°λ³΄λ€ μ¬κ°νλ€λ μ¬μ€μ λ°κ²¬νμ΅λλ€.
λΆλͺ μλ μλ μ©μ©νκ² λμκ°μκΈ° λλ¬Έμ, μ λλ €μ§ κ±΄μ§ μμΈμ μμλ΄κΈ°λ‘ νμ΅λλ€.
1. μ λν° νλ‘νμΌλ¬λ‘ μ°Ύμ보기
κΈ°λ³Έ λ΄μ₯ νλ‘νμΌλ¬μ λλ€.
development buildλ₯Ό ν€κ³ apkλ₯Ό λΉλνκ³ , adbλ λ‘컬 λ€νΈμν¬λ‘ μ±μΒ μ°κ²°ν΄μ λ³Ό μ μμ΅λλ€.
μ€μ κ²μμ€μΒ λ μ΄ λΉ‘!νκ³ κ±Έλ¦¬λ λΆλΆμ΄ μλλ°, JITκ° λλΆλΆ μμΈμ΄μμ΅λλ€.
κ·Έλ°λ° μ΄κ±΄Β ν΄κ²°νκΈ°κ° κΉλ€λ‘μ μ΅λλ€. μ½λλ₯Ό νλ² λλ €μ€μΌνλλ°, κ°μ΄ μμ‘νμ΅λλ€.
κ·Έλμ κ·Έλ₯ IL2CPPλ₯Ό μ°κΈ°λ‘ νμ΅λλ€. (μμΈν λ΄μ©μΒ https://blogs.unity3d.com/kr/2015/09/22/kr-csharp-compile-il2cpp/Β μ°Έκ³ )
κ·Έλ°λ° μ€νν¬λ₯Ό μ‘κΈ΄ νμ§λ§, μ 체μ μΌλ‘ νλ μμ΄ λ¨μ΄μ§λ 건 μ¬μ ν ν΄κ²°λμ§ μμμ΅λλ€.
λλ¦° λΆλΆμ μ°Ύμλ΄€μ§λ§Β λ±ν λ¬Έμ κ° λ λ§ν λΆλΆμ μμ΄ λ³΄μμ΅λλ€.
λ€λ§ μ λν° μ΄λ²€νΈ μμ€ν μ΄ μκ°λ³΄λ€ λ§μ΄ λ¨Ήμλλ° μ΄κ±΄ μΊλ²μ€μ μΈλ°μμ΄ raycastTargetμ΅μ μ λ§μ΄ μΌ°λ κ² μμΈμ΄μμ΅λλ€.
2. νλ μ λλ²κ±°
μ΄κ²λ μ λν° λ΄μ₯ ν΄μΈλ°, μ ν¬λ μ£Όλ‘ λ°°μΉμ΄ μ λλ‘ λλμ§λ₯Ό νμΈν λ μ¬μ©νκ³ μμ΅λλ€.
λ μ΄ μ¬νκ² κ±Έλ¦¬λ μ₯λ©΄μμ κ·Έλ¦Όμ λ°°μΉμ΄ μλκ³ μλ€λ κ±Έ νμΈν΄μ κ³ μ³€μ΅λλ€.
κ³ μΉκ³ λ€λ μ‘°κΈ λΉ¨λΌμ§ κ² κ°μ λλμ΄ λ€μλλ°, μμ μλ μ κ·Έ μ©μ©ν λλμ μλμμ΅λλ€.
κ·Έλ¦¬κ³ λ€λ₯Έ μ₯λ©΄μ ν μ€νΈν΄λ³΄λ μ¬μ ν λλ Έμ΅λλ€.
3. Mali Graphics Analyzer
λ λλ§νλ κ² λλ¦° 건 λμΆ© μμλλ°, μ νν μ΄λ€ μμλ₯Ό 그리λλΌ λλ¦° κ±΄μ§ μ μ μμμ΅λλ€.
μ΄ λ μ μ©ν κ² κ·Έλν½μΉ΄λ νμ¬μμ λ°°ν¬νλ λΆμ ν΄λ€μ λλ€.
νμ§λ§ μ΄κ² μ’ λ³΅λΆλ³΅μ΄ μ’ μμ΅λλ€.
νΈλν°λ§λ€ ν΄μ΄λΒ νΈνμ΄ μ λλ κ²λ μκ³ , μ λλ κ²λ μμ΅λλ€.
μ λ κ°€λμS6λ₯Ό μ¨μ Mali Graphics Analyzerλ‘ ν μ€νΈν΄λ΄€λλ°, λ€λ₯Έ 건 λ€ λλλ°Β μ μ μ€μν Fragment Count μ 보λ₯Ό λͺ»μ»μ΄μμ΅λλ€.
μλ μλ λΆλͺ μΒ λλλ°, λκ° λ²μ μ΄ κΌ¬μ΄λ©΄μ μ μλκ² λ κ² κ°μ΅λλ€.
μ€λ μκ° μ½μ§μ ν΄λ΄€μ§λ§, λμ ν λ¬Έμ λ₯Ό ν΄κ²°ν μ μμμ΅λλ€.
κ²°κ΅ λ€λ₯Έ λ°©λ²μ μ°ΎκΈ°λ‘ νμ΅λλ€.
4. κ°μ’
ν΄λ€
λͺ¨λ°μΌμμ λλ¦° 건 PCμμλ λ릴 κ±°λΌκ³ μκ°ν΄μ(λΉμ¨μ μΌλ‘) PCμμλ μ¬λ¬κ°μ§ κ²μ¬λ₯Ό ν΄λ΄€μ΅λλ€.
νμ§λ§ ν΄μ΄ λμμ μ νλλ°,Β λμλ λ§νΒ μ 보λ μλμμ΅λλ€.
κ·Έλμ μ΄ λ°©λ²μ μΌλ¨ 보λ₯νκΈ°λ‘ νμ΅λλ€.
5. systrace
μ λν° 2019.1λΆν° systraceλ₯Ό μ§μνλ€κ³ Β ν΄μ μλλ‘μ΄λ μ€νλμ€λ‘ νλ‘νμΌλ§μ ν΄λ΄€μ΅λλ€.
νμ§λ§ λ무 κ°κ΄μ μΈ λ΄μ©λ§ λμμ μ΄λ€ μμκ° λλ¦° 건μ§Β μ μκ° μμμ΅λλ€.
μ΄κ±΄ μ κ° μΈν μ μ λλ‘ μν΄μ κ²°κ³Όκ° μ΄μνκ² λμ¨ κ² κ°μλ°, (μλ μ’ λ μμΈνκ² λμμΌν¨)
무μμ μλͺ»νλμ§ μ μκ° μμ΄μ μΌλ¨ 보λ₯νκΈ°λ‘ νμ΅λλ€.
7. simpleperf
ꡬκΈλ§ λμ€μ simpleperfκ° μ’λ€λ κΈμ λ³΄κ² λμμ΅λλ€. (https://www.slideshare.net/JaeseungHa/ndc2018-96510072)
κ·Έλμ λ°λΌν΄λ΄€λλ°, μ²μμλ μ λλ‘ λμ§ μμμ΅λλ€.
μμΈμ μΌμ±ν°μμ adb run-as λͺ λ Ήμ μ§μνμ§ μλλ€λ κ²μ΄μμ΅λλ€.
κ·Έλμ κ²°κ΅ μ΄μ© μ μμ΄ λ£¨ν μ ν΄μ λ¬Έμ λ₯Ό ν΄κ²°νμ΅λλ€.
κ·Έλ¦¬κ³ λͺμκ°μ κ±ΈμΉ μ½μ§ λμ κ²°κ΅ λ°μ΄ν°λ₯Ό λ½λλ° μ±κ³΅νμ΅λλ€
μ΄μ κΉμ§λ λ€λ₯΄κ² κ²°κ³Όκ° μμΈνκ² λμ€λΒ μλΉν μ μ©νμ΅λλ€.
μΈλ°μμ΄ λκ³ μλ μ½λ£¨ν΄λ λ°κ²¬ν΄μ μ κ±°νκ³ , μ¬λ¬ λλ¦° λΆλΆμ κ³ μ³€μ΅λλ€.
보μλ€μνΌ λ¬Όλ¦¬ contact callbackμ μ€λ²ν€λκ° ν¬λ€λ μ¬μ€λ λ°κ²¬νμ΅λλ€.
μ€μ μ΄λ²€νΈλ₯Ό λ°κ³ μ½λκ° μ€νλλ λΆλΆμ μ λ κ² μμλ°, κ·Έκ±Έ νκΈ° μν μ€λΉ μμ μ μ λ κ²λ ν½λλ€.
κ·Έλμ κ΄λ ¨λ λΆλΆμ κ³ μΉκ³ ,Β μ΄ μΈμλ μμμμνκ² λλ¦° λΆλΆλ€μ κ³ μ³€μ΅λλ€.
κ·Έ κ³Όμ μμΒ JobSystemλ μ μ©ν΄λ΄€λλ° λ°λλ½ λ¬Έμ λλ¬ΈμΒ λ€μ λ‘€λ°±νκΈ°λ νμ΅λλ€.
8. λ©ν°μ€λ λ λ λλ§
κ·Έλ°λ° μ΄λ κ²κΉμ§ μ½λλ₯Ό μ₯μ‘λ―μ΄ μ‘μλλ°λ, μ¬μ ν λκ° μμν λλμ΄ μκΈ°μ§ μμμ΅λλ€.
κ·Έλ¬λ€κ° μ°μ°ν νλ‘μ νΈ μΈν μμ λ©ν°μ€λ λ λ λλ§μ΄ κΊΌμ Έμλ€λ μ¬μ€μ λ°κ²¬νμ΅λλ€.
μμ μ λ©ν°μ€λ λ λ λλ§μ΄ νλΒ λΆμμ ν΄μ κΊΌλ¨μλλ°, μνμΌμ΄ μΌμ λΉλλ₯Ό ν΄λ΄€μ΅λλ€.
κ²°κ³Όλ λλΌμ μ΅λλ€.
λ± μμ μ κ·Έ μ©μ©ν λλμ΄ λ°λ‘ μ¬νλμ΅λλ€.
λͺμΌκ°μ μ½μ§μ΄ 무μνκ²λ λΉ¨λΌμ‘μ΅λλ€.
νλ μκ·Έλνλ‘ νμΈν΄λ³΄λ νμ€ν λ©ν°μ€λ λ λ λλ§μ΄ λμμ΄ λλ κ±Έ νμΈν μ μμμ΅λλ€.
(λ©ν°μ€λ λ λ λλ§ off)
(λ©ν°μ€λ λ λ λλ§ on)
λ λλ§ μ°λ λκ° λ¨Ήλ μκ°κ³Ό λ©μΈ μ°λ λκ° λ¨Ήλ μκ°μ΄ λΉμ·ν©λλ€. κ·Έλ κΈ° λλ¬Έμ CPU μμμ ν¨μ¨μ μΌλ‘ μ°κ²λλ μ μ λλ€.
κ²°λ‘ μ λ©ν°μ€λ λ λ λλ§μ ν€μ.
μ½μ΄μ£Όμ μ κ°μ¬ν©λλ€!
------------------- μ΄μ κΈ ---------------------
7νΈ μ€νλΌμ΄νΈ μμ μ²λ¦¬
10νΈ κ·Έλν½ λ¦¬μμ€ μ μκ³Όμ
11νΈ λ 벨 νλ‘ν νμ μμ
--------------------------
μλ μ§μ§λ€
μ¬κΈ° μ°λ° μΈμ루μ μ£Όλμ΄ κ°λ°μλ€κ³Όλ μ°¨μμ΄ λ€λ₯΄μκ΅°μ
μΌμ§μΆ
γ±γ
μ΄κ±° νΌμ¨κ²μΈμ€μμλλ λͺ¨λ°μΌμ΄μꡬλ...
PC, λͺ¨λ°μΌ λͺ¨λ μ€λΉμ€μ λλ€γ γ