목록Unity (13)
mooni

8-1. 예제 게임 실행해보기 역시나 할 수 없었음 괜찮아 만들면 되니까8-2. 지금부터 만들 탑뷰 게임에 대해 알아보기탑뷰 게임 : 게임 세상을 위에서 바라본 시점의 게임 스테이지, 플레이어의 상하좌우 이동이 가능맵 : '세계지도'와 '던전 내부'를 위에서 바라본 시점으로 구성, '타일맵' 시스템을 활용플레이어 캐릭터 : 활을 쏘고 적을 공격할 수 있음, 공격을 받으면 HP(Hit Point) 감소, 0이 되면 게임 오버아이템(열쇠와 화살) : 적을 공격할 수 있는 '화살', 맵을 진행하기 위한 '열쇠', HP 회복을 위한 '생명' 세가지의 아이템 존재문과 입구 : 막힌 입구 앞에서 게임이 시작되고 해당 입구는 열쇠로 열 수 있음적 캐릭터 : 플레이어가 일정 거리에 들어오면 적은 플레이어를 쫓아옴, 접..

6-1. 버전 업 내용 요약 1) 타이틀 화면에서 게임 시작 2) 몇 개의 스테이지 생성 3) 결과 화면에서 게임 성적 확인 4) 타이틀 화면으로 돌아가기 → 위를 바탕으로 게임의 흐름을 만들어 볼 것임 6-2. 타이틀 화면 추가하기 필요 요소 : 배경, 타이틀 로고, 캐릭터 이미지, 시작 버튼 Title 씬 생성 & 저장 후 빌드 필수 Canvas 생성 후 UI를 배치함 START 버튼이 눌렸을 경우 게임을 시작하도록 버튼에 ChangeScene Script를 추가, On Click() 설정 Rect Transform & Anchor Presets 일반 오브젝트와 달리 UI는 Rect Transtorm으로 위치를 다룸 Anchor는 기준점이 되고 해상도의 변화가 있을 때 UI위치가 기준점에 따라 변화한..
[ItemData] 전체 코드 public class ItemData : MonoBehaviour { public int value = 0; //unity editor 안에서 각 오브젝트에 값을 넣기 위해 public 선언 // Start is called before the first frame update void Start() { } // Update is called once per frame void Update() { } } [Item에 따른 점수 계산 흐름] 1) ItemData script를 아이템 오브젝트에 추가하고 각 아이템의 value 설정 2) PlayerController script에서 플레이어와 아이템 충돌 시 score에 value 저장 3) GameManager script..
[SwitchAction] 변수 선언부 public GameObject targetMoveBlock; //스위치와 연결할 오브젝트 받을 변수 public Sprite imageOn; //스위치 켜진 이미지 public Sprite imageOff; //스위치 꺼진 이미지 public bool on = false; //스위치 온오프 여부 Start() void Start() { if(on) //스위치 On | Off 상태에 따라 이미지 변환 { GetComponent().sprite = imageOn; } else { GetComponent().sprite = imageOff; } } OnTriggerEnter2D(Collider2D col) void OnTriggerEnter2D(Collider2D co..
[MovingBlock] 변수 선언부 public float moveX = 0.0f; //X축 이동 거리 public float moveY = 0.0f; //Y축 이동 거리 public float times = 0.0f; //출발점부터 도착점까지 이동 시간 public float weight = 0.0f; //편도 후 정지 시간 public bool isMoveWhenOn = false; //플레이어 접촉 여부에 따라 이동할 것인가? public bool isCanMove = true; //이동이 가능한가? float perDX; //1프레임당 X축 이동 값 float perDY; //1프레임당 Y축 이동 값 Vector3 defPos; //초기 위치 bool isReverse = false; //반전 ..
[GimmickBlock] 변수 선언부 public float length = 0.0f; //탐지 거리 public bool isDelete = false; //낙하 후 제거 여부 bool isFell = false; //낙하 플래그 float fadeTime = 0.5f; //페이드아웃 시간 Start() void Start() { Rigidbody2D rbody = GetComponent(); //얘가 왜 Start에 있음...? rbody.bodyType = RigidbodyType2D.Static; //초기 위치가 공중이라 떨어지지 않도록 bodyType을 static으로 설정 } Rigidbody2D 선언이 Start에 있어서 30분동안 토론함 왜 이렇게 쓴거지??????? Update() vo..
[PlayerController] 변수 선언부 Rigidbody2D rbody; //Rigidbody2D : 오브젝트에 물리적 속성을 더하는 컴포넌트 float axisH = 0.0f; //수평축 public float speed = 3.0f; //이동에 사용할 스피드 값 public float jump = 9.0f; //점프에 사용할 점프력 값 public LayerMask groundLayer; //LayerMask : Layer 자료형, groungLayer를 넣을 예정 bool goJump = false; //점프 개시 플래그 bool onGround = false; //지면 접촉 플래그 Animator animator; //애니메이션 처리 public string stopAnime = "Play..

5-1. 게임 UI 만들기UI(user interface) 만들기Unity에서는 가상 필터(Canvas)를 얹어서 그 위에 플레이어가 조작할 대상을 배치함 Canvas 표시 설정→ Render Mode : Screen Space - Camera (Render Camera, Order in Layer 등이 활성화 됨)→ Render Camera : Main Camera (계층 뷰에서 Main Camera Object를 끌고 오면 플레이 화면 크기로 조정됨)→ Order in Layer : 10 (가장 앞에 배치하기 위해서 임의로 10으로 설정)Canvas Render Mode1) Screen Space - Overlay : 기본값, 항상 맨 앞에 배치하기 때문에 Order in Layer 등의 조작 불가2..