본문 바로가기
  • 불확실한 내일을 위해
728x90

분류 전체보기193

유니티 기초 - 게임 화면 해상도(크기) 조절하기 게임 화면의 해상도를 조절하기 위해서는 Game 화면에서 Free Aspect 부분에서 설정해주면 된다.   (UI 해상도 조절과 별개이다. UI 해상도 조절은 https://greenchoco.tistory.com/212 참고) 유니티 기초 - Canvas Scaler로 UI 해상도(크기) 조절하기해상도를 조절하는 작업을 하지 않으면 개발 환경과 실제로 플레이하는 화면의 해상도가 다를 때 UI 오브젝트가 화면 밖으로 나가버리거나 잘리거나 겹치는 상황이 발생할 수 있다. 이를 예방greenchoco.tistory.com 2024. 4. 24.
유니티 기초 - Canvas Scaler로 UI 해상도(크기) 조절하기 해상도를 조절하는 작업을 하지 않으면 개발 환경과 실제로 플레이하는 화면의 해상도가 다를 때 UI 오브젝트가 화면 밖으로 나가버리거나 잘리거나 겹치는 상황이 발생할 수 있다. 이를 예방하기 위해서는 UI를 생성할 때 자동으로 생성되는 부모 오브젝트인 Canvas의 인스펙터의 Canvas Scaler를 설정해주어야 한다. UI Scale Mode 에는 3가지 모드가 있는데,- Constant Pixel Size : 화면 크기와 상관없이 동일한 픽셀 크기로 유지한다.- Scale With Screen Size : 화면 크기에 비례하여 크기가 변하는 만큼 UI 크기도 변한다. 즉, 해상도에 따라 화면의 크기를 조절한다. - Constant Physical Size : 화면 크기와 상관없이 동일한.. 2024. 4. 24.
유니티 기초 - 버튼 이미지 변경하기 보통 기본적으로 유니티에서 UI 에서 버튼을 추가했을 땐  이본적으로 이렇게 생긴 버튼이 생성된다.  이 원하는 이미지로 변경하기 위해서는 이미지 오브젝트를 버튼 인스펙터의 Image에  Source Image 에 드래그앤드롭 하면 된다.  그럼 이미지가 버튼 크기 그대로 삽입되는데, 이미지 형태 그대로 사용하려면 Preserve Aspect 에 체크해주면 된다.  참고로 이미지가 sprite 모드가 설정되어 있으면 Source Image 부분에 드롭이 활성화되지 않을 것이다. 그럴때는 이미지의 인스펙터를 수정해주면 된다. (참고 : https://greenchoco.tistory.com/209 ) C# 이미지 적용할 때 필수인 Texture Type 와 Sprite Mode 설정.. 2024. 4. 24.
유니티 기초 - 글꼴(글씨체) 변경하기 유니티 글꼴은 워드나 한글처럼 리스트로 저장되어있는 것이 없다.UI - Text 를 추가한 후 인스펙터에 Text 의 font 옆에 ttf 나 otf 확장자로 되어있는 파일을 끌어다 넣어주면 된다.(상업적으로 이용 가능한지 확인하고 넣는 것이 좋다) 참고로 Fond Size를 늘렸을 때 글씨가 2줄로 표시되면 Horizontal Overflow를 Wrap에서 Overflow 로 변경해주어야 한다.아예 글씨가 보이지 않으면 Vertical Overflow에서 Truncate이라고 설정되있는 것을 Overflow로 변경을 해주면 된다.   참고로 속성은 아래와 같다. Text : 텍스트 내용Font : 글꼴Font Style : 스타일 (굵기, 기울임)Font Size : 크기Lin.. 2024. 4. 24.
C# 이미지 적용할 때 필수인 Texture Type 와 Sprite Mode 설정 유니티에서 이미지를 사용하기 위해서는 UI와 2D 오브젝트로 삽입해야 한다. 하지만 UI와 2D 오브젝트를 이용하기 위해서는 sprite 타입의 이미지 리소스가 필요하다.즉, 이미지를 sprite 타입으로 변경해주면 되는데, 이는 인스펙터창의 Texture Type에서 설정할 수 있다.  Sprite(2D and UI) 를 쓰면 이 스프라이트 타입을 2D와 UI에서 사용할 수 있다는 뜻이다.그리고 Sprite Mode 를 Single로 바꿔준다.  2D나 UI로 사용하기 위해서는 이렇게 Texture Type 을 Sprite(2D and UI)로 선택해주고 Sprite Mode를 Single로 바꾼 위 apply 버튼을 눌러 적용시켜야 오브젝트로서 적용 가능하다.(이 작업을 안하고 이미.. 2024. 4. 24.
C#기초 - Destroy 함수 사용법 Destroy 는 오브젝트를 삭제하는 함수이다. 만약 변수가 player라고 선언되어있다면 Destroy(player); 라고 작성하면 되고 플레이하면 해당 오브젝트는 사라진다. 2024. 4. 23.
스크립트 에러 MissingReferenceException 해결방법 MissingReferenceException 는 삭제된 오브젝트 또는 컴포넌트에 접근할 때 발생하는 에러다. 보통 자동완성 기능으로 오타날일은 없으니 혹시나 Destroy 함수 기능으로 오브젝트를 삭제했는지 확인해보면 된다. 2024. 4. 23.
스크립트 에러 IndexOutOfRangeException 해결방법 IndexOutOfRangeException 는 범위를 벗어났다는 뜻을 갖는 에러다. 배열처럼 크기가 정해져 있는 범위에서 멋어난 범위를 접근할 때 생긴다. 예를 들어 아래처럼 1,2,3 의 정수를 갖는 배열에서 10번째 요소에 접근하려고 하면 IndexOutOfRangeException 에러가 난다. int[] array = {1,2,3} print(array[10]); 2024. 4. 23.
스크립트 에러 UnassignedReferenceException 해결방법 UnassignedReferenceException 는 값이 할당되지 않았을 때 나는 에러다. int, float, char, string, bool 같은 기본 자료형(데이터형)은 따로 값을 할당하지 않으면 기본값이 부여되기 때문에 비어있는 상태아 아니다. 하지만 GameObject 타입에는 값을 할당하지 않으면 에러가 발생하는데, 이렇게 비어있는 변수가 public 상태일 때 나타나는 에러가 UnassignedReferenceException 이다. 아래처럼 public 상태이고 GameObject 타입의 player에 값이 할당되지 않았을 때 발생한다. public GameObject player; void start () { print(player.name); } 2024. 4. 23.
스크립트 에러 NullReferenceException 해결방법 NullReferenceException 는 말 그대로 레퍼런스가 비어있다는 뜻이다. 어떤 값도 할당되지 않은 변수를 사용할 때 발생한다. 예를 들어 아래와 같이 작성했다면 player라는 변수에 값을 할당한 것이 없어 비어있는데 이를 사용하려고 한다면 NullReferenceException 에러가 뜨는 것이다. GameObject player; void start () { print(player.name); } 2024. 4. 23.
728x90