프로그래밍/Unreal 41

Blueprint Tutorial)Toggling a Light with the Level BP

트리거박스로 불껐다키기. C++에서 캐릭터HP를 다루다가 UMG Progress Bar를 사용하고 싶음 -> 근데 블루프린트를 어떻게 연결해야 c++의 HP를 가져다가 프로그레스바랑 연결할수 있는지를 모름 -> 그래서 블루프린트 튜토리얼 시자악... 난 코딩이좋은데 ;ㅅ;힝. 이게 얼마만에 하는 언리얼인지 ㅠㅠ 한달이나 침대신세지고 다리근육이 거의 사라져서 다시 걷는 거부터 연습하고... 책상에 간만에 앉았어요 ㅠㅠㅠㅠ 감격스럽다. 아직 피부가 안생겨서 햇빛도 못받고 밤에는 쑤셔서 못자긴하지만 붕대푼게 어디야...ㅎㅎㅎㅎㅎ!

[26]_2

4.인벤토리 아이템 클릭 확인 :마우스 클릭된 위젯은 마우스를 드래그할때 움직일 것. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 #pragma once #include "GameFramework/HUD.h" #include "MyHUD.generated.h" struct Widget{ Icon icon; FVector2D pos, size; Widget(Icon iicon){ icon = iicon; } float left(){ return pos.X;} float right(){ return pos.X + size.X; } float top(){ return pos.Y; } float bottom(){ return pos.Y + si..

[24]템플릿과 자주 사용되는 컨테이너들_2

1. C++ STL버전 Set C++ set은 하나로 정렬된 아이템들의 모음이다. 장점은 set의 요소들을 정렬된 상태로 유지한다는 점이다. 가장 쉽고 빠르게 값들의 모음을 정렬하는 방법은 같은 값을 set으로 넣어버리는 것. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 #include #include using namespace std; int main(){ set intSet; intSet.insert(7); intSet.insert(7); intSet.insert(8); intSet.insert(1); for(set::iterator it = intSet.begin(); it != intSet.end(); ++it){ cout

[23] 템플릿과 자주 사용되는 컨테이너들

컴파일 하는 시점에 크기를 알수 없는 새로운 배열을 만들려면 동적 메모리 할당을 사용해야한다. ex) int* array = new int[항목 갯수]; new[] 동적할당은 나중에 delete[ ] 를 호출해야 하는데 이런 식으로 메모리를 관리하는 것은 매우 힘들다 => 동적메모리 할당과 해제를 자동으로 관리하는 컨테이너(C++ 객체 종류) UE4도 컨테이너를 몇 가지 제공한다. 템플릿 컨테이너에는 UE4의 컨테이너, C++ 표준 템플릿 라이브러리(STL) 컨테이너 두가지가 있다. UE4 컨테이너 : 게임 성능을 위해 작성, 컴파일 할 때 크로스 컴파일 문제를 겪고 싶지 않으면 추천. C++ STL 컨테이너: 좀더 일관적인 인터페이스 1. 디버그 출력기능 1 2 3 if (GEngine){ GEngin..

[21]언리얼 오브젝트 처리

1) 가비지 콜렉션: 더이상 레퍼런싱되지 않거나 명시적으로 소멸예약시킨 UObject*를 주기적으로 정리한다. 가비지 콜렉션이 발생하면 엔진은 루트세트*부터 시작해서 알려진 UObject레퍼런스 트리를 검색하여 레퍼런싱된 오브젝트를 전부 추적할수 있다. 이때 레퍼런싱 되지 않은 오브젝트는 더이상 필요치않은 오브젝트라 가정하고 제거된다. 살리고싶은 오브젝트는 UPROPERTY* 레퍼런스 를 유지해주어야한다. 엑터는 예외: 엑터가 속한 레벨에 의해 레퍼런싱되어있어서.->Destroy()로 명시적 소멸예약이 가능하다. *UObject: 기본 구성 요소, UClass와 함께한다. 프로퍼티와 메소드의 반영, 프로퍼티의 시리얼라이제이션, 가비지 컬렉션, 이름으로 UObject 찾기, 프로퍼티에 환경설정 가능 값, ..