Unity/Tip

    ~~~ is missing the class attribute 'ExtensionOfNativeClass'!

    발생 원인 : GameObject의 컴포넌트 중 MonoBehaviour를 상속받지 않는 컴포넌트가 있을 때 발생함 해결 : 해당 컴포넌트를 삭제하거나 MonoBehaviour를 다시 상속 받으면 된다. https://discussions.unity.com/t/missing-the-class-attribute-extensionofnativeclass/223666/5

    오브젝트 자연스럽게 이동하기 : Mathf.PingPong

    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 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 인스펙터에 노출시키는 매우 효과적인 Unity 스크립트를 소개해드리겠습니다. 이 스크립트는 Unity의 직렬화 메커니즘을 활용하고 사전 데이터를 더 시각적이고 직관적인 방법으로 효율적으로 관리하고 싶은 개발자들에게 매우 유용합니다. 이 스크립트는 GitHub에서 가져온 것으로 여기에서 사용할 수 있으며, 이 블로그 포스트에서는 이 스크립트의 세부 사항과 Unity 프로젝트에 통합하는 방법에 대해 살펴보겠습니다. 스크립트 분석 이 스크립트는 우선 UDictionary 클래스로 구성되어 있으며 두 개의 중첩 클래스 SplitAttribute와 Drawer가 있습니다. SplitAttribute는 Unity의 PropertyAttribute를 상속..

    Unity로 안드로이드 앱 개발 시 권한 설정 방법

    소개 안드로이드 앱을 개발하다 보면 사용자의 개인정보를 수집하거나 기능을 사용하기 위해 권한이 필요한 경우가 있습니다. Unity로 안드로이드 앱을 개발할 때도 권한 설정이 필요합니다. 이번 글에서는 Unity로 안드로이드 앱을 개발할 때 권한 설정 방법에 대해 자세하게 설명하겠습니다. 1. 안드로이드 권한이란? 안드로이드 권한은 앱에서 사용자의 기기 및 개인 정보에 접근할 수 있는 권한입니다. 사용자의 연락처, 위치, 카메라, 마이크 등 다양한 기능에 접근하기 위해서는 권한 설정이 필요합니다. 안드로이드에서는 이러한 권한을 사용자에게 직접 요청하도록 하고 있습니다. 2. Unity로 안드로이드 앱 개발 시 권한 설정 방법 Unity로 안드로이드 앱을 개발할 때 권한 설정은 AndroidManifest...

    Unity에서 스마트폰 화면 항상 켜지도록 설정하기

    소개 스마트폰 게임을 개발할 때, 화면이 꺼지면 게임 플레이가 중단될 수 있습니다. 이를 방지하기 위해 Unity에서는 스마트폰 화면이 항상 켜지도록 설정할 수 있습니다. 이번 글에서는 Unity에서 스마트폰 화면을 항상 켜두는 방법을 알아보겠습니다. Screen.sleepTimeout Unity에서는 Screen.sleepTimeout 변수를 사용하여 스마트폰 화면이 꺼지는 시간을 조절할 수 있습니다. 이 변수의 값을 0으로 설정하면 화면이 항상 켜진 상태로 유지됩니다. void Start() { Screen.sleepTimeout = SleepTimeout.NeverSleep; } 위와 같이 Start() 함수에서 Screen.sleepTimeout 변수를 설정하면, 스마트폰 화면이 항상 켜진 상태로..

    Unity 확장형 함수

    C# 3.0 이후 버전에서는 확장 메서드(Extension Method)라는 개념이 추가되어, C#에서 클래스의 기능을 확장시키는 기능을 제공합니다. 확장 메서드는 해당 클래스의 인스턴스에서 호출할 수 있는 메서드를 추가하는 것입니다. 이렇게 하면 해당 클래스의 인스턴스를 먼저 생성한 다음, 확장 메서드를 호출할 수 있습니다. Unity에서는 MonoBehaviour 클래스를 상속받는 클래스에서 확장 메서드를 정의할 수 있습니다. 확장 메서드란? C#에서는 기본적으로 정의된 클래스에 대해서만 메서드를 사용할 수 있습니다. 하지만, 우리가 작성한 클래스에 대해서도 기본적인 메서드를 사용할 수 있도록 C#에서는 확장 메서드를 제공합니다. 확장 메서드는 해당 클래스의 인스턴스에서 호출할 수 있는 메서드를 추가..

    Perlin/Simplex Noise Algorithm

    소개 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; ..