ExecuteInEditMode
스크립트의 모든 인스턴스를 편집 모드로 실행합니다.
기본적으로 MonoBehaviours는 재생 모드에서만 실행됩니다.
이 속성을 추가하면 에디터가 플레이 모드에 있지 않을 때 MonoBehaviour의 모든 인스턴스가 콜백 함수를 실행하게됩니다.
함수는 재생 모드에있는 것처럼 지속적으로 호출되지 않습니다.
- 장면의 무언가가 변경되었을 때만 업데이트 가 호출됩니다.
- 게임보기가 이벤트를 받으면 OnGUI 가 호출됩니다.
- OnRenderObject 및 다른 렌더링 콜백 함수는 장면 뷰 또는 게임 뷰의 모든 다시 그리기에서 호출됩니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | using UnityEngine; [ExecuteInEditMode] public class PrintAwake : MonoBehaviour { void Awake() { Debug.Log("Editor causes this Awake"); } void Update() { Debug.Log("Editor causes this Update"); } } | cs |
HideInInspector
변수를 인스펙터 뷰 보이지 않게 설정
1 2 3 4 5 6 7 | using UnityEngine; using System.Collections; public class ExampleClass : MonoBehaviour { [HideInInspector] public int p = 5; } | cs |
AddComponentMenu
AddComponentMenu 특성을 사용하면 "구성 요소 -> 스크립트"메뉴 대신 "구성 요소"메뉴의 아무 곳에 나 스크립트를 배치 할 수 있습니다.
이를 사용하여 구성 요소 메뉴를 더 잘 구성하여 스크립트를 추가 할 때 워크 플로를 향상시킵니다. 중요 공지 : 다시 시작해야합니다.
1 2 3 4 5 6 | using UnityEngine; [AddComponentMenu("Transform/Follow Transform")] public class FollowTransform : MonoBehaviour { } | cs |
RequireComponent
RequireComponent 특성은 필요한 구성 요소를 종속 요소로 자동 추가합니다.
GameObject에 RequireComponent를 사용하는 스크립트를 추가하면 필요한 구성 요소가 자동으로 GameObject에 추가됩니다.
이는 설치 오류를 방지하는 데 유용합니다.
예를 들어, 스크립트는 Rigidbody가 항상 같은 GameObject에 추가되도록 요구할 수 있습니다.
RequireComponent를 사용하면 자동으로 수행되므로 설치를 잘못 할 수 없습니다.
RequireComponent는 구성 요소가 GameObject에 추가되는 순간 누락 된 종속성 만 검사합니다.
GameObject에 새로운 종속성이없는 구성 요소의 기존 인스턴스에는 해당 종속성이 자동으로 추가되지 않습니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | using UnityEngine; [RequireComponent(typeof(Rigidbody))] public class PlayerScript : MonoBehaviour { Rigidbody rb; void Start() { rb = GetComponent<Rigidbody>(); } void FixedUpdate() { rb.AddForce(Vector3.up); } } | cs |
ContextMenu
ContextMenu 특성을 사용하여 상황에 맞는 메뉴에 명령을 추가 할 수 있습니다.
첨부 된 스크립트의 관리자.
사용자가 상황에 맞는 메뉴를 선택하면 해당 기능이 실행됩니다.
이것은 스크립트에서 장면 데이터를 자동으로 설정하는 데 가장 유용합니다.
함수는 정적이 아니어야합니다.
1 2 3 4 5 6 7 8 9 10 | using UnityEngine; public class ContextTesting : MonoBehaviour { [ContextMenu ("Do Something")] void DoSomething () { Debug.Log ("Perform operation"); } } | cs |
'Programming > Unity' 카테고리의 다른 글
상태 되돌리기 (0) | 2016.08.07 |
---|---|
유니티 애니메이션 연습 (0) | 2016.07.16 |
유니티 ugui 클래스 관계도 (0) | 2016.07.09 |
Live 2d 사용해보기. (0) | 2016.03.27 |
Unity Raycast 사용법 (0) | 2016.02.19 |
데이터 관리 엑셀(xlsx)에 XML 데이터 불러오기 (0) | 2016.02.15 |
연습 작업하기 (0) | 2016.02.13 |
Unity UI Button 만들기(스크립트 연결하기) (3) | 2016.02.09 |