유니티 공부 4

유니티 이미지 크기 조정 시 보정 하는 법

원본 스프라이트 Sprite Editor 에서 자신이 변경되지 않고 싶은곳의 범위를 설정한다. 오른쪽 하단 Border를 이용 했다. 1 . 아무것도 설정 안함 것 : 크기 100 : 50 2 . 아무것도 설정 안함 것 : 크기 500 : 300 3 . 아무것도 설정 안함 것 : 크기 700 : 300 4 . Image 타입을 Sliced로 설정 : 크기 700 : 300 5. Image 타입을 Sliced로 설정 , 그밑에 Pixels Per Unit Muliplier를 0.2 로 설정 0.1 ~ 1 하는것을 추천 : 크기 700 : 300

유니티 공부 2022.03.28

유니티 UI RectTransform 이용해서 크기/위치

우선 UI 정보를 가지고 있는 패널을 만든다. 글자의 내용에 따라 텍스트의 박스 크기조정을 위해 Content Size Fiter를 추가한다. 세로로만 조절하게 옵션 적용 피봇 설정 0 ,1 로 그래야 밑으로 자연습럽게 늘어난다. 스크립트에 오브젝트를 만들고 유니티에서 적용 RectTransform도 찾아서GetComponet로 찾아 적용 언제든 변경이 가능하게 업데이트에서 적용 tempVec : 계산용 Vrector3 변수 160 : 텍스트 위에 그림이나 아이템이름 등 나타낼 패널 기본 크기 m_ItemInfoTxtRect.sizeDelta : 아이템 정보 텍스트에 Content Size Fiter가 적용해준 y ( 세로 크기 ) 만큼 가져온다. m_ItemPanelRect.sizeDelta : 전체 ..

유니티 공부 2022.03.26

스킬의 사용 방향을 마우스 가 있는 곳으로 뱡향 잡기

스킬 사용시 마우스 방향으로 캐릭터를 회전시키고 스킬 활용 //마우스 위치 Ray m_MouseRay; Vector3 m_MousePos; RaycastHit hitInfo; LayerMask m_LayerMask = -1; Vector3 m_DirVec; 마우스 피킹을 위한 변수 선언 m_LayerMask = 1 마우스 위치 방향 백터를 구한다. transform.LookAt(m_MousePos); 우선 이렇게 하면 캐릭터가 마우스 좌표쪽을 바라본다. 이제 스킬의 이펙트 위치를 잡는 법이다. m_Skill02Pos = transform.position + m_DirVec * m_Skill02Range; m_Skill02Pos.y = 0.02f; m_Skill02Mark.transform.SetPosit..

유니티 공부 2022.03.16

애니메이션 중간 타이밍 잡기

애니메이션을 사용할 때 원하는 모션이나 원하는 타이밍에 나왔으면 하는 이벤트가 있을 때 사용하면 좋다. 만약 공격하는 애니메이션이 있는데 애니메이션이 시작할때 데미지 판정이 들어가면 이상할 것이다. 그러니 중간 지점이나, 휘두르는 타이밍을 잡는 것이다. 인터넷에 보면 애니메이션 이벤트를 이용하는 함수를 호출하는 방법이 있지만 나는 코루틴을 이용해서 원하는 타이밍에 함수를 호출하는 방법을 사용하였다. Animator animator = null; //애니메이터 IEnumerator NormalAttack() { while (animator.GetCurrentAnimatorStateInfo(0).normalizedTime < 0.2f) // 특정 구간 전까지 반복 yield return null; //데미지..

유니티 공부 2022.03.14