Material Expression Reference UE4/Practice2017. 4. 12. 22:33
Material Expression Reference
https://docs.unrealengine.com/latest/KOR/Engine/Rendering/Materials/ExpressionReference/index.html
AtmosphericFogColor 오브젝트 위치나 특정 위치에서의 fog색상을 가져온다.
Desaturation 채도조정
Constant R
Constant2Vector R,G
Constant3Vector R,G,B
Constant4Vector R,G,B,A
DistanceCullFade Cull distance 오브젝트 fade
ParticleColor 파티클 색상제어
ParticleDirection 파티클 방향을 RGB로 표현
ParticleMotionBlurFade 파티클모션블러 강도 제어
ParticleRadius 파티클 반경을을 uu단위로 출력
ParticleRelativeTime 파티클 라이프타임을 출력 (0~1)
ParticleSize 파티클 사이즈 x,y 출력
ParticleSpeed 파티클 속도를 uu/s 단위로 출력
PerInstanceFadeAmount Foliage 처럼 인스턴싱된 스태틱 메시에 적용할 페이드 양에 관계된 float 값을 출력
PerInstanceRandom 스태틱 메시 인스턴스마다 다른 랜덤 실수값을 출력
Time 시간의 흐름을 더하는 데 사용(범위반복 가능)
TwoSidedSign 단면의 메쉬에 앞/뒷면 다른 재질 부여(+1 앞 ,-1 뒤)
VertexColor 버텍스칼라
- View Property 뷰사이즈 fov 등을 출력
- Precomputed AO Mask AO 값을 가져와 Mask로 활용. 월드 세팅 -> 라이트매스 세팅 아래 Use Ambient Occlusion 과 Generate Ambient Occlusion Material Mask 옵션을 둘 다 켜준 뒤 라이팅을 빌드해야 합니다. Max Occlusion Distance 같은 다른 AO 콘트롤은 AO 모습 트윅 작업에 좋습니다. 또 한 가지 Direct / Indirect Occlusion Fraction 둘 다 0 으로 설정하여, 이 AO 가 실제 레벨 라이팅에 영향을 끼치지 않도록 해 주십시오.
- ParticleRandom ?
ActorPositionWS Worldspace에서 오브젝트 위치의 Vector값
CameraPositionWS 카메라 위치 Vector값
LightmapUVs 라이트맵 UV좌표
ObjectOrientation 오브젝트 로컬 방향 Vector 값
ObjectPositionWS 오브젝트 위치 Vector값 (예로 폴리지에 대한 구체형 라이팅을 만든다든가 할 때 좋습니다.
ObjectRadius 오브젝트 반경값을 uu단위로 출력 (예 스케일 변화에 적용
Panner 텍스쳐 이동
ParticlePositionWS 개별 파티클의 월드 위치 Vector값
PixelNormalWS 현재 노멀에 따라 픽셀이 향하고 있는 방향을 나타내는 Vector값
Rotator 텍스쳐 회전
SceneTexelSize SceneColor 나 SceneDepth 표현식을 사용할 때와 마찬가지로 텍셀 크기만큼 이격(offset)시킬 수 있는 표현식입니다. 해상도가 고정되어 있지 않은 시스템에서 에지(edge)를 검출해내기 좋은 방법인데, 이런 계산이 없으면 작은 고정 값을 사용할 수밖에 없고, 낮은 해상도에서는 고르지 않은 결과가 나게 됩니다.
ScreenPosition 현재 렌더링되고 있는 픽셀의 화면 공간 위치를 출력 [0,0]-[1,1]
TextureCoordinate 텍스쳐 UV좌표
VertexNormalWS 월드 스페이스 버텍스 노멀을 출력하는 표현식입니다. WorldPositionOffset 처럼 버텍스 셰이더에서 실행되는 머티리얼 입력에서만 사용 가능. 노멀을 따라 위치를 오프셋시키면 UV 이음새를 따라 지오메트리가 떨어져 나가게 됨에 유의
ViewSize 뷰의 픽셀 단위 크기를 나타내는 2D 벡터를 출력하는 표현식
WorldPosition 현재 픽셀의 월드 스페이스 위치를 출력하는 표현식. 흔히 사용되는 때는 (PixelDepth 에서의 직교(orthogonal) 거리가 아닌) 카메라에서 픽셀까지의 방사(radial) 거리를 구할 때입니다. WorldPosition 은 텍스처 좌표로 사용하기에도, 텍스처 좌표를 사용하는 무관한 메시가 서로 가까이 있을 때 일치시키는 데도 좋습니다.
Custom 커스텀 쉐이더 작성.
Tangent Output ?
DepthFade 오브젝트 겹치는 부분 fade
PixelDepth 픽셀의 깊이(카메라거리)를 출력. (보이는 뷰만 계산)
SceneDepth 씬전체에 대한 깊이 출력. (안보이는 부분도 샘플링) 0~1
FontSample 폰트를 2D 텍스쳐로 컨버팅
FunctionInput Material Function 입력
FunctionOutput Material Function 출력
MaterialFunctionCall 다른 머티리얼이나 함수에서 외부 Material Function을 사용할 수 있도록 해 주는 표현식
StaticBool Boolean값
StaticSwitch 스위치 노드
TextureObject 함수 내 텍스처 함수 입력
PreviousFrameSwitch ?
BreakMaterialAttributes 머티리얼 안에서 머티리얼 레이어 함수를 사용할 때, 레이어의 한 부분만 사용하고 싶을 때
MakeMaterialAttributes Material Function에서 생성하여 사용. https://docs.unrealengine.com/latest/KOR/Engine/Rendering/Materials/LayeredMaterials/index.html
BlendMaterialAttributes ?
GetMaterialAttributes ?
SetMaterialAttributes ?
Abs 절대값
Ceil 올림수
Clamp 최소/최대수 범위로 한정
ComponentMask RGBA 채널 마스크
Cosine 코사인 (입력 0~1, 출력 -1~+1)
CrossProduct 외적 (두벡터에 대해 수직인 벡터)
Divide 나누기
DotProduct 내적 (두벡터의 각 성분을 곱한후 더해서 나오는 스칼라값, 두벡터 사이의 각을 구하기 위해 사용,감쇠연산에 사용)
Floor 내림수
Fmod 두 입력의 나누기 연산에서 부동 소수점 나머지를 반환 (반복사이클 값 얻기)
Frac 소수점 출력, 음수는 소수점 +1
LinearInterpolate 마스크 블렌딩
- Max 최대수 (입력 받은 값과 비교하여 높은 값을 출력, Lighten 효과와 비슷)
- Min 최소수 (입력 받은 값과 비교하여 낮은 값을 출력, Darken 효과와 비슷)
Multiply 곱
Normalize 벡터 총합이 1이 되는값, 각 x,y,z / sqrt(x^2+y^2+z^2) , 입력값 / L2-norm http://karmainearth.tistory.com/162
OneMinus 반전
Power 거듭곱수
Sine 사인
SquareRoot 제곱근
Subtract 빼기
Arccosine
ArccosineFast
Arctangent
Arctangent2
Arctangent2Fast
ArctangentFast
Logarithm2 ?
Round
Saturate ?
Tangent
Truncate ?
Parameters인스턴스 재질에 사용.
CollectionParameters 파라미터값을 별도로 저장후 호출해서 사용. https://docs.unrealengine.com/latest/KOR/Engine/Rendering/Materials/ParameterCollections/index.html
DynamicParameter RGBA (파티클에 사용)
FontSampleParameter 폰트 기반
ScalarParameter 스칼라
StaticComponentMaskParameter RGB 마스크
VectorParameter RGBA
TextureObjectParameter Texture object
TextureSampleParameter2D Texture
TextureSampleParameterSubUV particle subUV
TextureSampleParameterCube cubemap
TextureSampleParameterMovie movie texture
SpriteTextureSampler ?
ParticleColor 파티클에서의 색상제어 RGBA
ParticleDirection 파티클의 진행방향 색으로 표현 RGB
ParticleMacroUV 이미지 타일링, 제어는 파티클 시스템에서 macroUV항목.
ParticleMotionBlurFade 모션 블러 결과 파티클이 흐려지는 정도를 나타내는 값을 출력 (1:블러링없음 0:블러링 최대)
ParticlePositionWS 각 개별 파티클의 월드 스페이스 위치 RGB
ParticleRadius 각 파티클 개별적으로 반경을 언리얼 유닛으로 출력
ParticleRelativeTime particle life 를 0 에서 1 사이 상대적 수치로 출력 (0: 생성 1:사망)
ParticleSize 파티클 스프라이트의 X Y 크기를 출력하는 표현식 (사이즈에 따른 밝기 적용 가능)
ParticleSpeed 각 파티클의 현재 이동 속력을 초당 언리얼 유닛 단위로 출력
SphericalParticleOpacity 프로시저럴 구체형 오파시티 맵, 머터리얼 에디터에서는 다르게 보여 파티클에서 확인.
ParticleSubUV ParticleSubUV
TextureSampleParameterSubUV ParticleSubUV
ParticleRandom
LanscapeLayerBlend 다수의 텍스처 또는 머티리얼 망을 서로 블렌딩하여 랜드스케이프 레이어로 사용할 수 있게끔 만들어줍니다.
LandscapeLayerCoords 랜드스케이프 터레인에 머티리얼 망을 매핑시키는 데 사용할 수 있는 표현식
LandscapeLayerSwitch 특정 레이어가 랜드스케이프 리전(region)에 공헌하지 않을 때, 일부 머티리얼 연산을 제외시키는 것입니다. 특정 레이어의 웨이트(가중치)가 0 일 때 불필요한 계산을 제거하여 머티리얼을 최적화시킬 수 있습니다.
- LandscapeLayerWeight 머티리얼이 적용된 랜드스케이프에서 얻은 연관 레이어에 대한 웨이트에 따라 머티리얼 망을 블렌딩할 수 있는 표현식
- LandscapeVisibilityMask 랜드스케이프의 부분 표시여부를 제거하여, 동굴을 만들 때처럼 구멍을 만듭니다.
- LandscapeGrassOutput ?
- LandscapeLayerSample ?
FontSample 폰트를 텍스쳐로 변경
SceneColor postprocess scene color 출력 RGB ?
- SpriteTextureSampler 커스텀 스프라이트 머티리얼을 생성 ?
- TextureObject TextureObject
- TextureSample Texture
- TextureProperty 선택한 텍스처의 프로퍼티 출력 (텍스쳐 사이즈, 텍셀 사이즈)
- ParticleSubUV
- TextureObjectParameter
- TextureSampleParameter2D
- TextureSampleParameterSubUV
- TextureSampleParameterCube
- SceneTexture
BlackBody 온도를 입력하면 그 색과 강도 결과를 베이스 컬러와 이미시브 값을 구동하는 데 사용하여 물리적으로 정확한 결과를 얻을 수 있습니다. https://en.wikipedia.org/wiki/Black-body_radiation
BumpOffset Parallax Mapping. 하이트맵 (heightmap, 높이맵)을 사용하여 깊이 정보를 나타냅니다.
ConstantBiasScale 입력값을 받은 다음 편향치(Bias)를 더해 스케일 인수로 곱한 다음 결과를 출력하는 표현식.
DDX 픽셀 셰이더 계산에 사용되는 GPU 하드웨어 기능, DDX 파생 계산을 노출시킵니다 ?
DDY 픽셀 셰이더 계산에 사용되는 GPU 하드웨어 기능, DDY 파생 계산을 노출시킵니다 ?
DepthFade 반투명 오브젝트와 불투명 오브젝트가 겹칠 때 일어나는 이음새를 감추는 데 사용
DepthOfFieldFunction DOF로 인한 블러링이 적용될 때 아티스트가 머티리얼에 적용되는 효과를 조절할 수 있도록 하기 위한 표현식 (0:촛점이 잡힌 ~ 1:블러된)
Desaturation 채도
Distance 두벡터사이의 거리 Result = length(A - B) HLSL code: float Result = sqrt(dot(A-B, A-B))
- FeatureLevelSwitch 저사양 디바이스용 단순화된 머티리얼을 만들어 줍니다.
- Fresnel 표면 노멀과 카메라로의 방향에 대한 도트 곱에 따라 감쇠를 계산하는 표현식 [0,1]
- GIReplace 머티리얼이 GI 용으로 사용될 때 아티스트가 다른, 보통 더욱 단순한 표현식 체인을 지정할 수 있도록 해 줍니다. (기본 GI,staticindirect, dynamicindirect 자동 스위치)
- LightmassReplace 보통 렌더링 용도로 머티리얼을 컴파일할 때는 Realtime 입력을 틍과시키고, 글로벌 일루미네이션 용도로 머티리얼을 라이트매스로 익스포트할 때는 Lightmass 입력을 통과시키는 단순한 표현식입니다
- LinearInterpolate 블렌딩 마스크 (선형 보간법)
- Noise 프로시져 노이즈 생성
- Vector Noise 프로시져 벡터 노이즈 생성 (cell,perlin,voronoi)
- QualitySwitch 저사양 디바이스에서 낮은 퀄리티를 사용할 때처럼, 엔진의 퀄리티 레벨 전환에 따라 다양한 표현식 망을 사용할 수 있도록 해 줍니다.
- RotateAboutAxis 주어진 회전 축, 축 상의 점, 회전시킬 각에 따라 3채널 벡터 입력을 회전시키는 표현식입니다. 단순 시어즈보다 품질이 뛰어난 WorldPositionOffset 사용 애니메이션에 좋습니다.
- SphereMask 거리 계산에 따라 마스크 값을 출력하는 표현식
- AntialiasedTextureMask 부드러운 (안티 앨리어싱이 적용된) 트랜지션 마스크를 사용하는 머티리얼을 만들 수 있습니다.(선명한 엣지 생성)
- DistanceToNearestSurface 서피스 거리 값. 겹친영역 엣지 색상 표현 가능. mesh distance fields 활성화 필요.
- DistanceFieldGradient 정규화되면, 오브젝트의 디스턴스 필드 내 X,Y,Z 이동 방향을 출력. Distance Field Gradient 머티리얼 표현식 노드가 액체 흐름 시뮬레이션에 잘 맞습니다. ?
- Add Reroute Node....
- AntialisedTectureMask
- AtmosphericLightColor
- AtmosphericLightVector
- ClearCoatNormalCustomOutput
- EyeAdaption
- MaterialProxyReplace
AppendVector 벡터 채널 추가
ComponentMask 채널 마스크
CrossProduct 외적
DeriveNormalZ 2채널 노멀맵. z=sqrt(1-(x^2+y^2)) 1= x^2+y^2+z^2
DotProduct 내적
Normalize 노멀라이즈
Transform 좌표계변환 ( world, local, tangent) 예) 큐브맵 샘플링용 월드 스페이스 노멀을 생성하는 데도 좋습니다.
TransformPosition 폐기 / 사용 하지 않음 / Worldposition 사용.
ActorPositionWS 액터 위치 벡터
CameraPositionWS 카메라 위치 벡터
CameraVectorWS 카메라 방향 벡터
Constant3Vector RGB
Constant4Vector RGBA
LightVector 사용안함 라이팅 계산이 디퍼드 방식으로 바뀌어서 이 표현식은 폐기 ( 필요시 AtmosphericLightVector 라이트 위치벡터 사용)
ObjectBounds 어브젝트 바운스 벡터
ObjectOrientation 오브젝트 방향 벡터
ObjectPositionWS 오브젝트 위치 벡터
ParticlePositionWS 각 파티클 위치 벡터
PixelNormalWS 노멀에 따라 픽셀이 향하는 방향 벡터
ReflectionVectorWS 서피스 노멀에 반사된 카메라 방향 벡터 예) 인바이언먼트 맵에 흔히 사용되며, 리플렉션 벡터의 x/y 컴포넌트는 큐브맵 텍스처로 들어가는 UV 로 사용
VertexNormalWS world space vertex normal 예) 메쉬를 스케일링할때 유용.
- Vector Noise 벡터 노이즈 (cell, perlin, voronoi)
- PreSkinnedNormal
- PreSkinnedPosition
'UE4 > Practice' 카테고리의 다른 글
Material Function Reference (0) | 2017.04.26 |
---|---|
Ray marching (0) | 2017.04.17 |
Materials (0) | 2017.04.12 |
[BP] Flow control node (0) | 2017.04.03 |
Vertex Animation (0) | 2017.03.13 |