이펙트 (FX)/이펙트 팁 : Unreal93 [Unreal/Material] 가짜 그림자 만들기 방법 1. 탄젠트 공간(접선 공간)을 월드 공간으로 변환한다. 2. 내적하여 라이팅 계산한다. 3. 원하는 밝기 값으로 lerp한다. 탄젠트 공간이란? 표면에 수직인 방향을 z로 삼는다. 오른쪽을 x로 삼는다. y는 이 두 방향에 직각이 된다. 이 공간은 표면마다 정의되어 있다. 그림c는 공간을 정의하는 방식이다. 그림d는 공간에서 노말맵이 어떻게 구성됐는지다. https://monggus.tistory.com/281 [HLSL] 챕터7 - 법선매핑 TANGENT : 접선정보 시맨틱 BINORMAL : 종법선정보 시맨틱 transpose() : 전치행렬 구하는 함수 접선공간 : 법선맵 안에 법선이 존재하는 공간 // 법선매핑의 필요성 폴리곤 수 늘리면 속도가 느려지고, 메 monggus.tistory.c.. 2023. 12. 12. [Unreal/Blueprint] 액터 기초 액터 벽, 캐릭터, 라이트 등 월드를 채워주는 것들을 통칭하는 말이다. 액터 단위로 언리얼 엔진이 관리하는 것이 많다. 액터별 컬링 및 동기화 등 스폰 월드에 액터를 추가하는 행위 더 자세하게 말하면, 월드가 액터 클래스를 전달 받아, 새로운 액터 오브젝트를 만드는 행위이다. 액터 클래스 vs 액터 오브젝트 액터 클래스 액터의 종류를 말한다. 액터 오브젝트 액터의 존재 자체를 말한다. (클래스의 인스턴스, 즉 객체이다) 따라서 액터 오브젝트들의 목록을 쉽게 보는 것이 월드 아웃라이너 이다. 커스텀 클래스를 만드는 법 블루프린트에서 액터 클래스를 생성한다. 액터의 저장 위치 액터 클래스가 저장된 위치 엔진 내장 또는 콘텐츠 브라우저다. 액터 오브젝트가 저장된 위치 레벨이다. 따라서 레벨의 진짜 의미는 액터.. 2023. 11. 13. [Unreal/Niagara] 나이아가라에서 블루프린트로 파티클 정보 전송 파티클이 충돌될 때마다, 블루프린트가 파티클 정보를 전송받는 예제이다. 나이아가라 A. 나이아가라 모듈 1. collision 모듈 추가 2. export particle data to blueprint 모듈 추가 B. 나이아가라 export particle data ... 모듈 파라미터 설정 1. condtion to export data에 collision valid를 적용한다. 충돌하면 전송된다. 2. 유저 파라미터를 추가한다. (오브젝트형) 전송할 블루프린트를 지칭하는 용이다. 3. callback handler parameter에 위의 유저 파라미터를 등록한다. 블루프린트 1. 자기 자신을 나이아가라에 유저 파라미터로 등록한다. 그래야 정보를 전송 받기 때문이다. 2. 클래스 세팅에서 '상속된 .. 2023. 11. 8. [Unreal/Niagara] 나이아가라 파티클 콜리전 모듈 (충돌 처리) 기본 콜리전 모듈은 파티클 업데이트에 두어야한다. 매 프레임 충돌체크를 해야하기 때문이다. CPU sim collision type : ray traced 각 프레임마다 각 파티클이 라인 트레이싱을 수행한다. 하단의 CPU Collision Trace Channel에서 충돌체 타입 선택이 가능하다. collision type : analytic plane 후디니의 ground plane이다. 값이 싸다. resititution 0이면 바운스 되지 않는다. 1이면 바운스 된다. advanced aging rate 충돌 후 수명이 빨리 소모된다. 비 표현시 유용하다. GPU sim GPU로 변경시, GPU 관련 콜리전 타입을 선택할 수 있다. collision type : GPU depth buffer 시각.. 2023. 11. 7. [Unreal] 언어 현지화 설정 변경 (노드 이름 영문으로 변경) 개요 언리얼 사용시 한글이 편한 경우도 있으나, 노드 찾을 때는 일부만 한글로 되어있어, 유독 불편함이 느껴진다. 방법 1. 에디터 개인설정에서 아래와 같이 설정한다. 2. 언리얼 재시작 (필수) 아래와 같이 노드 이름이 영문으로 바뀐다. 2023. 11. 1. [Unreal/Material] Dither Temporal AA Dither Temporal AA 노드 가짜로 반투명 재질을 만들때 사용한다. opacity 값이 낮을수록, 구멍 뚫는 비율을 높이는 원리로 작동한다. (1 -> 0으로 갈수록 구멍을 더 많이 뚫는다.) 장점 - 값이 싸다. - 스크린 UV를 기준으로 하기 때문에, 멀리서보나 가까이서 보나 일정한 퀄리티를 낸다. 단점 - 반투명에 비해 깔끔하지 않다. 노이즈가 낀듯한 느낌이다. 반투명 머티리얼이 성능이 나쁜 이유 - 두 번 렌더링하기 때문이다. 참고영상 https://youtu.be/kvHh0Jd-D3Q 2023. 10. 31. [Unreal/Niagara] 소스 에미터로부터 리본 트레일 생성 결과 방법 소스 에미터 제작 1. burst로 스폰한다. 2. 퍼시스턴스 ID 설정 3. add velocity로 앞으로 전진하는 움직임을 만든다. 리본 에미터 제작 1. spawn particles from other emitter 모듈 추가 emitter name에 소스 에미터를 입력한다. 2. sample particles from other emiiter 모듈 추가 (fix issue 누르면 자동) 파라미터는 아래와 같이 설정한다. 3. 리본 렌더러 설정 2023. 10. 30. [Unreal/Material] 노말라이즈된 바운드 값 만들기 (로컬) 방법아래는 Z축만 노멀라이즈된 것이다. 모든 축을 하고 싶다면 각각 Remap 해주어야한다. 추가정보Local Position, Object Local Bounds는 3벡터 값이다. Remap...은 스칼라 값만 받는다. 2023. 10. 30. [Unreal/Niagara] 파티클 ID에 따른 회전 적용 결과나선 형태의 겹쳐진 메시들을 회전하여 360도로 감긴 모양을 만든다. 개수에 따라 자동으로 회전된다. 방법1. 파티클 업데이트에서 스크래치 패드 모듈을 추가한다. 2. 스크래치 패드 모듈을 아래와 같이 작성한다. int는 형변환을 하지 않고 나누면, 정수값이 나옴을 주의하라.3. 스크래치 모듈 파라미터는 아래와 같이 설정한다. 추가정보위처럼 제작시 회전 업데이트하는 모듈을 못쓴다. 그럴 땐, 더하기 연산으로 회전 업데이트를 구현한다. 2023. 10. 26. 이전 1 ··· 4 5 6 7 8 9 10 11 다음