게임 에셋 판매 사이트
·
코드 및 공부/기타
유니티 버전 - 2022.3.17f1     목차gamedevmarketitch.iocraftpix     gamedevmarket 험블 번들에서 많은 양의 에셋을 묶음 할인 판매할때 구매하시면 됩니다(이것저것 들어있는 느낌)더보기https://www.gamedevmarket.net/ Game Assets for Indie Developers |GameDev Market is a marketplace for high quality, affordable 2D, 3D, GUI & Audio game assets, handcrafted by talented creators around the world.www.gamedevmarket.net     itch.io리소스 없이 개발하는것이 힘들다면 위와 마찬가지로..
유니티에서 픽셀 폰트를 TMP 폰트 에셋으로 만들기
·
코드 및 공부/기타
유니티 버전 - 2022.3.17f1     목차폰트 설정Font Asset CreatorAtlas     폰트 설정폰트 사이즈는 다운받으신 곳에서 지정해준 크기를 사용하거나 파일을 끌어왔을때 지정되어있던 사이즈를 사용합니다폰트의 인스펙터에서 Rendering Mode를 Hinted Raster로 바꿉니다폰트의 이름(다운로드 받은 폰트.ttf)은 영어로 지정합니다언급하지 않은 것은 사진을 따라가면 됩니다     폰트 설정해당 경로에 들어가 Font Asset Creator를 켜줍니다   Render Mode를 확인하고 Generate Font Atlas를 클릭합니다   생성 완료 후 저장 해줍니다Excluded characters가 0이 되어야 합니다, 만약 저 자리가 0을 넘어간다면 Atlas Reso..
Debug
·
코드 및 공부/기타
유니티 버전 - 2022.3.48f1     목차Debug 클래스자주 사용되는 Debug마치며     Debug 클래스Debug 클래스는 Unity에서 디버깅을 위한 다양한 기능을 제공하는 정적 클래스입니다게임 개발 중 발생하는 문제를 추적하고, 게임의 상태를 확인하며, 코드 실행 중의 정보 출력을 용이하게 해줍니다개발을 할때 Debug 클래스를 이용하여 다양한 로그 메시지를 출력할 수 있으며, 이를 통해 게임의 로직을 분석하고 버그를수정하는 데 도움을 받을 수 있습니다 아래에는 Debug. Log / LogWarning / LogError / Assert / DrawRay에 대하여 다루고 있습니다    자주 사용되는 Debug Debug.Log게임 실행 중 일반 정보를 출력할 때 사용합니다, 게임의 상..
콘솔 창(Console)
·
코드 및 공부/기타
유니티 버전 - 2022.3.48f1     목차콘솔 창마치며     콘솔 창Unity의 콘솔 창은 게임 개발 중 디버깅과 문제 해결을 위해 필수적인 도구입니다 로그, 경고, 오류를 관리하고, 메시지를 필터링 및 검색할 수 있는 기능을 통해 게임의 실행 상태를 쉽게 확인하고, 발생하는 문제를 신속하게 해결할 수 있습니다  콘솔 창을 살펴보겠습니다   Clear먼저 Clear입니다, 해당 버튼을 누르면 콘솔창의 메시지들을 모두 지웁니다아래 옵션을 이용하여 해당 동작 수행시 자동적으로 Clear 해줍니다    Collapse반복해서 발생하는 메시지를 모두 표시하는 대신 첫번째 인스턴스만 보여줍니다    Error PauseDebug.LogError을 스크립트에서 호출할 때마다 재생을 일시 정지 합니다   검..
이벤트 함수의 실행 순서
·
코드 및 공부/기타
유니티 버전 - 2022.3.48f1     목차들어가며Legend생명 주기마치며     들어가며Unity에서 게임 오브젝트의 행동과 상호작용을 제어하는 핵심 요소 중 하나가 바로 이벤트 함수입니다, 이러한 함수들은 특정한 타이밍에 Unity 엔진에 의해 자동으로 호출되며, 게임이 시작할 때부터 종료할 때까지 여러 가지 상태 변화에 대응합니다 이벤트 함수들의 실행 순서와 각 함수의 역할에 대해 알아보겠습니다. 게임 로직을 더 효율적으로 관리하고 싶다면, Unity의 이벤트 함수가 어떻게 작동하는지 이해하는 것이 중요합니다    Legend 먼저 유니티에서 제공하는 메뉴얼입니다, 이것을 바탕으로 설명하겠습니다더보기https://docs.unity3d.com/kr/2022.3/Manual/ExecutionO..
TagManager.preset을 이용한 태그 및 레이어 관리
·
코드 및 공부/기타
유니티 버전 - 2022.3.48f1     목차들어가며TagManager.preset이란?TagManager.preset 만들기TagManager.preset 적용하기마치며     들어가며게임 개발을 하다 보면 다양한 객체를 효과적으로 관리하기 위해 태그와 레이어를 사용하게 됩니다, 이러한 태그와 레이어를 설정하고 관리하는 필요한 것이 TagManager.preset입니다 태그와 레이어 설정을 .preset 파일로 저장할 수 있습니다, 이를 통해 팀원 간의 협업이 용이해집니다 TagManager.preset의 사용 방법에 대해 알아보겠습니다.     TagManager.preset 만들기개발을하며 작성한 태그와 레이어가 있다고하겠습니다, 이것을 프리셋으로 저장 시켜보겠습니다   우측 상단의 볼륨 조절하..
c# - 프로퍼티
·
코드 및 공부/기타
유니티 버전 - 2022.3.44f1      들어가며 프로퍼티란 클래스나 구조체의 필드 값을 제어하는 방법 중 하나입니다, 주로 필드 값을 읽거나 수정할 때 사용되며, 외부 클래스에서 안전하게필드에 접근하도록 하는데 유용합니다   프로퍼티는 왜 사용하는 것 일까요?    테스트라는 클래스가 있다고 가정하겠습니다, 여기에서 health라는 필드의 값을 다른 외부 클래스에서 참조만 하고 수정하지 못하도록 하여 오직 Test 클래스에서만 수정하려고 합니다 지금은 health라는 정보 하나만 보호해야 하므로 GetHealth()와 SetHealth() 메서드 두 개로 해결 가능합니다, 하지만 이러한 변수가 많아진다면 메서드도 그에 따라 증가하고, 유지보수도 힘들고 비효율적입니다 그래서 등장한 것이 프로퍼티입니..
c# - 배열
·
코드 및 공부/기타
유니티 버전 - 2022.3.44f1      들어가며오늘은 배열에 대하여 알아보겠습니다 데이터를 효율적으로 관리하고 처리하기위한 다양한 데이터 구조가 존재합니다그 중에서도 자주 사용되는 세 가지는 배열, 리스트, 딕셔너리입니다 이 세가지가 중 배열과 Array. 메서드에 대하여도 알아보겠습니다      목차배열정의 및 특징선언 및 사용Array 클래스  배열   배열의 정의와 특징배열을 정의하자면 배열은 같은 타입의 데이터를 연속된 메모리 공간에 저장하는 자료 구조입니다, 배열을 이용하면 여러 개의 값을 하나의 변수로 관리할 수 있기에 반복적인 데이터 처리에 유용합니다 배열은 선언 시 배열의 크기를 지정해주어야 하며, 이후에는 크기를 변경할 수 없습니다배열은 각 요소에 인덱스를 이용하여 접근합니다, 인..
c# - 변수의 종류와 접근 제한자, 키워드
·
코드 및 공부/기타
유니티 버전 - 2022.3.44f1     들어가며오늘은 변수의 종류와 접근 제한자, 키워드에 대하여 알아보겠습니다  변수의 종류1. 맴버 변수(전역 변수) : 클래스 내에 선언된 변수로, 클래스의 인스턴스와 함께 생성되고 소멸됩니다   2. 정적 변수 : 클래스 내에 선언된 변수로, 모든 인스턴스에서 공유됩니다, 프로그램이 실행 되는 동안 계속 유지되며, 클래스명으로 접근 가능합니다, static 키워드를 이용합니다   3. 지역 변수 : 메서드 혹은 블록 내에서 선언된변수로, 메서드나 블록의 시작과 동시에 생성되고 해당 메서드나 블록이 끝나면 소멸됩니다동일한 이름의 전역 변수 a가 있지만 지역 변수의 우선순위가 더 높기때문에 a를 5로 수정한뒤 디버그를 보니 10이 아닌 수정된 5가 출력되었음을 알..
c# - 변수와 자료형
·
코드 및 공부/기타
변수변수란 값을 저장할 수 있는공간입니다어떠한 값을 사용하고 싶을때마다 그 값을 직접 쓰지 않고, 대신 그 값을 저장한 이름을 사용합니다  만약 int a = 25; 라는 정수형 변수가 있다고 했을때25라는 숫자를 b에 더해주고 싶다면 +25가 아니라 +a를 이용하여 동일한 기능을 수행할 수 있습니다   이는 변수를 사용하여 코드의 가독성과 유지보수성을 높이는 방법으로 나중에 A의 값이 27로 바뀌었을때25를 더해줬던 모든 곳에 찾아가서 27로 수정하는게 아니라 수정된 a(27)를 더해줌으로써 자동적으로 변경된 값을 사용하게 됩니다   여기서 설명을 더하자면 a는 사실 27이라는 값을 갖고있는게 아니라 메모리 주소를 가리키고 있습니다, 해당 메모리 주소에 가야 비로소 실제 데이터에 접근할 수 있습니다, ..