분류 전체보기 123

유니티 인풋 필드(Input Field)

인풋필드란?Input Field 는 키보드나 터치패드를 이용하여 문자열을 입력할 때 상호작용을 목적으로 쓰이는유니티 오브젝트입니다. 주로 아이디나 패스워드를 입력하거나 채팅창등을 구현하기 위해 사용됩니다. 생성하는 방법 인풋필드를 생성하는 방법은 유니티의 Hierarchy 창에서 우클릭을 하여 생성할 수 있습니다.인풋필드를 생성할 때 TextMeshPro 와 일반 인풋필드를 볼수 있는데여기서 TextMeshPro는 포인트 크기가 변하거나 해상도가 변해도 글자가 깨지지 않는다는 특징이 있습니다. 또한 최적화가 잘되어있어 TMP가 유료였던 시절에도 기존의 텍스트 오브젝트보다 사용자들이 많이 찾았다고 합니다. 그래서 저도 한번 InputField - TMP 를 활용하여 과제를 해보자 마음 먹고 글을 정리해보려..

자료 관리 2024.10.12

2024 10 11 TIL

과제 제출기간이 얼마 남지 않은 관계로 간략하게만 TIL을 제출하려 합니다. 오늘 발생하였던 문제 사항은 코드적 문제라기보단 기술적인 문제가 많았던 것 같습니다.파일 탐색기의 오류로 인해 유니티의 파일이 정상적으로 지워지지 않는다던가 지금도 아래 사진처럼알림이 가운데서 사라지지 않아 좀 불편함을 겪고 있습니다.  원드라이브 용량이 가득차서 우클릭을 해도 먹통이 되어 눌리지 않는다던가 뭔가 뜻대로 풀리는 하루는 아니었던 것 같습니다.   오늘은 과제를 진행하면서 다른 자료들을 참고하여 카메라가 캐릭터를 따라 조작되게 하였습니다. 해당 방법은 카메라의 위치를 계속 플레이어가 있던 위치로 옮기면서 따라가게 합니다.   //카메라를 붙이는 대상 public GameObject player; //..

TIL 2024.10.11

2024 10 10 TIL

강의 진도를 나가며 이전의 코드들을 세분화하여 폴더를 만드는 것을 진행하였다.기능별로 폴더를 정리한 후 오브젝트에 연결된 스크립트들이 오류가 발생하여 찾을 수 없는 문제가 발생하였다.Reimport All을 사용하여 프로젝트내 모든 파일을 다시 불러오기하여 문제가 해결되었다.강의를 진행하며 느낀점은 알 것 같으면서도 모르겠는? 그런 느낌이다. 여러번 돌려보면서도 이해가 안되는 부분이 많고검색과 질문을 통해 조금씩 이해해가는 중이다.내일 할일을 미리 정해두자면 강의 진도 13강까지 그리고 개인과제 진도나가기 정도로 생각해두고있다.

TIL 2024.10.10

캐스팅 연산자 as

강의를 시청하다 as 연산자를 처음 봐서 이해가 안되어 정리해보는 시간을 가지게 되었습니다. 먼저 찾아보려던 as 연산자에 대해 알아보다 캐스팅 연산자라는 개념을 알게 되었습니다.캐스팅 연산자라는 것은 상속관계의 클래스간에 형변환이 필요할 때 사용합니다. as라는 키워드도 상속관계의 클래스의 형변환 여부를 알아보기 위해 사용하는 듯 합니다. 강의를 들으며 작성한 코드의 일부를 가져왔습니다.[대충 어택SO의 매개변수를 받는 함수](AttackSO attackSO){ RangedAttackSO rangedAttackSO = attackSO as RangedAttackSO; if (rangedAttackSO == null) return; . . . } 해당 코드 RangedAtta..

자료 관리 2024.10.10

2024 10 08 TIL

오늘 한 것은 9강까지 강의 진도를 나갔고 질문을 통해 델리게이트를 사용하는 원리와 개념을 익혔습니다.  아직도 적절하게 써보라고 한다면 분명 술술 쓴다하진 못할 것 같기에 Debug.Log 를 통해 어디서부터 동작하는 지 하나하나 살펴보며 익히는 것이 답인 듯 합니다. 질문을 하는 것도 좋지만 결국 나 자신이 먼저 이것을 스스로 해봐야 한다고 생각하여 하루종일 같은 코드를 좀 많이 굴려본듯 합니다. 이제 화살이 발사되었을 때 도전과제를 좀 더 생각해보고 완성시켜보려합니다. 과제 상황은 일단 강의 내용을 인용하여 캐릭터를 움직이고 마우스 커서를 따라가게 하며 기본적인 맵의 구성을 마친 상태입니다.다음에 할 것은 카메라가 플레이어의 이동에 따라 시점이 같이 움직이는 것 부터 할듯합니다.  공휴일동안 쉬는 ..

TIL 2024.10.08

델리게이트, Event

델리게이트는 메서드를 변수처럼 저장하여 사용하기 위한 사용법입니다. 함수의 복사본을 받아넣어 사용하는데 델리게이트로 선언한 반환형과 매개변수가 같아야만델리게이트에 전달이 가능합니다.델리게이트는 델리게이트에 들어가는 메서드의 반환형과 매개변수가 같아야하는 특징이 있습니다. [기본 구조]delegate 반환형 이름(매개변수)delegate int Calculation(int i)[델리게이트 변수 선언]public int Add(int x, int y) 라는 메서드가 있다면델리게이트이름 변수이름 = new 델리게이트이름(Add); //델리게이트에서 Add를 참조를 한후 선언Calculation addCal = new Caculation(Add);[델리게이트를 호출하여 참조한 메소드 호출]int result ..

자료 관리 2024.10.07

2024 10 07 TIL

새로운 주차를 시작으로 Unity 부문의 발제가 되었습니다.  유니티를 만져보는 것도 2주만이고 제가 첫 프로젝트 때 어려움이 많았어서 걱정이 좀 많이 되는 편입니다.일단 오늘 배운 것은 InputSystem을 다루는 것과 InputSystem의 send Message를 기반으로 코드를 작성하는 것을 배웠습니다.이전 주차때 델리게이트에 대해 확실히 알고넘어간 것이 아니기 때문에 이와 관련해서 질문을 드리고 어느정도 개념을 알은 것 같기에 오늘 TIL은 간략히 마치고 알게 된 내용을 정리해보려합니다.

TIL 2024.10.07

Send Messages

Input System 의  Send Message 기능에 대해 정리해본다.  Send Message는 미리 설정한 Input System의 특정키 값이 들어오면 특정한 함수를 자동으로 호출하는 방식이다. 비슷한 형식의 Broadcase Message를 사용하면 하위 계층의 오브젝트까지 제어가 가능하다. 이 특정한 함수들의 이름은 미리 만들어둔 Actions 의 이름을 차용하며On + Actions의 이름을 사용하게 된다. Send Message로 설정해두었다면 친절하게 사용할 수 있는 키워드를 밑에 출력해준다. 밑은 그 함수의 예시이다.  매개변수로 InputValue 즉 받은 값을 사용하여 그에 해당한 로직을 만들면 될것이다.public void OnMove(InputValue value){}

자료 관리 2024.10.07

ArcTangent(아크 탄젠트)

삼각함수는 삼각형의 각도를 이용하여 각 변의 비율을 구하는 함수를 의미함탄젠트는 밑변과 높이 사이의 각도를 이용해  밑변과 높이의 비율을 구하는 것을 의미함 그렇다면 아크 탄젠트는 무엇인가아크 탄젠트는 역삼각함수라고도 부릅니다.  즉 각도를 이용해 비율을 구했던 삼각함수의 역순으로비율을 통해 각도를 구하는 것을 말합니다.  유니티에서 아크탄젠트를 이용한다고 하는데 이것을 활용한다면 x축과 y축의 비율을 활용하여 각도를 구하는 것을 의미합니다 Atan2 함수란?     아크탄젠트를 사용하는 개발자들이 개발자들의 편의를 위해 만들 함수이다.   private void RotateArm(Vector2 direction){ float rotZ = Mathf.Atan2(direction.y, directi..

카테고리 없음 2024.10.07

(Unity 2D) 기본 컴포넌트

유니티에서 컴포넌트란유니티에서 의미하는 컴포넌트는 유니티에서 제공하고 있는 어떠한 기능을 가지고 있는 모듈들을 뜻합니다. 오늘 정리할 내용은 기본적으로 사용되는 기능의 컴포넌트에 관한 내용으로 앞으로 자주 쓰게될 것 같아 정리해두려합니다. SpriteRenderer SpriteRenderer는 2D 이미지를 표현해주는 컴포넌트입니다. Sprite 항목에 이미지를 집어넣어 오브젝트의 이미지를 변경할 수 있고Color 항목은 이름 그대로 오브젝트의 색상을 변경합니다.Flip 항목은 오브젝트의 X Y 각각 좌우 상하 반전을 시킬수 있습니다.Sorting, Order  in Layer 항목으로 화면으로 보여지는 우선순위를 정해줄 수 있습니다.   Rigidbody 2D  Rigidbody2D는 2D 게임에서 유..

자료 관리 2024.10.06