본문 바로가기

c#

(5)
유니티 라이프 사이클(Life Cycle)에 대해 알아보ㅈㅏ! OnDisable라이프 사이클이란? 유니티 엔진에선 저희가 실행하지 않아도 자동으로 실행해주는 함수들이 있는데 이 함수들이 호출되는 주기를 라이프 사이클이라고 합니다. 라이프 사이클 실질적인 라이프 사이클은 이렇지만 이번에는 큰 것들만 순서대로 정리해보도록 하겠습니다! 1) Initialization Awake: 스크립트가 실행될 때 한번씩만 호출되며 게임의 상태 또는 변수 초기화로 사용합니다. 오브젝트가 비활성화 상태일 경우 호출되지 않지만 스크립트가 비활성화 상태인 경우엔 호출되고, 코루틴으로 실행할 수 없다는 특징이 있습니다. OnEnable: 게임 오브젝트가 비활성화 상태에서 활성화 될때마다 호출됩니다. Start: 스크립트가 활성화 될 때 한번만 호출되며 오브젝트나 스크립트가 비활성화 상태일때는..
(유니티) 싱글톤 패턴에 대해 알아보ㅈㅏ! 싱글톤이란? 싱글톤 패턴이란 하나의 인스턴스만 존재하며, 전역적으로 접근할 수 있는 클래스 디자인 패턴 입니다. 어떠한 상황에 사용하는가? 게임 매니저나 오디오 매니저 등 게임 내에 한개만 필요하고 여러곳에서 접근을 할 수 있도록 만들어야 할 때 사용합니다. 싱글톤 사용하는법 싱글톤은 크게 두가지로 나누어서 적용시킬 수 있는데 첫번째로 스크립트에 삽입하는것과 싱글톤 스크립트를 상속시키는 방법이 있습니다! public class GameManager : MonoBehaviour { private static GameManager instance = null; void Awake() { if(instance == null) { instance = this; } else { Destroy(gameObject)..
코루틴에 대해 알아보ㅈㅏ! 오늘은 코루틴에 대해 알아보도록 하겠습니다! 코루틴은 어떤 상황에 사용할까? 보통 코루틴은 특정 행동을 지연시킬 때 사용하게 되는데, Update에서 시간을 지연시키는 행동을 하게 되면 currentTime = Time.deltaTime 이라는 코드를 매 프레임마다 실행시켜줘야해서 비효율적인 코드가 됩니다. 이러한 상황속에서 코드의 비효율적인 부분을 고칠 수 있는 게 코루틴입니다. 코루틴은 어떻게 선언할까? 코루틴을 선언할 때는 앞에 IEnumerator를 붙여줘야 합니다. IEnumerator TimeCheckCoroutine() { //cooooode yield return new WaitForSeconds(3f); } 이후 코루틴 함수 내에 제어권을 돌려주는 yield return을 적어줘야 하죠...
유니티에서 명명규칙과 코딩 규칙을 알아보ㅈㅏ! 오늘은 명명규칙에 대해 알아보겠습니다! 명명규칙이란? 프로젝트를 진행할 때 개발 생산성과 운영의 효율을 높이기 위해 지켜야 하는 규칙입니다. 보통 팀에서 정한 규칙을 따른 거거나 정한 규칙이 없으면 언어 자체 규칙을 따르기도 합니다. 왜 필요한가? 예를들어 협업을 한다고 생각해봅시다. 협업을 하던 도중 변수명이 A, b, aAb, asdf, LancelotsFavouriteColour 등 알아볼 수 없는 변수명이 있었고 이 변수를 만든 프로그래머는 현재 연락이 닿지 않습니다. 이러한 상황이 일어나면 곤란하겠죠? 그렇기 때문에 명명규칙을 지키며 코드를 작성하는 겁니다. 명명규칙 카멜 케이스(camelCase) 여러 단어를 사용할 때 맨 처음 단어를 제외한 단어들의 앞글자를 대문자로 적습니다. 낙타의 봉우리..
똥 피하기 게임을 만들어보ㅈㅏ!(3. Instantiate를 사용하여 똥을 만들기, 게임 빌드하기) 이번 시간에 똥 피하기 게임을 완성하도록 하겠습니다! 시작하기 앞서 저희는 Prefab이라는 개념을 배우고 들어가겠습니다. Prefab이란? 재사용이 가능한 GameObject를 말합니다. 프리펩은 보통 같은 컴포넌트가 붙어있는 여러 오브젝트(적 몬스터, 나무, 건물 등)를 만들 때 사용됩니다. 왜냐하면 오브젝트를 만든 이후 수정이 필요할 때 Prefab의 경우에는 부모 프리펩에서 바꾼 값이 자식 프리펩에 적용되기 때문에 매우 편리하게 여러 오브젝트의 값을 바꿀 수 있습니다. 이제 직접 만들어봅시다! 만드는 방법은 간단합니다. 하이라키창에서 Poop 오브젝트를 프로젝트 창으로 끌어다 두시면.. 오른쪽 하이라키 창에 있는 poop의 아이콘이 파란색 상자로 변했으면 Prefab화 된 겁니다! 이번엔 Poop..