이 게시글은 움짤이 있습니다. 데이터가 많이 나갈 수도 있습니다. 렌더링까지 하는 법은 알았으니, 이제 다른 것도 살펴보자. 시퀀스 레코더 시퀀스 레코더를 사용하면, 게임 내에서 조작 가능한 캐릭터의 움직임 같은 것을 녹화할 수 있다. 영화같은 곳에서도 사용된다고 한다. 3인칭 프로젝트 템플릿을 받고, 시퀀스 레코더를 생성했다. 시퀀스 레코더로 캐릭터를 끌어다놓으면 추가된다. 녹화를 하면, 딜레이만큼 있다가 녹화가 시작된다. 시퀀스 레코더 탭에서 딜레이를 설정할 수 있다. 마음껏 움직이고 녹화했으면, 시퀀스로 저장된다. 저장되는 경로도 시퀀스 레코더 탭에서 설정 가능하다. 시퀀스를 열어보면, 저렇게 움직였던 것이 저장이 된다. 녹화된 카메라의 움직임을 보려면, 시퀀스에서 카메라 컷을 생성하고 바인딩한다...
기타/Unreal
언리얼은 뭔가 지원해주는 게 많은 것 같다. 카메라를 사용해보면서, TV 방송을 찍는 카메라랑 비슷하니까 신기하기도 하다. 스포너블, 포제서블 스포너블은 번개 표시가 있어서 구분할 수 있다. 2가지의 차이점은 스포너블 오브젝트는 시퀀스가 시작될 때 생성이 되고, 끝나면 사라진다. 포제서블 오브젝트는 이미 존재하는 오브젝트이다. 서로 변환할 수 있다. 마스터 시퀀스, 레벨 시퀀스 지금은 레벨 시퀀스를 사용해서 하나씩 만들었는데, 마지막으로 이 시퀀스들을 묶을 때 마스터 시퀀스로 관리한다. 마스터 시퀀스도 어차피 레벨 시퀀스이기 때문에, 생성할 때 따로 구분 지을 필요는 없다. 시퀀스 네이밍으로 구분하면 된다. 레벨 시퀀스는 (SQ_이름), 마스터 시퀀스는 (이름_Master) 정도? 밑의 이미지는 레벨 시..
영상처럼 연출할 때 쓰이는 것 같다. 시퀀스 생성하기 시네마틱 버튼에서 생성하거나, 콘텐츠 브라우저에서 마우스 우클릭으로 생성한다. 시네마틱으로 생성하면, 레벨에 바로 배치가 되고 CineCamera, CameraComponent 등이 이미 추가가 되어 있다. 콘텐츠 브라우저로 생성하면, 마우스 드래그로 레벨에 직접 배치를 해야 하고, 기본 세팅이 없다. 콘텐츠 브라우저로 생성했어도, 이 버튼을 누르면 시네마틱으로 생성한 것처럼 기본 세팅이 추가된다. 편하게 편집하기 위해 화면 레이아웃 조정 레이아웃을 2패널로 바꿔주자. 하나는 카메라 이동용으로, 하나는 카메라가 어떻게 찍히는 지 바로 볼 수 있는 용도로 사용하자. 오른쪽 이미지에서 버튼 2개는 카메라에 관한 설정이다. 밑에 있는 버튼을 눌리면 뷰포트가..
언리얼 머터리얼의 Noise 노드를 공부하다가 알게 된 내용이다. Noise 노드 같은 경우에는 그냥 렌더링하기엔 아직까지도 성능적인 부담이 되기 때문에, Noise 결과를 텍스쳐로 만들어서 사용한다고 한다. 블루프린트와 렌더 타깃을 사용하여 텍스처 만들기 docs.unrealengine.com Getting the Most Out of Noise in UE4 언리얼 엔진 4에는 머티리얼을 기반으로 한 프로시저럴 노이즈(procedural noise) 기능이 탑재되어 있지만, 대부분의 사용자들은 퍼포먼스 향상을 위해 이 기능을 제한해놓고 있었습니다. 저희는 언 www.unrealengine.com 만들어보자 우선 텍스쳐화될 Material이 필요하다. 나는 이렇게 만들었다. 이번엔 텍스쳐가 담길 장소인 ..
오른쪽 이미지처럼 미로를 구현해 볼 예정이다. 미로를 구성하는 방 하나를 Cell이라고 말하겠다. 구현되는 순서 1. Cell을 격자무늬로 생성한다. 원하는만큼. (5x5라든지 10x10이라든지) 2. 시작할 Cell을 기준으로 상하좌우 Cell을 검색한다. 상하좌우 벽 중에 하나라도 뚫려있으면, 방문한 것으로 친다. 방문하지 않은 Cell만 배열에 담는다. CellArray의 Length가 0이라면, 갈 곳이 없으므로 끝낸다. CellArray에 뭐라도 담겨있으면, 그 중에 랜덤으로 Cell을 정한다. 기준이 되는 Cell -> CurrentCell 상하좌우 Cell 중의 랜덤 Cell -> NextCell 3. CurrentCell과 NextCell의 사이 벽을 뚫어준다. CurrentCell와 Ne..
이 게시글은 움짤이 있습니다. 데이터가 많이 나갈 수도 있습니다. World Position Offset 이번엔 노드가 아니라 기본 노드에 있는 World Position Offset이 재밌어보여서 사용해보려고 한다. Mesh의 Vertex를 월드 스페이스에서 조작 가능하다. 자세한 건 문서를 읽어봅시다. 1.10 - 월드 포지션 오프셋 Material Nodes 예제 레벨에 대한 개요로, 예제 1.10: World Position Offset 입니다. docs.unrealengine.com 알아보기 한번 사용해보자. 단순하게 동작한다. 원래의 World Position에서 들어오는 값만큼 더한다. 사용해보기 https://www.youtube.com/watch?v=EpbCul0I_d0 위 영상을 보고 ..
블루프린트에 점차 적응이 된 것 같다. 대충 언리얼과도 친해진 것 같다. 무엇을 배웠나 1. 입사각, 반사각 이용 Lazer Reflection 구현해보기. 2. 제작한 블루프린트 클래스를 상속받아서 자식 클래스 생성 BP_Bullet 클래스를 만들고, 상속받아서 캐릭터를 쫓아가는 BP_Bullet_Follow 클래스를 제작하기. 3. 카메라 무빙 게임이 끝나면 서서히 움직이는 카메라 뷰. 4. Game UI. 현재 점수 Text, 최고 점수 Text 등을 게임 화면에 표시. UI가 나타날 때에는 마우스 커서 보이게 하기. 5. Local에 게임 데이터 저장. 최고 점수를 저장함. 배우면서 따라 만든 예제들. 총알 피하기..? 배운 것들을 이용해서 만든 작업물 1주차 때 배운 것들도 최대한 이용해보려고 ..
C++로 프로젝트를 만들기 전에 언리얼 입문용으로 블루프린트를 먼저 배웠다. 무엇을 배웠나 블루프린트 입문이지만, 언리얼도 거의 입문 상태라서 예제들을 만들어보면서 배웠다. 1. 오브젝트와의 상호작용 ex) 버튼을 누르면 연결되어있는 오브젝트에 신호를 보낸다. (문을 연결해놓으면 문이 열리고, 전등을 연결해놓으면 전등이 켜지고. 등등) 2. 타임라인 노드 ex) 문이 서서히 열리고 닫힌다. 3. Physics Handle 컴포넌트 ex) 박스 오브젝트를 그랩하기. 일주일의 마지막인 금요일에는 월화수목 동안 배웠던 것들을 적용해서 간단한 게임을 제작해보는 시간을 가진다. 배운 것들을 이용해서 만든 작업물 나는 간단한 퍼즐게임을 만들어보았다. 만들면서 포탈 게임이 생각났다. 현재는 2주차가 끝났지만, 1주차..