본문 바로가기

Engine/Unity3D14

[Mac] MacOS Catalina Unitypackage Zip 파일 해제가 이상할 때 최근에 사용하던 맥북을 Catalina로 업데이트를 했습니다. 인터넷에서 UnityPackage가 들어있는 압축파일(Zip)을 받아서 해제하는데 파일이 이상하게 해제됩니다. 이럴경우 Mac에서 검색을 통해서 [아카이브 유틸리티]로 들어갑니다. 아카이브 유틸리티의 환경설정에 들어갑니다. 중간에 "가능하다면 계속 압축 해제하기"를 체크 해제해줍니다. 이제 다시 Unitypackage가 압축되어있는 압축파일을 해제하면 정상적으로 해제가됩니다. 2019. 10. 19.
무한루프시 for문과 while문의 차이 오늘은 무한루프시 while문과 for문을 이용할때에 대한 차이점에 대해서 작성합니다. 반복문은 주로 for문 또는 while문을 사용하는데 사용할 때 어떻게 사용되느냐에 따라서 성능이 차이가 날 수 있습니다. 이 글에서 다루는 내용은 아래와 같은 스타일의 반복문입니다. ※ 아래의 설명하는 코드에 대해서만 측정결과를 나타내므로 while문에 조건 및 for문에 조건이 들어갈 경우 결과가 다를 수 있습니다. // while void LoopFunction_while() { int Sum = 0; while(true) { Sum = Sum + 1; if(Sum >= 10) break; } } // for void LoopFunction_for() { int Sum = 0; for(;;) { Sum = Sum.. 2019. 7. 19.
C# 프로퍼티에서 주의할 점 원래는 C#에서의 문제이지만 유니티에서 주로 C#을 사용하니 이쪽에 적어둡니다. 예전에 유니티로 처음 작업했을 때도 겪었던 문제인데 C#의 프로퍼티 기능을 처음 써보면서 생겼던 문제입니다. 프로퍼티는 set, get 함수를 자동으로 만들어주는 C#의 편리한 기능인데 보통 아래와 같은 형태입니다. public int Index { get; set; } 일반적으론 이렇지만 set, get, 함수는 확장할 수 있습니다. private int _Index; public int Index { get { return _Index; } set { _Index = value; } } 그런데 여기서 중요한 게.. private int _Index; public int Index { get { return Index; /.. 2019. 7. 9.
Inspector의 값을 유지한 상태로 변수명 변경하는 방법 아래의 글은 원문:Renaming Serialized Fields의 내용을 토대로 다시 작성된 글입니다. 직렬화 된 필드의 이름 변경하기 변수 이름 변경하기 아래와 같은 클래스가 있을 경우 using UnityEngine; class MyClass : MonoBehaviour { [SerializeField] private string m_MyVariable; } m_MyVariable의 변수를 다른 이름 m_AnotherVariable으로 변경 할 경우 Prefab이나 Scene에 배치된 오브젝트들의 설정값이 변경되게 됩니다. 이를 원치 않을 경우 아래와 같은 방법으로 해결 할 수 있습니다. using UnityEngine; using UnityEngine.Serialization; class MyCl.. 2019. 7. 4.