Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Multithread
- multi-core
- c++
- stl
- 디자인패턴
- 멀티쓰레드
- thread
- Atomic
- 멀티코어 프로그래밍
- 멀티코어
- EFFECTIVE C++
- 유니크포인터
- 복사생성자
- observer pattern
- MultiCore
- 스마트포인터
- 게임공학과
- Design Pattern
- sequential
- vector
- C
- 옵저버 패턴
- 한국산업기술대학교
- 옵저버
- random access
- material
- 프레임워크
- 쓰레드
- Unreal
- 메모리관리
Archives
- Today
- Total
태크놀로지
[Material] Ice (Displacement mapping)(2) 본문
오늘목표
중력가속도에 의해 z축으로 흘러내리도록 표현 (디스플레이스먼트 맵핑 - 테셀레이션)
실습
특정 패턴에 따라 흘러내리는 부분을 표현할겁니다. 우선, 테셀레이션을 켜주고 Noise 패턴을 월드 디스플레이스먼트에 연결해줍시다.
하지만 현재 월드 노말값, 방향값이 적용되지 않아 한쪽으로만 쏠리는 현상이 일어납니다. VertexNormalWS를 곱해줍시다.
우리가 만들 얼음 이펙트는 모든 방향으로 뻗는게 아닌 중력가속도로 인해 z축으로만 뻗어나가야합니다. worldnormal값의 z축을 뽑아와 역수를 취해줍시다.
이 값을 noise패턴과 곱해줬을때 원하는 결과가 나오지 않습니다. 이유는 z축을 뽑아온 값들중 음수값이 존재하기 때문에 clamp로 모두 양수로 변경해준뒤 곱해줍시다.
얼음의 아래부분만 적용된것을 확인할 수 있습니다. 하지만 z축으로 향하지 않고 각기 방향으로 향하고 있습니다. Noise 패턴과 Mask로 z축을 뽑아낸 값을 곱해준후 만들어진 벡터에서 MakeFloat3를 사용하여 (0,0,z)의 벡터값을 만들어 월드 디스플레이스먼트에 연결해줍니다.
최종결과
출처
한국산업기술대학교 게임공학과 이택희 교수님 고급그래픽스효과 강의 - Ice Material
'고급 그래픽스 효과' 카테고리의 다른 글
[Particle] Beam (0) | 2020.07.02 |
---|---|
[Material] Wave (0) | 2020.07.02 |
[Material] Ice (Fresnel, Subsurface)(1) (0) | 2020.07.01 |
[Material] Material Parameter (0) | 2020.06.29 |
[Material] Lava Effect(용암효과)(4) (0) | 2020.06.29 |