[Unity] 공식 Documentation 읽을 때 주의점
docs.unity3d.com/kr/530/Manual/script-Serialization.html (구 버전 스크립트 직렬화에 대한 한글 문서) docs.unity3d.com/Manual/script-Serialization.html (신 버전 스크립트 직렬화에 대한 한글 문서) 스크립트 직렬화에 대해 글을 읽고 싶었는데, 영문서랑 비교해보던 중 내용이 달라서 확인해보니 유니티 버전이 서로 달랐다. 당연한 결과긴 하지만, 구버전 영문서를 찾아보았더니 구 버전 한글 문서랑 내용이 똑같았다. 즉, 한글 문서로 된 것은 유니티 버전을 확인해보고 웬만하면 신버전으로 가서 문서를 읽자.
2021.03.05
GameObject.Find가 NullRefrence를 발생시킬 때
public class PaperButton : MonoBehaviour { private GameObject PaperList; void Start() { PaperList = GameObject.Find("PaperList"); } void Update() { if (Input.GetMouseButton(0)) { if (PaperList) { PaperList.SetActive(false); } else Debug.Log("PaperList없엉없엉"); } if (Input.GetMouseButton(0)) { Debug.Log("TOuch End"); } } } 위와 같이 전역 변수 선언을 하고, start에서 GameObject.Find를 해주었는지 잘 확인해봐야 한다. 물론 Update에서 G..
2021.02.05
다중상속
추상 클래스를 만들어 사용해서 다중상속 하는데 안됨. docs.microsoft.com/ko-kr/dotnet/csharp/language-reference/compiler-messages/cs1721 컴파일러 오류 CS1721 컴파일러 오류 CS1721 docs.microsoft.com ‘class’ 클래스는 여러 개의 기본 클래스(‘class_1’ 및 ‘class_2’)를 가질 수 없습니다. 이 오류 메시지가 표시되는 가장 일반적인 원인은 다중 상속을 사용하려고 시도하기 때문입니다. C#에서 하나의 클래스는 하나의 클래스에서만 직접 상속할 수 있습니다. 그러나 하나의 클래스는 원하는 수만큼의 인터페이스를 구현할 수 있습니다. 이렇게 해결하라네.
2021.01.31
no image
유니티 콜라보레이터 사용법
콜라보레이터 세팅 아래 링크를 기준으로 콜라보레이터를 세팅했다. 유니티 소스 공유, 협업 콜라보레이션 생성, 팀원 초대 이펙터분과 리소스를 공유하기 위하여 유니티 콜라보레이션 생성하는 방법과 초대 방법을 간단하게 캡쳐해놓았다. 초대하는 사람 입장 콜라보레이션 하기 위한 프로젝트 생성 우측상단 콜라보 ajh322.tistory.com 이 글의 작성기준이되는 유니티 버전은 2019.4.1x (LTS) 버전이었으며, 현재 2020버전의 Unity에서는 위의 글을 따라가면 안되는 것으로 알고있다. 콜라보레이터 프로젝트 삭제 콜라보레이터를 등록한 프로젝트 삭제를 하려고했는데, 삭제가 아무리 찾아도 보이지 않았다. 그래서 구글링을 해본 결과 아래 링크와 같은 글이 있었다. How to remove a project..
2021.01.29
no image
유니티 애니메이션 창의 샘플레이트 안보일 때
샘플 레이트 실종 보여야 하는 샘플레이트 설정이 보이지 않는다. 뭐야 어디갔어 돌려줘요 이미지의 빨간 곳(오른쪽 끝)을 클릭하면 "Show Sample Rate" 항목이 보이는데, 그걸 클릭하면 샘플레이트를 다시 볼 수 있게 된다.
2021.01.27
no image
유니티 기본정리2 (여러 개념)
컴포넌트 패턴 유니티는 게임 오브젝트를 컴포넌트 패턴을 통해 만듬. 컴포넌트 패턴 혹은 컴포지션 Composition 패턴이란 미리 만들어진 부품을 조립하여 완성된 오브젝트를 만드는 방식이다. 미리 만들어진 부품은 컴포넌트를 뜻하고 컴포넌트는 저마다의 대표 기능을 가지는데, 빈 껍데기인 게임오브젝트에 컴포넌트를 조립하여 기능을 추가하는 형식이다. 컴포넌트의 독립성 게임 오브젝트는 단순한 빈 껍데기 컴포넌트는 스스로 동작하는 독립적인 부품 컴포넌트는 독립적이기에 기능 추가와 삭제가 쉽다. MonoBehaviour 브로드 캐스팅이 가능한 원리를 이해하려면 먼저 모든 컴포넌트의 기반인 MonoBehaviour를 알아야 함. 유니티의 모든 컴포넌트는 MonoBehaviour클래스를 상속한다. MonoBehavi..
2021.01.08
no image
유니티 기본 정리(기본ui)
Layout 변경 창 종류 씬(Scene) 창 : 게임 월드인 씬을 시각적으로 편집하는 창 하이어라키(Hierarchy)창 : 씬에 존재하는 모든 게임 오브젝트가 나열되는 창 인스펙터(Inspector) 창 : 선택한 게임 오브젝트의 정보가 표시되는 창 게임(Game)창 : 플레이어가 실제로 보게 될 화면을 띄우는 창 프로젝트(Project) 창 : 프로젝트에 사용할 에셋들이 표시되는 창 콘솔(Console)창 : 로그나 에러가 표시되는 창 컴포넌트 트랜스폼(Transform) : 오브젝트의 3차원 좌표와 크기, 회전을 지정 메시필터(Mesh Filter) : 3D 메시 파일을 받아 오브젝트의 외곽선을 지정합니다. 메시 렌더러(Mesh Renderer) : 메시를 따라 색을 채워 그래픽 외형을 그립니다...
2020.11.18
유나이트 now #1
유니티 모바일 빌드 mono 방식 : jit컴파일 il2cpp 방식 : AOT 컴파일 il2CPP방식은 아키텍처 별로 다 미리 컴파일해야 해서, 시간도 오래걸리고 용량도 커지지면 실행퍼포먼스가 높음. 최근은 il2CPP쪽에 힘 쏟고 있음 (mono가 오래되서 64비트 이슈가 있음.) 버스트 컴파일 : il2CPP랑 같은 레벨 빌드 순서 C# => il -> il2CPP or Burst => NDK => 안드로이드 Burst같은 경우는 DOTS기반 (메모리 효율성 강조한 방향, 데이터 기반) il2CPP같은 경우는 객체지향 기반에 포커스 il2CPP or Burst 둘 다 AOT컴파일 ar 파운데이션 -> ar 멀티플랫폼 ㄱㄴ 글래스 타입의 ar도 공통점을 묶어서 개발가능. MARS : AR을 위한 저작도..
2020.08.27
no image
2020년 부산 게임 개발자 컨퍼런스 다녀왔습니다!
이번에 BGC에서 처음 개최한 부산 게임 개발자 컨퍼런스를 다녀왔다. 생각보다 도움이 됐던 부분이 너무 많아 글로 정리해서 남기려고 한다. 첫번째 발표 - 플레이하드 신중혁 우선 첫 번째 발표자는 레드브로즈의 개발사 플레이하드의 신중혁 대표님이었다. 첫 번째 강연에서 가장 강조되었던 것은 마케팅이었다. 처음에는 마케팅과 같은 것은 생각치 않고, 정말 힘들고 가난하게 게임 개발을 해오셨었다. 수술을 해야하는데, 돈이 없어서 수술을 포기해야 할 정도. 어떤 게임을 만들어도 잘되었던 것이 하나도 없고, 여러개를 만들어봤지만 제대로 런칭이 되었던 것도 없었다. 그러다가 자신이 보던 유튜브 영상과 그 때 당시 모바일 게임의 트렌드에서 유행했던 하이퍼캐주얼 장르를 보며 만들게 되었고 한다. 모든 측면의 경험이 부족..
2020.07.27