본문 바로가기

Unity7

(Unity) Animancer : 코드 기반 애니메이션 시스템 에셋 Animancer Lite | 애니메이션 도구 | Unity Asset Store Use the Animancer Lite tool from Kybernetik on your next project. Find this & more animation tools on the Unity Asset Store. assetstore.unity.com Animancer는 기존 Unity의 Animator Controller를 대체할 수 있는 코드 기반의 애니메이션 시스템 에셋이다. Animancer는 Pro와 Lite 두 가지 버전이 있는데, Pro는 소스코드 및 모든 기능을 포함한 것이고, Lite는 Pro의 기능은 사용할 수 있되, 내부 코어가 소스코드가 아닌 dll로 제공된다. 그리고 에디터에서는 문제 없이 .. 2022. 9. 6.
(Unity) Input System을 이용한 게임패드, 키보드 입력 감지 Steam 게임들을 하다보면 게임패드의 버튼을 누르면 UI가 게임패드 용으로 바뀌고, 다시 키보드를 누르면 UI가 키보드 마우스 용으로 바뀌는 것을 볼 수 있다. 심지어 PS패드, XBOX패드를 각각 따로 감지하여 표시해주는 게임들도 많이 볼 수 있다. Unity에서 기존에 사용하던 Input Manager는 동일한 Input 이름으로 키보드, 게임패드에 둘 다 맵핑이 가능하기 때문에, 입력에 대한 처리를 단순하게 할 수 있다는 장점이 있지만 감지된 Input이 키보드인지, 게임패드인지를 알 수 없다는 단점이 있었다. 새로운 입력 시스템 소개 | Unity Blog 이번 입력 시스템은 처음부터 사용 편의성, 플랫폼 간 일관성 및 유연성을 염두에 두고 만들었습니다. 향후 Unity 2020.1버전과 함께 .. 2022. 8. 15.
(Unity) Certified Expert : Programmer item walkthrough 유니티 공인 Expert Programmer 시험은 5년차 이상의 프로그래머들을 대상으로 하는 최고 등급의 시험인데, 유니티 및 C#에 관련된 스킬 뿐만 아니라 현업에서 일어날 수 있는 기술적 이슈들에 대한 효율적인 의사결정을 본다고 한다. 위 영상은 유니티 공인 Expert Programmer 시험의 샘플 테스트 예제이다. 문제를 한국어로 번역 및 해설해보고자 한다. [문제 1] 4가지 캐릭터를 선택해 플레이할 수 있는 플랫포머 게임이 있다. 점프할 때 캐릭터와 바닥 사이의 거리를 모든 캐릭터에서 동일하게 측정해야 한다. 그리고 게임 디자이너가 인스펙터에서 캐릭터를 개별적으로 설정하고 튜닝할 수 있어야 한다. Q. 프로그래머가 구현할 수 있는 다음 방법들 중에 가장 최선의 선택은 무엇인가? A) bas.. 2022. 8. 1.
(Unity) Inverse Kinematics (역운동학) Inverse Kinematics (이하 IK) 는 운동학을 반대로 계산하는 것을 말한다. 그전에 운동학이 무엇인지 알 필요가 있다. 애니메이션이 가능한 모델들의 본 구조는 거의 전부 트리 형태를 가지고 있다. Root bone에서 부터 각 부위의 끝으로 이어지게 되는데 (Joint Chain이라 한다.), parent bone의 회전이 child bone에게 영향을 주게 된다. 애니메이션은 본의 회전을 미리 정해진 값으로 해서 만들게 되는데, 이를 Foward Kinematics (순운동학) 라고 한다. 기본적으로 Model 의 Pose는 애니메이션의 값을 그대로 쓰면 되는데, 같은 애니메이션을 쓰더라도 Pose가 달라야 하는 경우가 있다. 발을 어딘가에 올려놓는다거나 (계단 올라가기), 손으로 무언가.. 2022. 7. 28.
(Unity) Avatar Mask를 이용한 Humanoid 상,하체 분리 및 회전 FPS, TPS 장르의 게임에서는 애니메이션 처리를 몸 전체로 하지 않고, 상체, 하체 및 몸통을 기본적으로 분리하는게 보통이다. 그 이유는 당연하겠지만, 플레이어가 조준하는 방향으로 캐릭터의 몸통이 회전하고, 달리면서 사격, 달리면서 장전 등 상체와 하체의 애니메이션이 따로 재생되는게 자연스럽기 때문이다. 유니티에서는 Avatar 설정 및 Avatar Mask를 이용해서 모델의 파츠별 분리를 쉽게 할 수 있다. Synty Studio의 Simple Apocalypse에 좋은 예가 있어서 이를 한번 보고자 한다. 오늘 사용할 모델 이 모델의 Animator가 사용하는 Controller 및 Avatar 이다. SA_CharacterAvatar를 먼저 열어본다. 상,하체를 분리하기 위해서는 일단 Avata.. 2022. 7. 27.
(Unity) 기본적인 Spectator Camera Scene 테스트를 할 때 사용하기 유용한 Spectator Camera 코드이다. Main Camera에 추가해서 사용하면 된다. using UnityEngine; public class SpectatorController : MonoBehaviour { [Header("Sensitivity")] public float sensitivityX; public float sensitivityY; [Header("X Axis Rotation Min, Max")] public float minX; public float maxX; [Header("Move Speed")] public float moveSpeed; private bool bCursorLocked = false; private float rotX.. 2022. 7. 20.