πŸ“ Game

    [Unreal] μ• λ‹ˆλ©”μ΄νŒ…λœ FBX μ• μ…‹ μž„ν¬νŠΈ

    [Unreal] μ• λ‹ˆλ©”μ΄νŒ…λœ FBX μ• μ…‹ μž„ν¬νŠΈ

    μ–Έλ¦¬μ–Όμ—μ„œ μ œκ³΅ν•˜λŠ” μΌμΈμΉ­, μ‚ΌμΈμΉ­ λ“± ν”„λ‘œμ νŠΈμ— μ™ΈλΆ€ FBX μ• μ…‹μ„ μ μš©ν•΄ λ³Ό κ²ƒμ΄λ‹€. μ–Έλ¦¬μ–Όμ˜ λͺ¨λ“  ν”„λ‘œμ νŠΈλŠ” κΈ°λ³Έ μΊλ¦­ν„°λ‘œ Mannequin을 μ‚¬μš©ν•˜κ³  μžˆλ‹€. μ΄ κΈ°λ³Έ μΊλ¦­ν„°λ₯Ό μ‹€μ œ κ²Œμž„μ—μ„œ ν”Œλ ˆμ΄ν•  μΊλ¦­ν„°λ‘œ λ³€κ²½ν•  κ²ƒμ΄λ‹€.  1. FBX μž„ν¬νŠΈμž„ν¬νŠΈ λ²„νŠΌμ„ 톡해 FBXλ₯Ό μž„ν¬νŠΈ ν•˜λ©΄, λ‹€μŒκ³Ό 같은 μž„ν¬νŠΈ μ˜΅μ…˜ 창이 뜨게 λœλ‹€. Mesh-Auto Generate Collision: μΆ©λŒκ°’μ„ μžλ™μœΌλ‘œ λ§Œλ“€μ–΄μ£ΌλŠ” κΈ°λŠ₯이닀. μž„ν¬νŠΈλ₯Ό ν•˜κ²Œ 되면, λ©”μ‹œμ™€ ν•¨κ»˜ μ—¬λŸ¬ νŒŒμΌλ“€μ„ ν•¨κ»˜ κ°€μ Έμ˜¨ 것을 확인할 수 μžˆλ‹€. νŠΉμ • νŒŒμΌμ„ κ°€μ Έμ˜¬μ§€ λ§μ§€λŠ” μ˜΅μ…˜μ„ 톡해 μ •ν•  수 μžˆλ‹€. μŠ€μΌˆλ ˆν†€: μŠ€μΌˆλ ˆνƒˆ λ©”μ‹œμ—μ„œ μ‚¬μš©ν•˜λŠ” 뼈 κ΅¬μ‘°μŠ€μΌˆλ ˆνƒˆ λ©”μ‹œν”Όμ§μŠ€ μ• μ…‹: μ• λ‹ˆλ©”μ΄μ…˜ λŒ€μ‘ μ½œλ¦¬μ „ λ°μ΄ν„°μ• λ‹ˆλ©”μ΄μ…˜ μ‹œν€€μŠ€: μ• λ‹ˆλ©”μ΄μ…˜λ¨Έν„°λ¦¬μ–Ό μ΄λ ‡..

    [Unreal][C++] 1인칭 μŠˆνŒ… νŠœν† λ¦¬μ–Ό

    [Unreal][C++] 1인칭 μŠˆνŒ… νŠœν† λ¦¬μ–Ό

    1인칭 μŠˆνŒ… νŠœν† λ¦¬μ–Όhttps://docs.unrealengine.com/5.3/ko/first-person-shooter-tutorial-in-unreal-engine/ μΌμΈμΉ­ μŠˆνŒ… C++ νŠœν† λ¦¬μ–ΌμΌμΈμΉ­ μŠˆνŒ… κ²Œμž„ λ©”μ»€λ‹ˆμ¦˜ κ΅¬ν˜„ 방법을 λ°°μ›Œλ΄…λ‹ˆλ‹€.docs.unrealengine.com 1. ν”„λ‘œμ νŠΈ κ΅¬μ„±ν•˜κΈ°1) ν”„λ‘œμ νŠΈ μƒμ„±μƒˆ ν”„λ‘œμ νŠΈ λ‚΄ 맡을 μƒμ„±ν•˜κ³ , κ·Έ 맡을 에디터 μ‹œμž‘ 맡으둜 μ§€μ •ν•œλ‹€. κ²Œμž„ ν”„λ‘œμ νŠΈ μΉ΄ν…Œκ³ λ¦¬ λ‚΄ κΈ°λ³Έ(Blank) ν…œν”Œλ¦Ώ 선택C++ ν”„λ‘œμ νŠΈ νƒ€μž… μ„ νƒμ‹œμž‘μš© μ½˜ν…μΈ  λΉ„ν™œμ„±ν™”ν”„λ‘œμ νŠΈ 이름 FPSProject 지정 FPS 맡 μƒμ„±ν”„λ‘œμ νŠΈ μ„ΈνŒ…μ—μ„œ 에디터 μ‹œμž‘ 맡 μ„€μ • 2) κ²Œμž„λͺ¨λ“œ C++ ν΄λž˜μŠ€λ₯Ό λΈ”λ£¨ν”„λ¦°νŠΈ 클래슀둜 ν™•μž₯ν•˜κΈ°κ²Œμž„λͺ¨λ“œ C++ 클래슀λ₯Ό 베이슀둜 λΈ”λ£¨ν”„λ¦°νŠΈ 클래슀λ₯Ό μƒμ„±ν•œ ..

    [Unreal][Lyra] 캐릭터

    [Unreal][Lyra] 캐릭터

    1. Native Parent Class λΌμ΄λΌμ—λŠ” λ‹€μ–‘ν•œ κ²½ν—˜κ³Ό 레벨이 μžˆλŠ” 만큼 각각 λ‹€λ₯Έ Pawn을 μ‚¬μš©ν•˜κ³  μžˆλ‹€. 보톡 Pawn듀은 λ”°λ‘œ κ°œλ°œλ˜λŠ” 것이 μ•„λ‹Œ ν•˜λ‚˜μ˜ ν΄λž˜μŠ€μ—μ„œ νŒŒμƒλ˜μ–΄ κ·Έ λΆ€λͺ¨ 클래슀λ₯Ό 상속받고 νŠΉμ„±μ΄ 따라 μžμ‹ 클래슀 μ•ˆμ—μ„œ λ‹€λ₯΄κ²Œ 개발되게 λœλ‹€. μ΄λŸ¬ν•œ Pawnλ“€μ˜ Native Parent ClassλŠ” λ°”λ‘œ LyraCharacter이닀. μ—¬κΈ°μ„œ Native Parent Classλž€ C++에 μ •μ˜λœ λΆ€λͺ¨ ν΄λž˜μŠ€μ΄λ‹€. λ§Œμ•½ A λΈ”λ£¨ν”„λ¦°νŠΈ 클래슀λ₯Ό λ‹€λ₯Έ B λΈ”λ£¨ν”„λ¦°νŠΈ ν΄λž˜μŠ€μ—μ„œ νŒŒμƒν•  경우, A의 λΆ€λͺ¨ ν΄λž˜μŠ€λŠ” B λΈ”λ£¨ν”„λ¦°νŠΈ 클래슀둜 λ‹¬λΌμ§ˆ 수 μžˆμ§€λ§Œ Native Parent ClassλŠ” μ—¬μ „νžˆ B의 Native Parent Classλ₯Ό λ”°λΌκ°ˆ 것이닀. 2. LyraCharacter..

    [Unreal][Lyra] ν–₯μƒλœ μž…λ ₯

    [Unreal][Lyra] ν–₯μƒλœ μž…λ ₯

    1. ν–₯μƒλœ μž…λ ₯ ν–₯μƒλœ μž…λ ₯은 λ³΅μž‘ν•œ μž…λ ₯ μ²˜λ¦¬μ™€ μ‹€μ‹œκ°„ μž…λ ₯ 리맀핑을 μœ„ν•œ μž…λ ₯ 처리 μ‹œμŠ€ν…œμ΄λ‹€. λΉ λ₯Έ 반볡 μž‘μ—…κ³Ό λͺ¨λ“ˆμ„± μ• μ…‹ 기반 ν™˜κ²½μ—μ„œ μ›μ‹œ μž…λ ₯ λ°μ΄ν„°μ˜ 필터링 및 처리λ₯Ό ν™•μž₯ν•  수 μžˆλŠ” λŠ₯λ ₯ 제곡 ν–₯μƒλœ μž…λ ₯을 μ‚¬μš©ν•˜λ €λ©΄, ν”ŒλŸ¬κ·ΈμΈ ν™œμ„±ν™” 및 μž…λ ₯ μ„ΈνŒ…μ„ λ³€κ²½ν•΄μ•Ό ν•œλ‹€. 1) μž…λ ₯ μ•‘μ…˜(Input Actions) μž…λ ₯ μ•‘μ…˜μ€ ν–₯μƒλœ μž…λ ₯ μ‹œμŠ€ν…œκ³Ό ν”„λ‘œμ νŠΈ μ½”λ“œ μ‚¬μ΄μ˜ 톡신 링크이닀. μƒν˜Έμž‘μš© μΊλ¦­ν„°μ˜ μ–΄λ–€ 행동이든 μž…λ ₯ μ•‘μ…˜μ΄ 될 수 μžˆλ‹€. 쀍기(on/off), κ±·κΈ°(μΆ•) λ“± μ•‘μ…˜ νŠΉμ§•μ— 따라 μž…λ ₯ κ°’ νƒ€μž…μ΄ λ‹¬λΌμ§ˆ 수 μžˆλ‹€. 폰 ν΄λž˜μŠ€κ°€ 트리거 된 μž…λ ₯ μ•‘μ…˜μ— λ°˜μ‘ν•˜κ²Œ ν•˜λ €λ©΄ λΈ”λ£¨ν”„λ¦°νŠΈ κ·Έλž˜ν”„μ— 이벀트λ₯Ό μΆ”κ°€ν•΄μ•Ό ν•œλ‹€. 각 μž…λ ₯ μ•‘μ…˜μ€ ν•΄λ‹Ήν•˜λŠ” μ• μ…‹ 이름을 가진 이벀트λ₯Ό μƒμ„±ν•œλ‹€. 이후 ..

    [Unreal][Lyra] κ²Œμž„ν”Œλ ˆμ΄ μ–΄λΉŒλ¦¬ν‹° μ‹œμŠ€ν…œ(GAS)

    [Unreal][Lyra] κ²Œμž„ν”Œλ ˆμ΄ μ–΄λΉŒλ¦¬ν‹° μ‹œμŠ€ν…œ(GAS)

    1. κ²Œμž„ν”Œλ ˆμ΄ μ–΄λΉŒλ¦¬ν‹° μ‹œμŠ€ν…œ(Gameplay Ability System) GASλŠ” μ–΄λΉŒλ¦¬ν‹° 및 μ–΄νŠΈλ¦¬λ·°νŠΈ μœ ν˜•μ„ κ΅¬μΆ•ν•˜κΈ° μœ„ν•œ ν”„λ ˆμž„μ›Œν¬μ΄λ‹€. λΉ λ₯Έ 반볡 μž‘μ—…κ³Ό λͺ¨λ“ˆμ„±: μ ν”„μ²˜λŸΌ λ‹¨μˆœν•œ 것뢀터 기술 λͺ¨μŒμ²˜λŸΌ λ³΅μž‘ν•œ κ²ƒκΉŒμ§€ λ‹€μ–‘ν•œ μΈκ²Œμž„ μ–΄λΉŒλ¦¬ν‹°λ₯Ό 섀계 및 κ΅¬ν˜„ν•˜κ³  효과적으둜 μ—°κ²°ν•  수 μžˆλ‹€. λ„€νŠΈμ›Œν¬ λ¦¬ν”Œλ¦¬μΌ€μ΄μ…˜ GAS의 μ£Όμš” κ°œλ…μ€ λ‹€μŒκ³Ό κ°™λ‹€. μ–΄λΉŒλ¦¬ν‹° μ‹œμŠ€ν…œ μ»΄ν¬λ„ŒνŠΈ(Ability System Component) κ²Œμž„ν”Œλ ˆμ΄ μ–΄λΉŒλ¦¬ν‹° μ‹œμŠ€ν…œκ³Ό μƒν˜Έμž‘μš©ν•˜λŠ” 앑터에 λΆ™λŠ” μ»΄ν¬λ„ŒνŠΈμ΄λ‹€. μ–΄λΉŒλ¦¬ν‹°λ₯Ό ν™œμ„±ν™”ν•˜κ³ , μ–΄νŠΈλ¦¬λ·°νŠΈλ₯Ό μ €μž₯ν•˜κ³ , μ΄νŽ™νŠΈλ₯Ό μ—…λ°μ΄νŠΈν•˜κ³ , μ•‘ν„° κ°„ μƒν˜Έμž‘μš©μ„ μ²˜λ¦¬ν•œλ‹€. κ²Œμž„ν”Œλ ˆμ΄ μ–΄λΉŒλ¦¬ν‹°(Gameplay Abilities) UGameplayAbility 클래슀의 C++ λ˜λŠ” λΈ”λ£¨ν”„λ¦°νŠΈ ..

    [Unreal][Lyra] λͺ¨λ“ˆν˜• κ²Œμž„ν”Œλ ˆμ΄, κ²Œμž„ ν”Όμ²˜ ν”ŒλŸ¬κ·ΈμΈ, κ²½ν—˜

    [Unreal][Lyra] λͺ¨λ“ˆν˜• κ²Œμž„ν”Œλ ˆμ΄, κ²Œμž„ ν”Όμ²˜ ν”ŒλŸ¬κ·ΈμΈ, κ²½ν—˜

    1. λͺ¨λ“ˆν˜• κ²Œμž„ν”Œλ ˆμ΄ κ²Œμž„ν”Œλ ˆμ΄ ν”„λ ˆμž„μ›Œν¬μ—μ„œ μ œκ³΅ν•˜λŠ” λͺ¨λ“ˆν˜• κ²Œμž„ν”Œλ ˆμ΄λŠ” ν•˜λ‚˜μ˜ κΈ°λŠ₯을 독립적인 λΆ€ν’ˆμœΌλ‘œ λΆ„λ¦¬ν•˜μ—¬ κ΄€λ¦¬ν•˜λŠ” κ²ƒμœΌλ‘œ μ™„μ „νžˆ μœ μ—°ν•œ κ²Œμž„ν”Œλ ˆμ΄ μ œμž‘μ΄ κ°€λŠ₯ν•˜λ„λ‘ λ§Œλ“€μ–΄μ€€λ‹€. 2. κ²Œμž„ ν”Όμ²˜ ν”ŒλŸ¬κ·ΈμΈ 1) ν”ŒλŸ¬κ·ΈμΈ ν”ŒλŸ¬κ·ΈμΈμ€ 언리얼 엔진에 νŠΉμ • κΈ°λŠ₯을 μΆ”κ°€ν•΄ μ£ΌλŠ” 선택적 μ†Œν”„νŠΈμ›¨μ–΄ μ»΄ν¬λ„ŒνŠΈμ΄λ‹€. ν”ŒλŸ¬κ·ΈμΈμ„ μ΄μš©ν•΄ 언리얼 엔진 μ½”λ“œλ₯Ό 직접 μˆ˜μ •ν•˜μ§€ μ•Šκ³  μ™„μ „νžˆ μƒˆλ‘œμš΄ κΈ°λŠ₯을 μΆ”κ°€ν•˜κ±°λ‚˜ λ‚΄μž₯된 κΈ°λŠ₯을 μˆ˜μ •ν•  수 μžˆλ‹€. 예λ₯Ό λ“€μ–΄ μƒˆ 메뉴 ν•­λͺ©κ³Ό νˆ΄λ°” λͺ…령을 에디터에 μΆ”κ°€ν•˜κ±°λ‚˜, 심지어 μ™„μ „νžˆ μƒˆλ‘œμš΄ κΈ°λŠ₯ λ°‘ 에디터 μ„œλΈŒ λͺ¨λ“œλ₯Ό μΆ”κ°€ν•  μˆ˜λ„ μžˆλ‹€. 2) κ²Œμž„ ν”Όμ²˜ ν”ŒλŸ¬κ·ΈμΈ λͺ¨λ“ˆν˜• κ²Œμž„ν”Œλ ˆμ΄μ˜ κ·Όκ°„μ΄μž κ°€μž₯ μ€‘μš”ν•œ μ‹œμž‘ ν¬μΈνŠΈμ΄λ‹€. κΈ°μ‘΄ κ²Œμž„μ—μ„œλŠ” κΈ°λ³Έ ꡬ성 λ™μž‘ 방식듀을 κ²Œμž„μ— λ‹€ ν¬ν•¨ν•˜κ³  μ½˜ν…..