[자체번역]튜토리얼: 언리얼 엔진 4에서 대시(dash) 효과 생성하기



[자체번역]튜토리얼: 언리얼 엔진 4에서 대시(dash) 효과 생성하기

 

튜토리얼: 언리얼 엔진 4에서 대시(dash) 효과 생성하기

 Aaron Winnenberg

 는 훌륭한 튜토리얼을 작성하였습니다. 액션 게임에 사용될 수 있는 멋진 데싱 효과를 낼 수 있는 방법을 설명해 주었습니다.

 

원문 : https://80.lv/articles/tutorial-creating-dashing-effect-in-unreal-engine-4/

번역 : http://cafe.naver.com/unrealfx (금별)

 

 

 

 

 

 

 

최근 저는 몇 군데의 페이스북 그룹에 이 이펙트를 담은 짧은 동영상을 올렸고, 다음날 일어나 보니 어떻게 그러한 효과를 만들었는지를 묻는 메시지가 쇄도해 있었습니다. 그래서 저는 이 튜토리얼을 쓰기로 결심했습니다. Kirill과 80lv가 이 정보를 공유할 수 있는 플랫폼을 제공해 주신 데 대해 감사드립니다! 또한, 이 이펙트를 현재의 수준으로 올리는 데 도움을 주신 Noa Barlow 씨에게도 감사의 말씀을 드립니다.

 

이 이펙트는 블루프린트, 머티리얼, 파티클들 사이에서 이루어진 여러 번의 반복 작업과 실험을 통해 현재의 위치에 도달할 수 있었습니다. 바라건대, 제가 이것을 이해될 수 있도록 설명할 수 있기를 바랍니다.

 

머티리얼 파라미터(매개변수) 콜렉션(collection):

 

머티리얼 파라미터 콜렉션이 핵심입니다. 기본적으로 Blueprint에서 머티리얼에 파라미터 값(부동소수점float 또는 벡터)을 전달하는 수단입니다. 

콘텐트 브라우저에서 우클릭 > Materials & Textures > Material Parameter Collection(머티리얼 파라미터 콜렉션) 

이 이펙트에서 우리는 두 개의 부동소수점(float) 파라미터를 함께 사용합니다:

  “GhostVisible”과 “PlayerVisible”로서, 모두 기본값을 1로 설정합니다.

 이것이 플레이어(캐릭터)의 가시성과 고스트의 가시성(visibility)을 결정할 것입니다.

 

 

 

고스팅(Ghosting) 머티리얼:

 

이것은 대쉬가 시작될 때, 플레이어의 고스트가 나타나면서 사용하게 되는 머티리얼입니다. 

블렌드 모드(blend mode)는 반투명(translucent)으로 합니다. 

이것은 몇 가지 기본 프레넬 마스킹(basic fresnel masking)에(프레넬 노드를 사용해도 됩니다) MPC(머티리얼 콜렉션 파라미터)인 “GhostVisible”을 곱하여 그것을 opacity(불투명도)에 연결하는 것으로 구성됩니다.

 

 

이 머티리얼은 최종 결과에 영향을 거의 미치지 않으며, 다른 머티리얼을 고스트에 사용해도 됩니다. 유일하게 중요한 부분은 MPC가 opacity에 연결되어 있다는 점입니다.

 

 

Player opacity material플레이어 불투명도 머티리얼:

 

이것은 제가 만든 아주 기본적인 머티리얼입니다. 중요한 부분은 블렌드 모드가 마스크로 설정되고 MPC "PlayerVisible" opacity mask에 플러그인된다는 것뿐입니다. 

여러분의 캐릭터가 더 정교한 머티리얼을 사용한다면, 원하시는대로 설정하셔도 됩니다.

 

 

Particle Material(티클 머티리얼):

 

그레이 스케일 마스크들을 사용할 때는, 그것들을 결합하여 단일 텍스처의 RGB 채널이 되게 합니다. 이 작업을 수행하는 방법은 여러 가지가 있지만, 저는 종종 Substance Designer에서 RGBA Combine 노드를 사용합니다. Import한 후에 압축 설정(compression setting)을 "마스크"로 변경하십시오.

 

 

이 방법을 사용하는 경우, 몇 개의 스위치 파라미터(switch parameter)를 만들어 사용 중인 텍스처 샘플의 어떤 채널을 고를지를 선정할 수 있게 해야 합니다. 

Shading model은 unlit으로 blend mode는 translucent(반투명)로 합니다. 

출력(output)에 Particle Color(파티클 컬러) 및 Particle Color의 알파를 곱합니다. 이렇게 하면 파티클 에디터에서 파티클의 색상과 opacity를 제어할 수 있습니다. 

Opacity에 연결되기 이전 뎁스 페이드(depth fade)와 곱해지고 있습니다. 이는 스모크가 다른 메쉬 혹은 카메라가 맞닿는 부분에서 부자연스럽운 라인이 형성되지 않도록 해줍니다.

 

 

 

까마귀(crow) 머티리얼:

먼저, 새의 스프라이트 애니메이션이 필요합니다. 새가 아닌 다른 것을 만들어서 캐릭터를 따르게 해도 됩니다(그리고 4x4와 같은 그리드 번호를 명심하십시오).

 

 

참고 : 저는 까마귀 스프라이트 애니메이션을 만들지 않았습니다. 몇 달 전에 구글에서 찾은 것입니다. 그리고 저는 링크를 발견할 수 없었습니다 (미안하고 감사합니다). 또한, opacity mask를 스프라이트 애니메이션의 알파에 연결시켰습니다.

 텍스처를 머티리얼 에디터로 드래그하는 대신 머티리얼 에디터에서 마우스 오른쪽 버튼을 클릭하고, Particle SubUV를 찾으세오. 거기서 스프라이트 애니메이션을 고르세요.

 여기서부터는 불투명도 마스크를 Particle Color의 알파에, 텍스처를 Particle 색상에 곱하면됩니다.

 

 

 

머티리얼 인스턴스(Material Instances):

 

고스트, 까마귀 및 플레이어 머티리얼은 매개 변수를 사용하지 않으므로, 그대로 둡니다. 그러나  파티클의 먼지와 연기에 대해서는 몇 가지 Material Instance를 설정해야 합니다.

 부모 파티클 머티리얼을 마우스 오른쪽 버튼으로 클릭하고 Create Material Instance(머티리얼 인스턴스 생성)를 선택합니다. 이 작업을 연기에 대해 한번, 먼지에 대해 한번 수행합니다. 우리가 미리 설정해놓은 적절한 RGB 스위치 파라미터(켜고 끄는 선택이 가능한)를 선택하세요.

 

 

머티리얼 설정이 완료되었습니다!

 

 

파티클(Particles):

 

네 개의 이미터가 사용되는 하나의 파티클 이펙트입니다.

 튜토리얼 작성의 편의를 위하여 간략한 설명이 덧붙여진 파티클 설정 스크린샷

이미지들을 다수 포함시켰습니다. 이미지들을 자세히 살펴 보시기를 바랍니다.

 

 

 

까마귀 이미터:

 

 

SubImage Index 노드는 스프라이트를 애니메이션이 될 수 있게 설정합니다. 스프라이트의 프레임 수에 맞추어 적절하게 값을 조정합니다. 

Skel / Vert Surface Location(뼈/버텍스 표면 위치) 노드는 플레이어의 뼈 이름 / 위치를 기반으로 어디에서 생성되어야 하는지 까마귀에게 알려줍니다. 이 기능을 사용하려면 사용중인 캐릭터로부터 뼈의 이름을 복사해와야합니다. 

Particle Attractor(파티클 어트랙터-끌어당기는 효과를 냄) 노드는 까마귀들에게 일단 그들이 생성되면 어디로 가야 하는지를 알려주며, 그곳은 우리가 설정한 다음 이미터가 될 것입니다. Attractor의 이름이 여러분이 사용하려고 하는 attractor emitter의 이름과 같은지 확인하세요(제 경우에는 "Attractor"입니다).

 

 

Attractor Emitter(어트랙터 이미터)

 

이 이미터의 이름이 어트렉터 노드에서 사용한 것과 동일해야 합니다.

 

 

초기 사이즈는 1이며, 속도는 0입니다. 

스모크와 먼지 이미터: 

이것들은 단지 몇 가지 기본적인 이미터일 뿐이므로 깊게 다루지는 않을 것입니다. 몇 가지 기본 스모크 파티클 예들은 온라인에서 쉽게 찾을 수 있습니다. 

생성(spawn) 속도, 크기, 회전 및 위치의 변형이 사용됩니다. 

루프되지 않게 하새요. 지속 시간이 적절한가도 확인해야 합니다.

 

 

플레이어 고스트 블루프린트:

 

이것은 여러분의 플레이어가 앞으로 데쉬하면서 남기는 고스트가 될 것입니다.

파티클에서 vert / surf(버텍스 표면) 위치를 사용하여 고스트 효과를 만드는 등 여러 방법이 있지만, 지금 설명드리는 방법이 좋은 결과를 내기에 가장 적합합니다. 

액터(Actor) 블루프린트를 생성하세요. 

"PoseableMesh(포즈를 취할 수 있는 메쉬)" 컴포넌트를 추가하고, 이를 블루프린트의 루트로 만듭니다 ( "scene component씬 컴포넌트”를 대체합니다).

 PoseableMesh의 디테일 패널에서 플레이어의 메쉬를 선택하고 이전에 만든 고스트 머티리얼을 적용합니다. 

 

또한, PoseableMesh에는 충돌(콜리젼)이 사용되지 않아야 합니다.

 

자체번역 모음 : https://gamefx.co.kr/bbs/board.php?bo_table=tip_01&sca=%EC%9E%90%EC%B2%B4%EB%B2%88%EC%97%AD

 

유니티를 사용하여 젤다와 유사한 VFX를 구현하는 법
https://gamefx.co.kr/bbs/board.php?bo_table=tip_01&wr_id=20&page=2

게임용 VFX 설명 (VFX for Games Explained)
https://gamefx.co.kr/bbs/board.php?bo_table=tip_01&wr_id=34

FX 워크 플로우 학습
https://gamefx.co.kr/bbs/board.php?bo_table=tip_01&wr_id=38

유니티로 Stylized Equalizer Effect 만들기
https://gamefx.co.kr/bbs/board.php?bo_table=tip_01&wr_id=40

튜토리얼: 언리얼 엔진 4에서 대시(dash) 효과 생성하기
https://gamefx.co.kr/bbs/board.php?bo_table=tip_01&wr_id=51

[이 게시물은 금별님에 의해 2018-11-17 02:14:41 이펙트팁게시판에서 이동 됨]

, , , , , , , , ,

Comments

금별 2018.09.28 13:01
자체번역 모음 : https://gamefx.co.kr/bbs/board.php?bo_table=tip_01&sca=%EC%9E%90%EC%B2%B4%EB%B2%88%EC%97%AD



유니티를 사용하여 젤다와 유사한 VFX를 구현하는 법
https://gamefx.co.kr/bbs/board.php?bo_table=tip_01&wr_id=20&page=2

게임용 VFX 설명 (VFX for Games Explained)
https://gamefx.co.kr/bbs/board.php?bo_table=tip_01&wr_id=34

FX 워크 플로우 학습
https://gamefx.co.kr/bbs/board.php?bo_table=tip_01&wr_id=38

유니티로 Stylized Equalizer Effect 만들기
https://gamefx.co.kr/bbs/board.php?bo_table=tip_01&wr_id=40

튜토리얼: 언리얼 엔진 4에서 대시(dash) 효과 생성하기
https://gamefx.co.kr/bbs/board.php?bo_table=tip_01&wr_id=51


 

Banner
 
Facebook Twitter GooglePlus KakaoStory NaverBand