본문 바로가기

프로그램-잉

Attribute 개요 특성은 선언적으로 정보를 코드와 연결하는 방법을 제공합니다. 다양한 대상에 적용할 수 있는 재사용 가능 요소를 제공할 수도 있습니다. 기본 C#에서 특성은 Attribute 기본 클래스에서 상속되는 클래스입니다. Attribute에서 상속되는 모든 클래스는 코드의 다른 부분에서 일종의 "태그"로 사용될 수 있습니다. 예를 들어 ObsoleteAttribute라는 특성이 있습니다. [Obsolete] public class MyClass { } 이 클래스는 ObsoleteAttribute로 지칭되지만 코드에서 [Obsolete]를 사용하는 데만 필요합니다. 이것이 C#에서 준수하는 규칙입니다. 원할 경우 전체 이름 [ObsoleteAttribute]를 사용할 수 있습니다. 이 문자열은 var attr.. 더보기
Addressable Memory Management 에셋을 로드하기 위해서는 Addressables.LoadAssetAsync (single asset) 나 Addressables.LoadAssetsAsync (multiple assets). 함수를 사용하여야합니다. 이것은 인스턴스화 없이 메모리에 에셋을 로드합니다. 로드가 호출될때마다 로드된 각 에셋에 레퍼런스 카운트를 1 더한다. 만약 당신이 같은 주소의 LoadAssetAsync 를 세번호출 한다면,당신은 세개의 다른 AsyncOperantionHandler 구조cp를 받을 것이다. 모두 동일한 작업을 가리키고있다. (여기서 작업은 에셋을 로드하는 작업인것같다.) 이 작업은 해당에셋의 레퍼런스 3개를 가지고 있다. 로드가 성공하면 AsyncOperationHandle 구조체는 .Result 프로퍼티.. 더보기
Addressable Asset Basic - 이 글은 github.com/Unity-Technologies/Addressables-Sample 소스코드를 정리한 글입니다. Addressable Asset을 사용하는 가장 간단한 방법은 컴포넌트 레퍼런스에 에셋을 지정하는 방법입니다. 그 방법은 이전 글 Getting Started with Addressable Assets 을 참고해주세요 인스턴스화 public AssetReference baseCube; public void SpawnThing() { baseCube.InstantiateAsync(); } 가장 기본이 되는 방식입니다. public레퍼런스로 받아온 AssetReference를 필요할때 InstantiateAsync함수를 호출하면 에셋의 로드와 인스턴스화를 한번에 하게됩니다. vo.. 더보기
Getting started with Addressable Assets Installing the Addressable Assets package Unity 2018.2 이상이 필요합니다. 이 패키지를 설치하려면 패키지 관리자 설명서 의 지침을 따르십시오 . Marking Assets as addressable 에셋을 어드레서블 에셋으로 표시하는 방법에는 두 가지가 있습니다. Addressable Assets 패키지가 설치되면 Inspector 창 에서 Asset을 어드레서블로 표시하거나 Addressables 창 으로 드래그 할 수 있습니다. 항목 의 Inspector 창에서 Address 체크박스를 클릭 하고 에셋을 식별 할 이름을 입력합니다. 어드레서블 윈도우창을 열려면 Window > Asset Management > Addressable Assets. 클릭하십시오 .. 더보기
Addressable Asset Overview Unity Addressable Asset System The Addressable Asset System은 "주소"별로 자산을 쉽게로드 할 수있는 방법을 제공합니다. 콘텐츠 팩 생성 및 배포를 단순화하여 자산 관리 오버 헤드를 처리합니다. The Addressable Asset System은 비동기로드를 사용하여 종속성 모음이있는 어떤 위치에서든 로드를 지원합니다. 직접 참조, 기존 에셋 번들 또는 리소스 폴더를 사용하는지 여부에 관계없이 주소 지정 가능한 자산은 게임을보다 동적으로 만드는 더 간단한 방법을 제공합니다. What is an asset? 자산은 게임이나 앱을 만드는 데 사용하는 콘텐츠입니다. 자산은 프리 팹, 텍스처, 재질, 오디오 클립, 애니메이션 등이 될 수 있습니다. What is .. 더보기
타이머 만들기 이번에도 멤버함수 실습과 관련해서 타이머 제작을 해볼게요 #include #include "ecourse.hpp" using namespace std; using namespace ecourse; void foo(int id) { cout 더보기
스레드 만들기 이번에는 지난번에 배운 멤버함수포인터를 응용하여 스레드를 만들어 보겠습니다. 일단 가장 간단하게 스레드를 만들어 볼건데요 우선 스레드를 사용하기 위해서 Windows.h를 포함시킵니다. #include #include using namespace std; DWORD __stdcall foo(void* p) { return 0; } int main() { CreateThread(0,0, foo, //스레드로 수행할 함수 (void*)"A", //스레드 함수로 보낼 인자. 0,0); } 간단한 코드인데요 DWORD나 __stdcall은 윈도우즈에서 사용하는것들인데 중요한게 아니니 넘어갈게요 메인 함수에 CreateThread를 보면 3번째 4번째 패러미터가 중요합니다. 쉽죠 하지만 이건 객체지향인 C++이 .. 더보기
Unity x LEGO Microgame 공모전 을 준비해보려고 한다. Microgame은 유니티에서 코딩없이 게임 제작을 위해 제공하는 툴이다. 사용법이야 금방 익힐것 같고 아이디어를 정리해서 하나 만들어봐야겠다. 예전에 유니티로 에셋만 있으면 게임 혼자 만들지 이런 이야기들을 많이 한것같은데 이렇게 에셋도 레고로 주니 정말 아이디어만 있으면 가능할것같다. play.unity.com/discover/showcases/unitykorea_lego_microgame 유니티 x LEGO microgame 공모전 - Unity Play LEGO Microgame 으로 나만의 게임을 만들고, 공모전에 참가해보세요! play.unity.com 더보기