전체 글 57

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이라는 값을 갖고있는게 아니라 메모리 주소를 가리키고 있습니다, 해당 메모리 주소에 가야 비로소 실제 데이터에 접근할 수 있습니다, ..

씬 관리 (1)

유니티 버전 - 2022.3.44f1     목차씬(Scene)이란?Scene과 빌드 세팅SceneDirector의 코드 및 설명코드설명마치며간단 정리참고하면 좋은 자료   Scene이란?씬(Scene)이란 유니티에서 게임의 단일 장면을 의미합니다, 하나의 씬은 게임의 한 단계(레벨), 메뉴 화면 등 특정한 환경(게임 오브젝트와 구성요소)을 담고 있습니다, 씬에는 카메라, UI, 플레이어, 조명 등 다양한 요소가 포함될 수 있습니다 Build Setting은 게임을 배포하기 위한 설정을 관리하는 기능입니다, 여러가지 신경써야 할 것이 있지만 여기서는 Add Open Scenes를 이용하여 현재의 씬을 추가하고 순서를 지정하는 것만 하겠습니다 1. 버튼을 눌러 현재 열려있는 씬을 추가   1. 이동하고자하..

24.09.20 TIL - 유니티 에셋스토어

유니티 버전 - 2022.3.44f1     들어가며오늘은 유니티 에셋스토어에 대하여 알아보겠습니다, 아래는 유니티 에셋 스토어 주소입니다더보기https://assetstore.unity.com/ko-KR 에셋스토어여러분의 작업에 필요한 베스트 에셋을 찾아보세요. 유니티 에셋스토어가 2D, 3D 모델, SDK, 템플릿, 툴 등 여러분의 콘텐츠 제작에 날개를 달아줄 다양한 에셋을 제공합니다.assetstore.unity.com      유니티 에셋 스토어란?개발을 하는데 있어 필요한 다양한 에셋을 구매하거나 무료로 받을 수 있는 온라인 마켓플레이스입니다 에셋스토에서 판매하는 에셋에는 다음이 있습니다   여기서 더 들아가보면 더 하위의 주제가 있습니다   검색시 카테고리를 선택할수 있고 정렬 기준과 한번에 ..

속성(Attributes) (1)

유니티 버전 - 2022.3.44f1     들어가며오늘은 Attributes에 대하여 알아보겠습니다(이하 속성), 속성은 스크립트에서 클래스, 필드, 프로퍼티 또는 함수 위에 명시하여 특별한 동작을 나타낼 수 있는 마커입니다, 이것은 코드에 대한 추가적인 정보를 제공하거나 특정 기능을 활성화시키는데 사용됩니다 어트리뷰트는 보통 대괄호 [] 로 감싸져 코드 위에 붙입니다         [SerializeField] Private 필드를 인스펙터에서 수정할 수 있도록 노출시킵니다, 또 유니티는 기본적으로 클래스를 인스펙터에서 확인할 수 없습니다, 하지만 [System.Serializable]을 이용하면 커스텀 클래스 또한 직렬화하고 인스펙터에서 확인할 수 있습니다     [HideInInspector]pu..

오디오 믹서 (2)

유니티 버전 - 2022.3.44f1     목차들어가며코드 개선점코드 개선점코드 개선하기개선실행 결과실행결과마치며간단 정리     들어가며저번과 이어지는 내용입니다, 아래를 참고해주시길 바랍니다더보기2024.09.18 - [코드 및 공부/오디오] - 오디오 믹서 (1) 오디오 믹서 (1)⚠️⚠️개인 공부용으로 작성되었기 때문에 올바르지 못한 내용이 기재되어 있을 수 있습니다 ⚠️⚠️  유니티 버전 - 2022.3.44f1   목차오디오믹서란?오디오믹서의 역할Audio Mixer와 AudioManageekrxjvpvj0110.tistory.com      코드 개선점1. PlayerPrefs를 이용하여 간단한 저장 기능을 추가했습니다 2. 토글을 이용하여 음소거 및 슬라이더 조절 제한 기능을 추가했습니다..

오디오 믹서 (1)

유니티 버전 - 2022.3.44f1     목차오디오믹서란?오디오믹서의 역할Audio Mixer와 AudioManager의 컴포넌트 설정설정ChangeVolme을 이용한 오디오믹서 볼륨 제어코드설명완성된 코드 및 실행 결과완성코드실행결과마치며간단 정리     오디오믹서란?오디오믹서를 간단하게 정의하자면 게임에서 발생하는 모든 소리의 "중앙 제어실"입니다, 각각의 소리를 의도한대로 그룹별로 묶고 볼륨을 조절할 수 있습니다, 오디오 믹서를 이용하여 오디오에 다양한 효과를 넣을 수 도 있고, 게임 중 실시간으로 소리의 크기나 효과를 바꾸어줄 수 있습니다     AudioManager의 컴포넌트 설정저번 AudioManager에서 이어지는 내용입니다, 아래를 참고해주시길 바랍니다더보기2024.09.17 - [..

오디오 매니저를 이용한 Audio Source 관리

유니티 버전 - 2022.3.44f1     목차Audio Manager란?Audio Manager의 정의, Audio Source와의 관계참조 레퍼런스Audio Manager의 코드 및 설명코드설명Audio Manager의 장점과 단점, 코드 개선점장점단점개선점코드 개선하기개선점완성된 코드 및 실행 결과완성코드설명실행결과마치며간단 정리참고하면 좋은 자료     Audio Manager란?Audio Manager는 미리 정의된 Audio Source에 Audio Clip을 넣어서 소리를 재생시키도록 도와줍니다 기본적인 구조는 아래를 참고했습니다더보기https://www.youtube.com/watch?v=vLKP501a6wQ&ab_channel=%EC%BC%80%EC%9D%B4%EB%94%94      ..