κ°λ°νλ€κ° μ¬λ©΄μ, μ¬μ¬ν΄μ Docs 리뷰νλ κΉμ
λ³ΈμΈλ λͺ¨λ₯΄λ€κ° 곡λΆν΄λκ°λ©΄μ μ 리νλ κ²Έ.
μλ λ³ΈμΈ λΈλ‘κ·Έμλ€κ° μμ±ν κΈμ΄μ§λ§. λ§ν¬λ κ±Έμ§ μκ³
μ κ°μ μ΄λ³΄ κ°λ°μλ€μ΄ λμμ΄ λλλ‘ κΈμ μ¨λ΄ λλ€.
[Editor]
λμ¨μ§ 2λ μ λκ² μ§λ¬μ§λ§, μμ§λ New Input System μΌλ‘ λΆλ¦°λ€.
μ λν°μμλ κΈ°μ‘΄μ Input Managerκ° μ¬λ¬ νλ«νΌκ³Ό κΈ°μ’ μ λ°λΌ μ€μ μ λ¬λ¦¬ ν΄μΌνλ λ°©μμμ λ²μ΄λ
μλ‘κ² The Input System ν¨ν€μ§λ₯Ό λ°°ν¬νκ³ μλ€.
κ±°μ λλΆλΆμ κ°λ° μμ κ³Ό κ°μλ€μ Input Manager λ₯Ό κΈ°μ€μΌλ‘
κ°λ₯΄μ³μκ³ , λ§μ κ²μ κ°λ°μλ€μ μ΅μν΄μ§ Input Managerμμ
μλ‘μ΄ New Input SystemμΌλ‘ κ΅μ²΄νκΈ°μλ κ΅³μ΄? μκ°μ λ€μ¬μΌ νλ? μΆμ μλ μλ€.
μ§κΈ μ°λ ν¬μ€ν μ
New Input System μ λν΄ μ² μ ν λΆμν΄μ
λ§μ μ΄λ€μ΄ λμ ν μ μκ²λ λμμ£Όλκ±Έ λͺ©νλ‘ νκ³ μλ€.
λ μ²λΌ μ΅μνμ§ μμΌλ©΄ νλ€μ΄νλ μ΄λ³΄ κ°λ°μλ€νν λμμ΄ λμμΌλ©΄ μ’κ² λ€.
-
The Input System μ μμ μ κ²μμ 컨νΈλ‘€ ν μ μλ μ λ ₯ μ₯μΉλ₯Ό κ΄λ¦¬ ν΄μ£Όλ ν¨ν€μ§μ΄λ€.
κΈ°μ‘΄μ Input Manager μ μ¬μ©κ³Ό λͺ©μ μ΄ μ νν κ°λ€.
κ·Έλ λ€λ©΄, κΈ°μ‘΄ (Old One) μ΄λΌκ³ νννλ μμ€ν λ³΄λ€ λ μ’μμΌ μ¬λλ€μ΄ κ΅μ²΄λ₯Ό κ³ λ―Ό ν κ²μ΄λ€.
(1) Old One, κΈ°μ‘΄ Input Managerμμλ..
Docsμμλ κΈ°μ‘΄ μΈν λ§€λμ (Input Manager) λ κ°κ°μ κΈ°μ’ κ³Ό ν€λ³΄λμ ꡬνν κΈ°λ₯μ
"μ§μ " λ°μΈλ© (binding) ν΄μΌ νλ μμ μ΄ νμνλ€.
λλ μ ν (Jump)λ₯Ό νκ³ μΆμ΄μ, Jump Function() μ ꡬννλ€.
λλ μμ μ κ²μμ΄ νλ μ΄μ€ν μ΄μ λμΌ μΌν¬ ν¨λ, μμ€λ°μ€ μ μ리λ 컨νΈλ‘€λ¬ μ¬μ§μ΄ νΈλν° μ»¨νΈλ‘€λ¬ μ±μ ν΅ν΄μλ μλλκΈΈ λ°λλ€.
κ·Έλ¬λ©΄, λͺ¨λ κΈ°κΈ°λ€μ ν€ λ°μΈλ©μ λ§κ² Jump Function μ λ±λ‘ ν΄μ€μΌ νλ€.
μ΄ ν¬μ€ν μ λͺ©μ μ κΈ°μ‘΄ μμ€ν κ³Ό λΉκ΅κ° μλλΌ
μλ‘μ΄ μμ€ν μ λν νΉμ§μ μ§μ€μ μΌλ‘ μ€λͺ ν μμ μ΄λ€.
(2) λΉμ°ν, μμ λΆνΈν¨μ ν΄κ²°ν΄μ£Όκ³ μ. λμμ μ§κ΄μ μΈ UI μ 곡, κ°νΈνκ² Action μ€μ λ κ°λ₯ν©λλ€.
Input System μ λλΆλΆ νλ«νΌμ μ§μνκ³ , νλ«νΌ λ³κ°μ Action μ²λ¦¬λ κ°λ₯νλ©° ( μ λ ₯, νλ, λ¦΄λ¦¬μ¦ λ±)
κ½€λ μμ λ‘κ² μΉ΄ν κ³ λ¦¬νκ° κ°λ₯νλ€.
Actionλ€μ μνλ ν€λ‘ λ°μΈλ© ν μ μκ³ , Actionμ μ§μ ν μ μλ€.
μ¬μ© λ°©λ²κ³Ό μ€ν¬λ¦½νΈν λ±, μμΈν μ¬μ© λ°©λ² μ€λͺ μ κ³μ λ ν¬μ€ν μμ νκ² λ€.
Docs 리뷰μμ μ μΌ μ€μν 건,
ν΄λΉ APIλ ν¨ν€μ§μ κ°λ° μλμ μ² νμ μ΄ν΄νλ κ²μ΄λ€.
Input Systemμ λ΄κΈ΄ μ² νμ 무μμΈμ§ κ°λ¨νκ² μμ보μ.
(μ¬μ€ κ±°μ κ·Έλ₯ Input νλ‘μ° μ λν μ΄μΌκΈ°λ€.. )
μ¬μ©μ ( User ) : κ²μμ νλ μ΄νκΈ° μν΄ μ·κ±΄μ μΉκ±°λ λ²νΌμ λ§κ΅¬ νμ κ±°λ, λλ λ€ λΌμλ€ νλ λλ¬Όμ΄λ€.
μ λ ₯ κΈ°κΈ° ( Input Device ) : HCI (Human Computer Interaction) μ΄λ‘ μμ λ§νκΈΈ, κ°μ₯ μ€μν μ¬μ©μμ μ»΄ν¨ν°κ°μ μνΈ μμ© λ§€μ²΄μ΄λ€. μ¦, ν€λ³΄λλ€.
μ‘μ (Action) : μ¬μ©μκ° μ λ ₯ κΈ°κΈ°λ₯Ό ν΅ν΄ 컨νΈλ‘€ (Control) μ νμ λ, μλνλ λμμ λ§νλ€. μ€λͺ μ μ΄λ ΅κ² λ§νμ§λ§,
μ νλ λ¬λ¦¬κΈ° λ²νΌ, λνμ°½ μ€ν΅ λ±. μ΄λ€ μΌμ νκΈ° μν νμλ₯Ό λ§νλ€.
μ‘μ λ§΅ (Action Map) : μ‘μ λ€μ μ΄λ€ νΉμ κ·Έλ£ΉμΌλ‘ λ¬Άμ΄μ£Όλλ‘ νλ€. ν΄λΉ μ‘μ λ€μ λμμ μ μ΄ νλ μν μ λ§‘λλ€.
νλ μ΄μ΄λ₯Ό μ μ΄νκ±°λ, κ²μμ λ±μ₯νλ UI λ₯Ό μ μ΄νκΈ° μν μ‘μ λ€μ 컨νΈλ‘€ νλ€.
λ°μΈλ© (Binding) : "λ¬Άλ€" λΌλ μ¬μ μ μ κ·Έλλ‘, μ λ ₯ κΈ°κΈ°μ λ²νΌ μ‘°μ ( Control ) κ³Ό νμ ( Action ) μ λ¬Άμ΄μ£Όλ μ©μ΄μ΄λ€. X λ²νΌμ λλ¬ μ‘°μ΄ μ‘μ μ νλ€κ³ μκ°νμ.
μ€ν¬λ¦½νΈ ( Action Code ) : μ€μ λ‘ μ‘μ μ μν΄ μ΄λ€ λμμ νλμ§λ₯Ό μ μνλ€. μ ν λ²νΌμ λλ λ€λ©΄, μΊλ¦ν°λ₯Ό μ ν μμΌμΌ νλ€. μΊλ¦ν°λ₯Ό μ ν μν€λ ꡬν μ체λ μ€ν¬λ¦½νΈ μμμ ꡬν λμ΄μΌ νλ€. μ‘μ λ€μ Vector, Bool νΉμ Callback ννλ‘ μ¬μ© λλ€.
μ‘μ μμ ( Action Asset ) : μΈν μμ€ν μ μ¬μ©νλ λ°μ μμ΄μ, ν΄λΉ 컨μ μ μ΄ν΄ν΄μΌ νλ€.
μ¬μ©μκ° μ λ ₯ κΈ°κΈ°λ₯Ό μ§μ νκ³ , μ‘μ μ μ μνκ³ , μ λ ₯ κΈ°κΈ°μ μ‘μ μ λ°μΈλ© ν λͺ¨λ μ€μ λ€μ μΌμ’ μ μμ (Asset)μΌλ‘ λ°°ν¬νλ€. μ΄ μμ λ€μ project-wide actions λΌκ³ νλ©° νλ‘μ νΈ μμμ μ½κ² μ°Έμ‘° ν μ μλ€.
μ‘μ μμ μ λν΄ μ€λͺ μ΄ μ λ§€νλ€κ³ μΆμΌλ©΄, μ½λλ₯Ό 보μ.
κ·Έλ₯.. μ λ ₯μ λν Configuration λ€μ΄ λ΄κΈ΄ ν΄λμ€λ₯Ό νλ μ μΈνλ€. λΌκ³ μ΄ν΄νλ©΄ νΈνλ€~
μ λν° μλ¨μ Window -> Package Manager λ₯Ό λλ₯΄κ³ ,
ν΄λΉ μ°½μ Packages:Unity Registry νμΌλ‘ λ³κ²½
λͺ©λ‘μμ Input System μ μ°Ύμ "Install"
κ·Έλ¬λ©΄ μ λν° μ¬μμκ³Ό ν¨κ» ν¨ν€μ§ μ€μΉκ° μλ£λλ€.
μ΄μ λ μ΄λ»κ² ν΄λΉ ν¨ν€μ§λ₯Ό μ¬μ© ν κ²μΈκ°?
Project Setting μμ Player μμ μλ λͺ©λ‘λ€μ μ μ΄μ³λ³΄λ©΄ Configuration μͺ½μ
Active Input Handling ν κΈμ°½μ΄ μ‘΄μ¬νλ€.
ν΄λΉ ν κΈμμ Both λ‘ λ³κ²½νλ€.
*new one μΌλ‘ νλ©΄ μλ‘μ΄ μΈν μμ€ν λ§ μ¬μ©νμ§λ§, λκ° λΆμμ νκ² μλμ§ λμμ μ¬μ©μ κΆμ₯νκ³ μλ€.
μΆμΆ
μ 보μΆ
μ λν° μ½λ¦¬μμμ μ¬λ¦° κ²λ μμΌλ μ°Έκ³ νμλΌκ³
μ΄λ² νλ‘μ νΈμ μ΄κ±°μ°λ€κ° μ§μ§ λ무 μ§μ¦λλ μΌλ€μ΄ λ§μ΄ μ겨μ μμ μΌλ‘ λ체ν΄λ²λ Έλ€... κ·Έκ±° 곡λΆνκ³ μ μ©νκ³ μ½λ©νλ μκ°μ΄ λ무μκΉμμ