목록Develop Study/Unity (46)
Araina’s Blog
1. JsonUtilityUnity는 기본적으로 Json을 이용해 데이터를 외부에 저장할 수 있는 기능을 지원합니다.Unity Learn에서는 세션 간의 데이터 지속성으로 설명하고 있으며, 직렬화/역직렬화 개념을 기반으로 합니다. Manage scene flow and data: Implement data persistence between sessions출처 Implement data persistence between sessions - Unity Learn In this tutorial, you’ll write code to save and load the color that the user selects so that it persists between sessions of the applicat..
보호되어 있는 글입니다.
보호되어 있는 글입니다.
1. ScriptableObject ScriptableObject는 Unity에서 데이터를 관리하는 컨테이너 중 하나로, 값의 사본이 불필요하게 많이 생성되는 것을 방지하여 메모리 사용량을 절약하는데 유용하게 사용됩니다. 세 종류의 몬스터가 서로 같은 체력과 공격력을 가지고 있다고 가정하면, 각각의 프리팹이 개별적인 데이터를 지니고 있기 때문에 몬스터의 수가 늘어나면 그만큼 사본의 수도 늘어나 메모리가 크게 낭비됩니다. 하지만 ScriptableObject를 사용하면, 게임 내 모든 몬스터가 하나의 ScriptableObject 데이터를 참조하여 사용하기 때문에 아무리 몬스터의 수가 늘어나도 사본의 수는 늘어나지 않습니다. 2. 에디터 버전과 빌드 버전은 다르다. Unity 에디터 상에서 Scriptab..
1. Mathf.Lerp( ) Mathf 라이브러리에서 제공하는 Learp( ) 메서드는 선형 보간을 구현할 수 있게 해주는 메서드입니다. 흔히 말하는 '부드럽게 이동하기' 기능을 구현하기 위해서 종종 마주하게 되는 메서드입니다. 선형 보간은 쉽게 말해서 두 값이 주어졌을 때, 두 값 사이를 직선으로 이은 뒤, 선형적으로 그 사이의 값을 추정해 내는 기법입니다. 이해를 쉽게 하기 위해 덧붙이자면, AMD에서 개발해 제공하는 Fluid Motion Video 기술을 설명할 때도 '보간'이라는 단어가 등장합니다. Fluid Motion Video 기술은 영상의 두 프레임 사이의 이미지를 추정해 그려낸 뒤, 이를 삽입하여 기존의 영상보다 더 많은 프레임을 지닌(더 부드러운) 영상을 만들어내는 기술입니다. Un..
1. foreach( ) 문 foreach( ) 문은 배열이나 리스트, 딕셔너리 등과 같은 타입의 인스턴스를 매개변수로 받아서 각 요소들을 반복적으로 반환하는 편리한 반복문입니다. var fibNumbers = new List { 0, 1, 1, 2, 3, 5, 8, 13 }; foreach (int element in fibNumbers) { Console.Write($"{element} "); } // Output: // 0 1 1 2 3 5 8 13 하지만 foreach( ) 문은 enumerator를 사용합니다. 다른 언어에서는 iterator라는 단어를 사용하지만, C#에서는 enumerator라는 단어를 사용하므로 구분해 사용하겠습니다. 2. enumerator는 참조 형식(Reference ..
출처 Toggle Button State On/Off - Unity Answers answers.unity.com 1. Toggle은 클릭될 때마다 isOn 변수 값을 바꿉니다. 위 사진은 클릭된 Toggle의 Inspector 창을 찍은 것입니다. 보시다시피 isOn 변수에 true 값이 들어가 있죠. Unity에서 사용하는 Toggle 오브젝트들은 위 사진처럼 클릭이 감지되면 Toggle 컴포넌트의 isOn 변수의 값을 바꿔서 기록합니다. 2. 코드 상에서 isOn 변수 값을 직접 바꾸는 건 위험합니다. 스크립트 상에서도 위의 isOn 변수의 값을 아래와 같이 직접 변경할 수 있습니다. [SerializeField] private Toggle screenSizeNative; screenSizeNati..
1. 환경광(Environment Lighting) 게임 상에 기본적으로 깔리는 광원. 모든 게임 오브젝트에 적용되며, 모든 방향에서 동일한 세기의 빛이 들어온다. 명암, 그림자를 만들지 않는 광원이다. 게임의 전체적인 색 분위기를 결정할 수 있다. 2. 글로벌 일루미네이션(Global Illumination) 물체의 표면에 직접 닿는 빛과 다른 물체의 표면에서 반사되어 들어오는 간접광까지 표현한다. GI라고 줄여서 표현하기도 한다. 성능을 매우 많이 요구하기 때문에 실시간 GI는 처리하기가 버겁다. Unity 엔진에서는 실시간 글로벌 일루미네이션, 베이크 된 글로벌 일루미네이션을 제공한다. 2가지를 함께 사용하거나 1가지만 사용할 수도 있다. 실시간 글로벌 일루미네이션, 베이크 된 글로벌 일루미네이션 ..