마법적 구슬형태 제작



마법적 구슬형태 제작

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


번호 포토 분류 제목 글쓴이 날짜 조회
447 언리얼4 언리얼5.1 - 클라드니 패턴(반지의 제왕 인트로) 이펙트 금별 2023.04.02 1514
446 언리얼4 언리얼 - 리본을 활용한 크리스탈 외곽효과 제작방법 금별 2023.04.01 1702
445 언리얼4 언리얼5 - 메시를 다른 메시로 디졸브하는 방법 금별 2023.03.31 1899
444 언리얼4 언리얼 - 노이즈에 그라데이션 반영 금별 2023.03.30 2211
443 언리얼4 언리얼 - UV 부풀어 보이게 하는 팁 금별 2023.03.30 2021
442 언리얼4 언리얼 - Polar UV에 대한 간단팁 금별 2023.03.30 2230
441 언리얼4 언리얼4 - 머트리얼로 버블 느낌 구현 금별 2023.03.26 2444
440 유니티 유니티 - 레이저 채찍으로 용소환 바닥 크랙생성 제작튜토리얼 금별 2023.03.26 2343
439 유니티 유니티 앰플리파이 쉐이더 - 모델의 조각/분해/축중심회전 금별 2023.03.26 1946
438 3D 후디니- 그리드를 활용한 충격파 그라운드스파이크 간단제작과정 금별 2023.03.26 2083
437 언리얼4 언리얼 - FFT Ocean Flipbook : Blender 및 UE를 사용하여 생성 및 샘플링하는 방법 금별 2023.03.20 1887
436 언리얼4 언리얼 - 무지갯빛 버블 쉐이더 제작과정 금별 2023.03.17 2157
435 유니티 유니티 - 레거시 쉐이더를 쉐이더 그래프에서 커스텀 함수로 포팅 제작과정 금별 2023.03.15 2016
434 언리얼4 언리얼 5.1 - Creating cinematic VFX from scratch 금별 2023.03.14 1906
433 유니티 유니티 - 간단한 시퀀스 보간 블랜드 제작과정 금별 2023.03.09 1988
432 언리얼4 언리얼 - 회전하는 2D 소용돌이 쉐이더 제작노드 금별 2023.03.08 2762
431 언리얼4 언리얼 - Cairo Tiling 제작노드 및 설명영상 금별 2023.03.08 1966
430 언리얼4 언리얼 - 머터리얼 에디터 4가지 활용 팁 금별 2023.03.08 1677
429 유니티 유니티 - 크리처 소환 이펙트 제작과정 금별 2023.03.08 3310
428 유니티 유니티 - AI 활용한 쉐이더 제작 금별 2023.03.07 3027
427 2D 스테이블 디퓨전을 활용한 AI 시퀀스 텍스쳐 제작방법 금별 2023.03.07 4441
426 언리얼4 언리얼 - 메쉬에 아웃라인 머트리얼 간단 제작방법 금별 2023.03.04 2349

 

Banner
 
Facebook Twitter GooglePlus KakaoStory NaverBand