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

유니티 C#103

C#기초 - GetMouseButtonDown 뜻 및 사용법 GetMouseButtonDown 는 게임화면을 마우스로 클릭했을 때 작동하는 함수이다. (모바일에서는 탭하는 순간에 작동한다.) 아주 간단한 예를 들어 아래와 같이 스크립트를 작성할 수 있다. using System.Collections;using System.Collections.Generic;using UnityEngine;public class Player : MonoBehaviour{ void Update() { if(Input.GetMouseButtonDown(0)) { print("안녕"); } }} 저장 후 플레이한 뒤 Game 화면에소 오브젝트를 클릭하면 콘솔창에 안녕이라는 글이 출력된다.(Scene 화면이 아니라 .. 2024. 4. 28.
C#기초 - 이동 함수와 인수 종류 (키보드, 마우스, 모바일) 키보드 등의 입력 신호를 감지하기 위해서는 유니티에서 제공하는 input 클래스를 사용해야 한다.input 클래스에서 자주 사용하는 함수와 변수는 아래와 같다.  1. 마우스와 터치에 사용되는 함수함수설명GetMouseButtonDown(int button)마우스 : "왼쪽 버튼을 누른 순간" true를 반환.모바일 : "화면을 탭하는 순간" 으로 인식.GetMouseButtonUp (int button) 마우스 : "왼쪽 버튼에서 손가락을 뗀 순간" true 를 반환.모바일 : "탭하던 화면에서 손가락을 땠을 때" 로 인식.GetMouseButton(int button) 마우스 : "왼쪽 버튼이 눌려있는 동안 계속" true를 반환. 모바일 : "화면을 터치 중일 때" 로 인식.  - 위 함수의 매개변.. 2024. 4. 26.
유니티 기초 - 오브젝트 색상 변경하기(+핑크색 오류) 일반 오브젝트 아무거나 하나 만들어보자. 오브젝트를 만들면 기본적으로는 하얀색으로 되어있다오브젝트의 색상을 변경하기 위해서는 해당 오브젝트의 인스펙터에 Mesh Renderer 의 Materials 에 넣어줘야 한다. 오브젝트를 생성하면 Materials 는 기본적으로 Default-Material 이 적용되어있다. 이것은 흰색으로, 유니티에서 제공하는 기본 Material이다.  색상을 변경하기 위해서는 Material 파일을 project 창에서 만들어야 하는데, 아래처럼 Materials 폴터를 하나 만들어서 그 안에 Material 파일들을 만들어주는 것이 좋다.  material 파일을 만들었으면 이름을 원하는 색상으로 변경하고 인스펙터에서 색상을 변경해준다.Albedo 의 흰색네모 부분을 눌러.. 2024. 4. 26.
유니티 기초 - 버튼 눌러서 씬(Scene) 전환하는 법 씬을 여러개 만들어서 전환을 하고 싶을 땐 스크립트와 전용 오브젝트를 생성하여 직접 구현해야한다.(유니티는 씬을 전환하는 컴포넌트를 제공하지 않는다.) 예를 들어 [1. StartScene] 와 [2. PlayScene] 이렇게 2개의 씬이 있는데 [1. StartScene] 에 있는 오브젝트 버튼을 클릭하면 [2. PlayScene] 으로 화면이 전환되는 것을 해보면 아래와 같다.   1. [1. StartScene]씬에 씬을 전환할 매개체인 UI버튼을 생성한다. 2. A씬과 B씬을 준비하여 저장한 뒤 File - Building Setting 에서 Scenes In Build에 추가해둔다.  3. 스크립트를 하나 만들어 아래와 같이 저장한다. using System.Collections;using S.. 2024. 4. 25.
유니티 기초 - Transform 설정하기 팁 유니티에서 오브젝트를 생성하면 기본적으로 생성되는 컴포넌트이다.인스펙터에서 확인할 수 있다. Position 은 위치, Rotation은 회전, Scale은 크기다.  참고로 위치 Position은 오브젝트를 생성하는 경우 제멋대로 되어있는 경우가 많아 Transform 설정창에서 Reset 을 항상 눌러주는 것이 좋다. 그럼 위치는 0,0,0으로 된다. 2024. 4. 25.
유니티 기초 - 씬 이름 옆에 있는 *(별표)는? 이렇게 최상위 계층에 씬 이름 옆에 * 표시가 있는 경우가 있다. 이런 경우 저장이 안되어 있다는 뜻이므로 저장을 해주면 된다. 저장하면 *는 사라진다. 2024. 4. 25.
유니티 기초 - UI 버튼(Button) 사용법 시작이나 종료 등 버튼을 위해 UI 를 만들었다면 버튼 기능을 활성화해야 한다.이를 위해서는 버튼의Button 인스펙터를 수정해주면 된다.  Interactable : 사용자와의 상호작용 활성화 여부를 선택한다.Transition : 어떤 형태로 반응할지 선택한다.OnClick() : 버튼 클릭 시 [List is Empty] 이벤트를 호출한다.  예를 들어 플레이버튼을 눌렀을 때 title 제목을 바꾸고 title을 끌어서 None(Object) 부분에 넣고 OnClick() 의 + 버튼을 눌러  No function에서 string text를 선택하여  바꾸고 싶은 말 (시작!)을 적으면 된다.  그런다음 플레이 후 버튼을 눌렀을 때 title 제목이 시작! 으로 바뀐 것을 확인할 수 있다. 2024. 4. 25.
유니티 기초 - 게임 화면 해상도(크기) 조절하기 게임 화면의 해상도를 조절하기 위해서는 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.
728x90