본문 바로가기

프로그램 공부/Unity 함수

(19)
이벤트 콜백 함수 UnityEditor 네임스페이스를 사용하기 위해서, UnityEditor 선언을 한 스크립트는 Project뷰 → Editor 폴더 안에 있어야 사용이 가능하다. - [PostProcessBuild(N)] : 빌드 후 호출될 콜백. ex) 유니티 내에 있는 특정파일(ex. 특정 정보를 외부에서 수정할 수 있도록 빼놓은 데이터 텍스트)을 Build후에도 사라지지 않도록 만드는 코드 using UnityEditor; //함수의 인자인 BuildTarget을 위해 using UnityEditor.Callbacks; //PostProcessBuild를 위해 using System.IO; //Directory를 위해 public class TestProcess { //실행순서를 의미 //0이 내부에 쓰이는 or..
EditorSceneManager : 에디터에 있는 씬매니저 클래스 using UnityEditor.SceneManagement; - EditorSceneManager.LoadScene() : 씬을 로드하는 함수 Build Settings에서 불러오려는 해당 씬을 추가하지 않으면 씬 불러오기가 불가능하다. EditorSceneManager.LoadScene("Test_Scene"); ""안에 불러오려는 씬의 이름을 정확히 입력하면 해당씬으로 이동한다. - EditorSceneManager.GetActiveScene() : 현재 씬에 대한 정보를 가져올 수 있는 함수 ▶ ().name : 현재 씬의 이름 ▶ ().path : 현재 씬이 저장되어있는 파일경로 ▶ ().rootCount : 현재 씬에 있는 부모오브젝트의 개수 (Hierarchy에서 하위 오브젝트가 아닌 부모오..
EditorApplication : Unity 에디터에 대한 클래스 using UnityEditor; - EditorApplication.playmodeStateChanged : 에디터에서 플레이를 감지하고 이벤트 함수를 호출한다. 람다식으로 함수를 넣고빼며 사용한다. (+= / -=) (playModeStateChanged랑 헷갈리지 않기) using UnityEditor; using UnityEngine; using UnityEditor; public class TestScript : MonoBehaviour { private void Awake() { EditorApplication.playmodeStateChanged += testA; EditorApplication.playmodeStateChanged += testB; } static void testA() {..
[InitializeOnLoad] : 유니티 시작시 스크립트 실행 : 예를 들어 유니티 컴파일이 시작될 경우 해당 스크립트는 바로 실행하게 된다. using UnityEngine; using UnityEditor; [InitializeOnLoad] public class Test_InitializeOnLoad : MonoBehaviour { static Test_InitializeOnLoad() { Debug.Log("이 안에 내용 작성"); //그러면 유니티 컴파일을 시작할 경우 위의 Debug.Log가 바로 실행된다. } } [InitializeOnLoad]를 사용하기 위해서는 using UnityEditor;를 써줘야 한다. 컴파일이 시작된 후 한번만 실행이 된다. 시작 전 씬을 저장할때 사용해도 좋다.
특정시간을 주고 호출되는 함수 만들기 https://hyunity3d.tistory.com/367 유니티 특정 시간마다 호출되는 함수 만들기. 특정 시간마다 호출되는 함수를 만들고 싶을수 있습니다. using UnityEngine; using System.Collections; public class CsGameManager : MonoBehaviour { private float TimeLeft = 2.0f; private float nextTime.. hyunity3d.tistory.com
[Range(Min, Max)] 유니티 인스펙터 창에 부동소수점이 아닌 슬라이더로 숫자를 표시하고 싶을때 사용.
#if (조건부 컴파일) https://sciphy.tistory.com/887 [C언어] 조건부 컴파일 & 전처리 #if , #ifdef , #ifndef , #endif , #else , #elif 컴파일 전에 코드 수준에서의 조작에 있서서도 조건부 조작이 가능하다. #if 바로 뒤에 상수 또는 이미 정의된 문자상수가 온다. 즉, 평가시 상수인 표현이 온다. 평가값이 0 이면 다음줄 부터의 내용을 건너뛰고,.. sciphy.tistory.com https://docs.microsoft.com/ko-kr/dotnet/csharp/language-reference/preprocessor-directives/preprocessor-if #if 전처리기 지시문 - C# 참조 #if(C# 참조)#if (C# Reference) 이 문..
Coroutine (코루틴) - 반환값 1. yield return null; : Update()가 끝나면 밑에 구문이 실행 2. yield return new WaitForEndOfFrame(); : 한 프레임워크가 완전히 종료될때 호출. 모든 Update()가 끝나고 화면 렌더링까지 끝났을 때, 밑에 구문이 실행 3. yield return new WaitForFixedUpdate(); : FixedUpdate()가 끝나면 밑에 구문이 실행 4. yield return new WaitForDeconds(float seconds); : seconds(시간/초)가 지나면 밑에 구문이 실행 5. yield return new WaitForSecondsRealtime(float seconds); : seconds(시간/초)가 지나면 밑..