유니티(43)
-
[C#, 유니티] 08. Rigidbody와 Collider : 물리적 충돌에 관하여
게임을 하다보면 플레이어가 물체와 부딪혔을때 충돌이 일어나는 것을 보았을 것이다 충돌 충돌이란 개념에 대해서 정확히 짚어보자 리지드바디(Rigidbody) 는 게임 오브젝트의 물리적 동작을 가능하게 하는 주요 컴포넌트이다. 리지드바디가 연결된 오브젝트는 중력에 즉시 반응한다. Collider 컴포넌트도 하나 이상 추가할 경우 게임 오브젝트가 당하는 충돌에 의해 움직인다. 콜라이더(Collider) 컴포넌트는 물리 충돌 처리를 위한 오브젝트의 형태를 말한다. 콜라이더는 보이지 않는 요소이므로 오브젝트의 메시와 정확히 동일한 모양일 필요는 없으며, 실제로는 게임플레이 시에는 대략적인 근사치로도 크게 구분되지 않으며 더 효율적이다. 콜라이더를 트리거(Trigger)(Is Trigger 프로퍼티 사용)로 설정하..
2022.07.08 -
[C#, 유니티] 07. 유니티 화면에 글자출력 하기
뜬금없는 사랑고백 게임상에서 텍스트(text)를 넣는 것은 매우 중요한 작업이다 어떻게 하면 될까? 먼저 계층창(Hierarchy)에서 Canvas를 만든다 그리고 Canvas를 우클릭하여 UI에서 TextMeshPro를 만든다 그럼 Text를 입력할 수 있는 컴포넌트가 생성된다 그럼 이제 스크립트 창에서 우리가 바꿔주고 싶은 text로 변경이 가능하도록 새로운 컴포넌트를 추가해보자 나는 ChangeText라는 컴포넌트를 새로 만들었다 이 컴포넌트를 Text(TMP)에 넣어주면 된다 그럼 이제 본격적으로 ChangeText 스크립트로 넘어가서 코드를 만들어 보자 먼저 using TMPro;를 추가해줘야 한다 이것은 C++에서 namespace랑 같다고 보면 된다 미션!! Hello World를 넣고 싶다..
2022.07.08 -
[C#, 유니티] 06. GetComponent
GetComponent 현재 스크립트에 들어있는 내가 찾go싶은 컴포넌트를 반환하는 방법은 바로 getcomponent를 이용하는 것이다 이것은 transform이나 collider같은 인스펙터 기능들을 곧 바로 찾아준다 그럼 원하는 컴포넌트를 출력하고 반환하는것이 가능하다 그렇다면 실습!! 공감해주셔서 감사합니다
2022.07.07 -
[C#, 유니티] 05. jetkara_MoveObject 분석
정말 단순해보이면서 간단한 제트카라 과연 제트카라는 어떤 원리로 게임이 구현되는지 지금부터 알아보자 가장 먼저 피사체가 어떠한 원리로 움직이는지 알아보자 그럼 jetkara의 moveobject는 어떤 코드로 짜여있는지부터 분석합시다 transform? 유니티에서 생성하는 모든 스크립트들은 transform을 가지고 있다. 일단 cube라는 3D object를 만들었다 transform은 인스펙터(Inspector) 내에 존재하는 클래스(=기능)이다 이 기능은 position(위치 조정), rotation(회전), scale(크기 확대축소)를 가지고 있다 그렇다면 이 기능들을 하나씩 면밀히 뜯어보자 transform.position은 좌표 transform.eulerAngles는 각도 transform...
2022.07.06 -
[C#, 유니티] 04. 유니티에셋의 미니게임인 JetKara를 분석하자
먼저 유니티 자체의 에셋에 들어가서 JetKara를 다운받아야 한다 유니티에서 Window창에서 Asset Store를 누르면 다음과 같은 화면이 나온다 이제 검색창에 JetKara를 입력해봅시다 물고기 모양의 형태를 가진 이상한 게임이 하나 보입니다 그럼 잘 찾아온 것 유니티에서 열기를 클릭하면 이런 화면이 나타납니다 그럼 제크카라를 다운로드 해주시면 됩니다 다운이 완료되면 Import를 눌러주세요 다 왔습니다 Assets에서 jetkara의 Scenes를 누르면 Game과 MainMenu의 스크립터 파일이 뜰겁니다 Game을 누르고 위에 플레이버튼(▶) 누르면 게임이 실행됩니다 jetkara를 플레이하는 영상 그럼 다음 시간부터 jet kara의 스크립터를 보면서 이 게임이 어떠한 로직으로 잘 짜여진..
2022.07.06 -
[C#, 유니티] 03. Hello World
늘 그렇듯 새로운 시작에 빠지면 안되는 우리의 Hello World씨 Debug.Log는 C++에서 cout과 동일한 기능을 한다고 보면 된다 C#의 출력을 유니티에서 보여지는 것을 원할때 사용한다 따라서 Debug.Log(gameObject.name + "Hello World"); 를 쓰게 되면 스크립터의 이름과 함께 Hello World가 출력된다 공감해주셔서 감사합니다
2022.07.06