마법적 구슬형태 제작



마법적 구슬형태 제작

금별 0 2,227 2019.08.30 06:32

 

I guess this is the first entry to this category, since I never had such a demand for a write-up before. So here goes!

The different between this format and regular “My take on shaders” post is that this is a more direct format, just going through a particular effect that I find too specific to write a complete tutorial about. Also, in some cases, like this one, I won’t be providing the completed code but I will be writing about the general idea and the process behind the specific effect.

In my tweet I mentioned it being a form of “raymarching” though I might be using the term loosely here. While I use a loop to move towards a certain direction, the technique doesn’t really resemble traditional raymarching. So keep that in mind.

 

The core idea

 

I’ve been constantly thinking about how to take advantage of past effects, and in this case I had an idea concerning the “layered parallax” effect that I demonstrated in an older post.

With that technique, you could sample a texture using coordinates that had been offset “inwards” of the object, by using the camera’s view direction in tangent space. The effect is super useful for adding some depth to materials like ice, or tiles or basically anything you want to make it look like “there’s something underneath the surface”. The result looked something like this:

 

 

My thoughts going from this effect were these:

  • Let’s ditch the main texture, don’t need it for now
  • What if in every “layer” of this effect, I performed a “step” function on a 2D noise texture, where the cutoff value ranges from 0 to 1 based on the “index” of the layer?

The “stepping” (that’s what I’ll call “using the “step” function” from now on) was inspired by the concept of using grayscale textures as heightmaps, with their value representing depth. Adjusting the cutoff value of a simple texture with a radial gradient looks like this:

 

As if the texture actually represents a cone and when I’m using “step” I’m cutting slices into it which decrease in size as I get to the top. Basically I’m super-over-explaining SDFs here, but that representation really helped clear things in my head.

So, if I were to assign 1 to the cutoff value of the out-most layer, 0 to the value of the deepest layer and the inbetween values to the inbetween layers, each parallax layer would have a differently sized “slice” of the texture.

If we add that “stepping” to each layer, with the same radial gradient texture, we end up with something like this (the texture is tiled 5 times so just pay attention to the middle one):

 

This uses 10 iterations on the grayscale texture

Turn up the iterations/number of layers (here it’s something 128) and you have smoothness:

 

Add a somewhat more complex texture, like a simple cloud texture and you have this:

 

 

Trying out random textures and noises is super fun with this one btw.

Add the material on a sphere and you have the ORB:

 

 

Add 2 HDR colors, and lerp between them based on the layer “index” instead of just lerping the intensity from 0 to 1 (also some Post-processing for the looks):

 

 

Add some waving displacement when sampling the texture in each layer for some extra variation and *magic*:

 

 

And that’s it! I hope that was helpful and I hope there will be many more write-ups in the future, especially as I’m easing into VFX stuff at the moment of writing. So, I’ll see you in the next one! ????



 

These posts will never go behind a paywall. But if you really really super enjoyed this post, consider buying me a coffee, or becoming my patron to get exciting benefits!

 

Comments


번호 포토 분류 제목 글쓴이 날짜 조회
1049 언리얼4 언리얼 - 하나의 나이아가라 이미터에서 다양한 메쉬 랜덤생성제작 간단팁 금별 11.14 17
1048 언리얼4 언리얼 - 원형 텍스처에 방사형 왜곡 간단 생성과정 금별 11.14 17
1047 언리얼4 언리얼5 - 나이아가라 로컬 이벤트 검기 제작과정예제 금별 11.14 17
1046 2D 섭스턴스 디자인 - 제어 가능한 균열 예제 금별 11.14 16
1045 언리얼4 언리얼 - 나이아가라 활용한 전기 이펙트 제작과정(한글자막) 금별 11.13 34
1044 언리얼4 Healing Spell in UE5.5 Niagara Tutorial ashif 11.12 28
1043 언리얼4 언리얼 - 평면 디졸브와 횡단면 설명(한글자막) 금별 11.12 53
1042 언리얼4 언리얼5 - 물속성 토네이도 파라미터 간단설명(한글자막) 금별 11.12 57
1041 언리얼4 언리얼5 - 디지털 패턴 스폰 기둥2 제작과정(한글자막) 금별 11.12 44
1040 언리얼4 언리얼/유니티 - Sci-fi 스타일의 버튼 셰이더 제작과정(한글자막) 금별 11.09 63
1039 언리얼4 언리얼5 - 디지털 패턴 스폰 기둥 제작과정(한글자막) 금별 11.09 67
1038 언리얼4 유니티 - Fire Orb AOE || 프레넬, 깊이, 중심 불투명도 및 왜곡 설명(한글자막) 금별 11.04 114
1037 언리얼4 언리얼/유니티 - 애니메이션 SF 배경(절차적 모양과 패턴/한글자막) 금별 11.04 83
1036 언리얼4 언리얼+AI - 나이아가라 파티클과 상호 작용 위한 시퀀스 프레임 텍스처 생성(한글자막) 금별 10.31 147
1035 언리얼4 언리얼/후디니 - 고급 프랙처링 설정(한글자막) 금별 10.31 101
1034 언리얼4 언리얼5 - 마블 로키의 TVA 상자효과를 따라한 이펙트 제작과정(한글자막) 금별 10.29 124
1033 언리얼4 언리얼5 - VAT 애니메이션 플러그인 활용방법 및 예제(한글자막) 금별 10.29 107
1032 언리얼4 언리얼 - 나이아가라 활용 흩날리는 나뭇잎 제작과정(한글자막) 금별 10.29 105
1031 언리얼4 언리얼 - 간단블랙홀 제작과정(한글자막) 금별 10.29 97
1030 언리얼4 언리얼5 - 포털 효과 제작과정(한글자막) 금별 10.25 139
1029 언리얼4 언리얼5 - 유니티의 Twirl 노드를 언리얼에서 재현해보기 금별 10.25 105
1028 언리얼4 언리얼 - VHS(비디오테이프) 노이즈 셰이더 제작과정(한글자막) 금별 10.25 95

 

Banner
 
Facebook Twitter GooglePlus KakaoStory NaverBand