~~~ is missing the class attribute 'ExtensionOfNativeClass'!
·
Unity/Tip
발생 원인 : GameObject의 컴포넌트 중 MonoBehaviour를 상속받지 않는 컴포넌트가 있을 때 발생함 해결 : 해당 컴포넌트를 삭제하거나 MonoBehaviour를 다시 상속 받으면 된다. https://discussions.unity.com/t/missing-the-class-attribute-extensionofnativeclass/223666/5
오브젝트 자연스럽게 이동하기 : Mathf.PingPong
·
Unity/Tip
Mathf.PingPong이란? Mathf.PingPong은 값이 0과 지정된 최대값 사이에서 "핑퐁" 방식으로 앞뒤로 진동하게 만드는 Unity 함수입니다. 이 기능은 주로 부드러운 전환, 애니메이션 또는 특정 범위 내에서 숫자가 변동해야 하는 기타 사용 사례를 만드는 데 사용됩니다. Mathf.PingPong 구문 Mathf.PingPong의 구문은 매우 간단합니다. 여기있어: csharpCopy code Mathf.PingPong(t, length); 이 함수에서 't'는 진동시키고자 하는 값이고, '길이'는 진동의 최대값입니다. 이 함수는 0과 '길이' 사이에서 앞뒤로 핑퐁하는 값을 반환합니다. Mathf.PingPong의 실제 적용 Mathf.PingPong을 사용하는 실용적인 예를 살펴보겠습니..
Unity Unique ID 스크립트
·
Unity/Tip
오늘은 유니티 개발자를 위한 깃허브에서 발견한 매우 유용한 스크립트인 Unity Unique ID (UUID)에 대해 살펴보겠습니다. 이 스크립트는 Markus Göbel, a.k.a Bunny83가 개발하였으며 MIT License 하에서 사용할 수 있습니다. Unity Unique ID가 하는 일 이 스크립트는 유니티 프로젝트 내 객체에 고유 식별자(GUID)를 생성하고 관리하는 도구입니다. 객체에 할당된 ID는 개발 및 런타임에서 유지되며, 이 객체가 복사, 복제, 또는 인스턴스화되더라도 고유한 상태를 유지합니다. 또한, 스크립트는 프리팹으로 복원하거나 적용할 때 같은 ID로 돌아가는 실수를 방지합니다. 어떻게 작동하나요? Unity Unique ID 스크립트는 두 개의 정적 딕셔너리를 사용하여 작..
Unity : Custom Dictionary Script
·
Unity/Tip
안녕하세요 개발자 여러분! 오늘은 사전을 직렬화하고 Unity 인스펙터에 노출시키는 매우 효과적인 Unity 스크립트를 소개해드리겠습니다. 이 스크립트는 Unity의 직렬화 메커니즘을 활용하고 사전 데이터를 더 시각적이고 직관적인 방법으로 효율적으로 관리하고 싶은 개발자들에게 매우 유용합니다. 이 스크립트는 GitHub에서 가져온 것으로 여기에서 사용할 수 있으며, 이 블로그 포스트에서는 이 스크립트의 세부 사항과 Unity 프로젝트에 통합하는 방법에 대해 살펴보겠습니다. 스크립트 분석 이 스크립트는 우선 UDictionary 클래스로 구성되어 있으며 두 개의 중첩 클래스 SplitAttribute와 Drawer가 있습니다. SplitAttribute는 Unity의 PropertyAttribute를 상속..
Unity로 안드로이드 앱 개발 시 권한 설정 방법
·
Unity/Tip
소개 안드로이드 앱을 개발하다 보면 사용자의 개인정보를 수집하거나 기능을 사용하기 위해 권한이 필요한 경우가 있습니다. Unity로 안드로이드 앱을 개발할 때도 권한 설정이 필요합니다. 이번 글에서는 Unity로 안드로이드 앱을 개발할 때 권한 설정 방법에 대해 자세하게 설명하겠습니다. 1. 안드로이드 권한이란? 안드로이드 권한은 앱에서 사용자의 기기 및 개인 정보에 접근할 수 있는 권한입니다. 사용자의 연락처, 위치, 카메라, 마이크 등 다양한 기능에 접근하기 위해서는 권한 설정이 필요합니다. 안드로이드에서는 이러한 권한을 사용자에게 직접 요청하도록 하고 있습니다. 2. Unity로 안드로이드 앱 개발 시 권한 설정 방법 Unity로 안드로이드 앱을 개발할 때 권한 설정은 AndroidManifest...
Unity에서 스마트폰 화면 항상 켜지도록 설정하기
·
Unity/Tip
소개 스마트폰 게임을 개발할 때, 화면이 꺼지면 게임 플레이가 중단될 수 있습니다. 이를 방지하기 위해 Unity에서는 스마트폰 화면이 항상 켜지도록 설정할 수 있습니다. 이번 글에서는 Unity에서 스마트폰 화면을 항상 켜두는 방법을 알아보겠습니다. Screen.sleepTimeout Unity에서는 Screen.sleepTimeout 변수를 사용하여 스마트폰 화면이 꺼지는 시간을 조절할 수 있습니다. 이 변수의 값을 0으로 설정하면 화면이 항상 켜진 상태로 유지됩니다. void Start() { Screen.sleepTimeout = SleepTimeout.NeverSleep; } 위와 같이 Start() 함수에서 Screen.sleepTimeout 변수를 설정하면, 스마트폰 화면이 항상 켜진 상태로..
Unity 확장형 함수
·
Unity/Tip
C# 3.0 이후 버전에서는 확장 메서드(Extension Method)라는 개념이 추가되어, C#에서 클래스의 기능을 확장시키는 기능을 제공합니다. 확장 메서드는 해당 클래스의 인스턴스에서 호출할 수 있는 메서드를 추가하는 것입니다. 이렇게 하면 해당 클래스의 인스턴스를 먼저 생성한 다음, 확장 메서드를 호출할 수 있습니다. Unity에서는 MonoBehaviour 클래스를 상속받는 클래스에서 확장 메서드를 정의할 수 있습니다. 확장 메서드란? C#에서는 기본적으로 정의된 클래스에 대해서만 메서드를 사용할 수 있습니다. 하지만, 우리가 작성한 클래스에 대해서도 기본적인 메서드를 사용할 수 있도록 C#에서는 확장 메서드를 제공합니다. 확장 메서드는 해당 클래스의 인스턴스에서 호출할 수 있는 메서드를 추가..
Perlin/Simplex Noise Algorithm
·
Unity/Tip
소개 Perlin Noise와 Simplex Noise는 프로시저럴 생성 알고리즘 중 가장 인기있는 알고리즘입니다. 이번 글에서는 Unity에서 Perlin/Simplex Noise를 생성하는 방법과 그 응용 예제를 살펴보겠습니다. Perlin Noise Perlin Noise는 1983년 Ken Perlin이 개발한 알고리즘으로, 자연스러운 잡음을 생성하는 데 사용됩니다. 이 알고리즘은 2차원 또는 3차원으로 구성된 그리드에서 각 좌표의 값에 대한 임의성을 추가하여 자연스러운 무작위 패턴을 만듭니다. Perlin Noise를 Unity에서 생성하려면 다음과 같은 코드를 사용합니다. public class PerlinNoise : MonoBehaviour { public float scale = 1f; ..