마법적 구슬형태 제작



마법적 구슬형태 제작

금별 0 3,731 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


번호 포토 분류 제목 글쓴이 날짜 조회
1261 언리얼4 Create a Multi-Layer Ribbon Trail VFX in UE5 Niagara! (Advanced Color & Edge Material) ????〰️✨ ashif 11.18 25
1260 언리얼4 언리얼5.7기준 - 나이아가라의 확장성 및 모범 사례 금별 11.17 75
1259 언리얼4 언리얼 - Niagara로 스플라인을 따라 발사되는 파티클 제작하기 금별 11.17 69
1258 언리얼4 언리얼5 - 오브젝트를 풍경에 혼합하기: 런타임 가상 텍스처 사용법 금별 11.17 61
1257 언리얼4 언리얼5 - 동적 SubUV 데칼(Decal) 제작하기 금별 11.17 68
1256 언리얼4 언리얼 - 리본 VFX 설명_색상·너비·왜곡 커스텀 제작과정(한글자막) 금별 11.15 89
1255 언리얼4 Create a Dark Energy Orb VFX in UE5 Niagara! (Warped Cage, Dynamic Rings & Core Glow Tutorial) ????????✨ ashif 11.13 82
1254 언리얼4 언리얼5 Material 업데이트 요약 (UE 5.6 ~ 5.7 및 미래 전망) 금별 11.11 174
1253 유니티 유니티 - ASE 활용 Stylized 폭발 과정(한글자막) 금별 11.11 157
1252 유니티 유니티 - Stylized 불꽃 픽셀화 간단 제작과정(한글자막) 금별 11.11 159
1251 3D 마법진 눈알 움직임 연출 예제 금별 11.11 148
1250 언리얼4 언리얼5 - 커스텀 노드: UV 스케일 및 이동(Scale & Translate) 직접 만들기 금별 11.11 136
1249 유니티 유니티 - ASE로 UV Flow + Noise 흔들림 기본 VFX 셰이더 제작과정(한글자막) part3 금별 11.05 164
1248 유니티 유니티 - ASE로 UV Flow + Noise 흔들림 기본 VFX 셰이더 제작과정(한글자막) part2 금별 11.05 127
1247 유니티 유니티 - ASE로 UV Flow + Noise 흔들림 기본 VFX 셰이더 제작과정(한글자막) part1 금별 11.05 135
1246 언리얼4 언리얼/3Ds Max - 우주 느낌의 하트 제작_2 머트리얼 적용과정 금별 10.28 261
1245 언리얼4 언리얼/3Ds Max - 우주 느낌의 하트 제작_1 모델링/UV 제작과정 금별 10.28 181
1244 언리얼4 후디니/언리얼 - 후디니 활용 절차적(프로시졀) 검기 메시,텍스쳐 VFX 제작 기법(한글자막) 금별 10.28 191
1243 언리얼4 언리얼5 - 음파 VFX 제작: Niagara Particle과 기본 Scene 제작 금별 10.28 203
1242 언리얼4 언리얼5 - 음파 VFX 제작: Material 연결과 원리 분석 금별 10.28 162
1241 언리얼4 언리얼5 - 음파 VFX 제작: 모델링과 텍스처 기초 금별 10.28 167
1240 언리얼4 언리얼5 - 디지털 트랜지션 생성 및 파티클 픽셀화 제작과정(한글자막) 금별 10.22 223

 

Banner
 
Facebook Twitter GooglePlus KakaoStory NaverBand