마법적 구슬형태 제작



마법적 구슬형태 제작

금별 0 1,999 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


번호 포토 분류 제목 글쓴이 날짜 조회
799 유니티 유니티 - Stylized 물속성 검기 VFX 제작과정(중국어/AI한글자막) 금별 04.16 215
798 언리얼4 언리얼 - 사인파 왜곡 머트리얼 예제 금별 04.16 183
797 3D 3DsMax - 임팩트 메쉬 제작 간단과정 금별 04.16 143
796 2D 애프터이펙트 - 2D 카툰스타일 불 제작과정 금별 04.16 154
795 2D 애프터이펙트 - 한국어_2D 카툰스타일 스파크/라이트닝 제작과정 금별 04.16 143
794 유니티 유니티 - Stylized 회오리 VFX 스킬 제작과정 금별 04.16 160
793 유니티 유니티 - Stylzied 검기 제작과정(중국어/AI한글자막) 금별 04.16 133
792 유니티 유니티 - 흐르듯 사라지는 2D 카드 이펙트/트레일 제작과정 금별 04.10 247
791 언리얼4 린반라이브 - 초급 최신 리뉴얼 정보 및 QNA / 사소한 라이브 금별 04.09 188
790 언리얼4 언리얼5 - 값싸고 유동적인 폭포제작과정(한글자막) 금별 04.07 221
789 언리얼4 린반 언리얼 이펙트 라이브(3.27일자) - Texcoord 여러가지 설명 외 금별 04.03 167
788 언리얼4 언리얼5 - 나이아가라의 실용적인 최적화와 확장성【CEDEC2023】 금별 04.03 247
787 언리얼4 언리얼/유니티 - 파티클 이미터 기본사이즈 설명(영어자막) 금별 04.01 181
786 언리얼4 언리얼/유니티 - 파티클 빌보드 시스템 소개(영어자막) 금별 04.01 162
785 2D 픽셀 컴포저 - 노드 기반 픽셀 이미지,플립북 제작 금별 04.01 173
784 언리얼4 언리얼 - 엠버젠활용한 볼륨의 랜덤 회전 생성 적용 간단팁 금별 04.01 168
783 2D 애프터이펙트 - Water Escape 제작방법(한글자막) 금별 03.28 221
782 언리얼4 언리얼5.4 - 나이아가라의 메모가 파라미터마다 재편집가능 금별 03.28 178
781 공구,번역정보 언리얼 - 커스텀 뷰 모드를 위한 포스트 프로세스 머티리얼 금별 03.28 188
780 언리얼4 언리얼 - 눈 셰이더에 디더링 간단 적용노드 및 예제이미지 금별 03.28 169
779 언리얼4 언리얼 - 셰이더 토이를 활용한 커스텀 머트리얼 표현식 사용법(한글자막) 금별 03.28 160
778 2D 포토샵/언리얼5 - 게임 VFX용 페인트 트레일 텍스처를 드로잉으로 처리하는 방법 금별 03.25 234

 

Banner
 
Facebook Twitter GooglePlus KakaoStory NaverBand