마법적 구슬형태 제작



마법적 구슬형태 제작

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


번호 포토 분류 제목 글쓴이 날짜 조회
403 언리얼4 언리얼 나이아가라 - 디졸브 활용 소환수 공격 제작과정 금별 2023.01.10 2560
402 유니티 유니티 VFX 그래프 - 효과적인 데칼 제작 셋업 방법 금별 2023.01.05 3595
401 유니티 유니티 - Creative Damage Decals & VFX 금별 2023.01.05 1806
400 언리얼4 언리얼 - VFExtra TextureMaker Demo 금별 2022.12.29 1896
399 언리얼4 언리얼 - 물 회오리 효과 제작방법 금별 2022.12.25 2033
398 언리얼4 언리얼 - 머트리얼만으로 구성된 트랜지션 효과 예제 및 제작노드 금별 2022.12.23 2196
397 3D 후디니 - 카툰풍 2D 화염 효과 제작방법 금별 2022.12.18 2748
396 언리얼4 언리얼 나이아가라 - 디졸브 엣지에 파티클 생성방법 금별 2022.12.16 1942
395 언리얼4 Baker in Unreal Engine 5.1 Niagara Tutorial | Download Files ashif 2022.12.15 1706
394 유니티 유니티 VFX 그래프 - 리얼한 포털효과 제작방법 금별 2022.12.14 2242
393 유니티 유니티 VFX 그래프 - Kassadin Slash 제작방법 금별 2022.12.14 2830
392 유니티 유니티 쉐이더 그래프 - Gradients 2D Sky Tutorial 금별 2022.12.12 1850
391 언리얼4 언리얼 - Hit 플레어 간단 제작과정 금별 2022.12.11 1888
390 언리얼4 언리얼 - 간단 반구 폭파 간단 제작예제 금별 2022.12.11 2269
389 언리얼4 언리얼 - 디지털 웨이브 간단 제작예제 금별 2022.12.11 2750
388 언리얼4 언리얼 - 광역 마법진 간단 제작예제 금별 2022.12.11 2813
387 3D 3dsmax에서 UV polar coordinate의 불규칙 모델 구현 금별 2022.12.11 2169
386 언리얼4 언리얼 - 저렴한 포그 제작방법[Depth-mask post process] 금별 2022.12.10 1580
385 유니티 슬래밍 AoE를 만드는 방법 - CGM Summer 22 금별 2022.12.07 1756
384 언리얼4 언리얼5 - 폴더에서 특정폴더/파일삭제후 성능을 즉시 향상시키는 방법 금별 2022.12.06 1628
383 언리얼4 언리얼5 - 아틀라스 마스터 머티리얼을 만드는 방법 금별 2022.12.06 3622
382 언리얼4 언리얼5 - 텍스쳐 메모리 절약팁(블루 채널 사용 간소화) 금별 2022.12.06 2667

 

Banner
 
Facebook Twitter GooglePlus KakaoStory NaverBand