SlideShare una empresa de Scribd logo
1 de 22
Texturering & Modeling
                 a Procedual Approach



               김정근
Chapter 12
Noise, Hypertexture, Antialiasing, and Gesture
Agenda
         The NYU Torch
                     Smoke

            Time Dependency

               Smoke Rings

                Optimization

            Turbulence


                           3
The NYU Torch




                4
Smoke

        “hypertexture를 사용해서
        움직이는 연기 column의 모
               양을 만듬”




                              5
기본적인 접근 : Smoke
Smoke “column”
부드러운 Smoke “column”을 작성하고 그 안에 x, y 상에서 교란 시킴




Column Opacity and Width
이것은 최종결과에 영향을 미칠 수 있음




                                                6
기본적인 접근 : Smoke




  “Column Width의 차이만 있으나
      외관의 차이는 극적이다”
                           7
Time Dependency
Smoke “drift”
반대방향 안에 있는 turbulence 의 domain를 움직여봄으로써,
시간이 흐름에 따라 어떤 방향으로 “drift” 하는 것처럼 보이는 연기를 만들려 함




                                                  8
Time Dependency
y를 1차원으로 아래쪽으로 이동
상승하는 인상을 줌




x를 왼쪽으로 이동
더 큰 y 값으로 운동의 속도를 증가
smoke가 수직으로 움직이는 인상을 주지만 그것은 상단에 가깝게 흐트러지는 것처럼
오른쪽으로 차츰 사라짐



“연기의 특정한 형태는 시간이 지남에 따라 극적으로 달라질 수 있으며
       아직 연기의 일반적인 느낌은 동일하게 유지”

                                                 9
Smoke Rings




              10
Smoke Rings
turbulence 함수가 공간을 왜곡하면
column은 자체로 가로가 두배로 나타남


Column은
높게 일어나도록 해야하며 너무 낮게 발생하면 링이 공간에서
어딘가로 오프되듯이 형성되어 나타날때 column 그 자체가 아웃되지 않음



두 가지 gain 곡선을 채용
y의 함수로 column 근처 turbulence amplitude ,
y의 함수로부터 멀리 column 에서 다른 컨트롤의 turbulence 진폭을 제어
낮은 스모크 링에 의해서 후자의 곡선은 항상 전자 뒤에 언제나 지체



                                                  11
Optimization

“연기는 Sample 볼륨 내에서 상당히 부족하기 때문에
판단력있는 presampling을 기반으로 최적화 하기 좋다”




                                12
첫번째 렌더링                                       Optimization




약 8시간
AT&T Pixel Machine with 64 DSP32 processors

640×480×640 볼륨의 단일 프레임




         “애니메이션을 하기에 상당히 비현실적”
       볼륨 내의 연기를 찾아 작은 해상도로 이미지를 미리 계산하여 속도를 높임
                          그 볼륨 내에서 최종 계산을 수행



                                                             13
더 구체적으로                               Optimization




예비 Raymarch
마지막 X, Y, Z 해상도 4분의 1 로 예비 raymarch


1/64
전체 계산하는 것처럼 많은 밀도 평가는 오직 1/64 만큼 필요함


각 4X4에서
모든 nonzero 밀도를 경계 z를 따라 간격을 저장


Null interval이 됨
각 Pixel에 이 간격이 모든 이웃 Pixel의 간격과의 조합으로 확장, 보수할 수 있음


                                                     14
최종으로                    Optimization




Z intervals
최종 raymarching의 도메인을 제한하는 Z 간격을 경계의 이미지를 사용


결과적으로
30 배 이상 단축, 약 16분 소요 (subsampled prepass에 대한 시간을 포함)



Smoke는
공간내에서 희박하기 때문에 시간단축이 크며
밀도가 많은 Sample widths가 zero로 떨어지기 때문에 작은 디테일은 무시되지 않음




                                                       15
Optimization




               16
Optimization




               17
Turbulence
Turbulence
대리석, 구름, 폭발, 등을 만들기 위해 사용, Noise 함수 위에 만들어진 간단한 프랙탈 생성 루프




     “전혀 실제 turbulence 모델이 아니다”



                                                   18
Turbulence
주요 트릭 : fabs()function
gradient 불연속적인 “fault lines”을 만들고 turbulent 흐름의 결과를 보고
생각한 것이 눈속임으로 보이게 된다




                                                         19
Turbulence
phase shift
turbulence() 함수는 친숙한 대리석 트릭과 같이 최상의 결과를 제공

           sin(point + turbulence(point) * point.x);


lofreq
turbulence의 가장 낮은 주파수 성분을 설정



hifreq
turbulence 효과가 하나의 Pixel 수준 아래로 도달하도록 함수에 의해 사용



                                                       20
Q&A
감사합니다

Más contenido relacionado

Más de CARROTCG

20120713 ch13
20120713 ch1320120713 ch13
20120713 ch13CARROTCG
 
Procedural synthesis of geometry
Procedural synthesis of geometryProcedural synthesis of geometry
Procedural synthesis of geometryCARROTCG
 
120427 celluar texture
120427 celluar texture120427 celluar texture
120427 celluar textureCARROTCG
 
120413 making noises
120413 making noises120413 making noises
120413 making noisesCARROTCG
 
Texture Modeling a Procedual Approach Chater 2 : Building Procedural Textures
Texture Modeling a Procedual Approach Chater 2 : Building Procedural TexturesTexture Modeling a Procedual Approach Chater 2 : Building Procedural Textures
Texture Modeling a Procedual Approach Chater 2 : Building Procedural TexturesCARROTCG
 
Practical methods for texture design web
Practical methods for texture design webPractical methods for texture design web
Practical methods for texture design webCARROTCG
 
Volumetric cloud modeling with implicit functions web
Volumetric cloud modeling with implicit functions webVolumetric cloud modeling with implicit functions web
Volumetric cloud modeling with implicit functions webCARROTCG
 
Texture Modeling a Procedual Approach #01
Texture Modeling a Procedual Approach #01Texture Modeling a Procedual Approach #01
Texture Modeling a Procedual Approach #01CARROTCG
 
120216 ch 12_creating_elements
120216 ch 12_creating_elements120216 ch 12_creating_elements
120216 ch 12_creating_elementsCARROTCG
 
120119 ch 7_time_and_temporal_manipulations
120119 ch 7_time_and_temporal_manipulations120119 ch 7_time_and_temporal_manipulations
120119 ch 7_time_and_temporal_manipulationsCARROTCG
 
120106 ch 6_matte_creation_and_manipulation_web
120106 ch 6_matte_creation_and_manipulation_web120106 ch 6_matte_creation_and_manipulation_web
120106 ch 6_matte_creation_and_manipulation_webCARROTCG
 
120106 ch 5_basic image compositing_re
120106 ch 5_basic image compositing_re120106 ch 5_basic image compositing_re
120106 ch 5_basic image compositing_reCARROTCG
 
111118 ch 4_basic image manipulation_web
111118 ch 4_basic image manipulation_web111118 ch 4_basic image manipulation_web
111118 ch 4_basic image manipulation_webCARROTCG
 
111028 ch 3_the digital representation of visual information
111028 ch 3_the digital representation of visual information111028 ch 3_the digital representation of visual information
111028 ch 3_the digital representation of visual informationCARROTCG
 
The Art and Science of Digital Compositing Chapter 1,2
The Art and Science of Digital Compositing Chapter 1,2The Art and Science of Digital Compositing Chapter 1,2
The Art and Science of Digital Compositing Chapter 1,2CARROTCG
 

Más de CARROTCG (18)

20120921
2012092120120921
20120921
 
20120824
2012082420120824
20120824
 
20120810
2012081020120810
20120810
 
20120713 ch13
20120713 ch1320120713 ch13
20120713 ch13
 
Procedural synthesis of geometry
Procedural synthesis of geometryProcedural synthesis of geometry
Procedural synthesis of geometry
 
120427 celluar texture
120427 celluar texture120427 celluar texture
120427 celluar texture
 
120413 making noises
120413 making noises120413 making noises
120413 making noises
 
Texture Modeling a Procedual Approach Chater 2 : Building Procedural Textures
Texture Modeling a Procedual Approach Chater 2 : Building Procedural TexturesTexture Modeling a Procedual Approach Chater 2 : Building Procedural Textures
Texture Modeling a Procedual Approach Chater 2 : Building Procedural Textures
 
Practical methods for texture design web
Practical methods for texture design webPractical methods for texture design web
Practical methods for texture design web
 
Volumetric cloud modeling with implicit functions web
Volumetric cloud modeling with implicit functions webVolumetric cloud modeling with implicit functions web
Volumetric cloud modeling with implicit functions web
 
Texture Modeling a Procedual Approach #01
Texture Modeling a Procedual Approach #01Texture Modeling a Procedual Approach #01
Texture Modeling a Procedual Approach #01
 
120216 ch 12_creating_elements
120216 ch 12_creating_elements120216 ch 12_creating_elements
120216 ch 12_creating_elements
 
120119 ch 7_time_and_temporal_manipulations
120119 ch 7_time_and_temporal_manipulations120119 ch 7_time_and_temporal_manipulations
120119 ch 7_time_and_temporal_manipulations
 
120106 ch 6_matte_creation_and_manipulation_web
120106 ch 6_matte_creation_and_manipulation_web120106 ch 6_matte_creation_and_manipulation_web
120106 ch 6_matte_creation_and_manipulation_web
 
120106 ch 5_basic image compositing_re
120106 ch 5_basic image compositing_re120106 ch 5_basic image compositing_re
120106 ch 5_basic image compositing_re
 
111118 ch 4_basic image manipulation_web
111118 ch 4_basic image manipulation_web111118 ch 4_basic image manipulation_web
111118 ch 4_basic image manipulation_web
 
111028 ch 3_the digital representation of visual information
111028 ch 3_the digital representation of visual information111028 ch 3_the digital representation of visual information
111028 ch 3_the digital representation of visual information
 
The Art and Science of Digital Compositing Chapter 1,2
The Art and Science of Digital Compositing Chapter 1,2The Art and Science of Digital Compositing Chapter 1,2
The Art and Science of Digital Compositing Chapter 1,2
 

20120713 ch12

  • 1. Texturering & Modeling a Procedual Approach 김정근
  • 2. Chapter 12 Noise, Hypertexture, Antialiasing, and Gesture
  • 3. Agenda The NYU Torch Smoke Time Dependency Smoke Rings Optimization Turbulence 3
  • 5. Smoke “hypertexture를 사용해서 움직이는 연기 column의 모 양을 만듬” 5
  • 6. 기본적인 접근 : Smoke Smoke “column” 부드러운 Smoke “column”을 작성하고 그 안에 x, y 상에서 교란 시킴 Column Opacity and Width 이것은 최종결과에 영향을 미칠 수 있음 6
  • 7. 기본적인 접근 : Smoke “Column Width의 차이만 있으나 외관의 차이는 극적이다” 7
  • 8. Time Dependency Smoke “drift” 반대방향 안에 있는 turbulence 의 domain를 움직여봄으로써, 시간이 흐름에 따라 어떤 방향으로 “drift” 하는 것처럼 보이는 연기를 만들려 함 8
  • 9. Time Dependency y를 1차원으로 아래쪽으로 이동 상승하는 인상을 줌 x를 왼쪽으로 이동 더 큰 y 값으로 운동의 속도를 증가 smoke가 수직으로 움직이는 인상을 주지만 그것은 상단에 가깝게 흐트러지는 것처럼 오른쪽으로 차츰 사라짐 “연기의 특정한 형태는 시간이 지남에 따라 극적으로 달라질 수 있으며 아직 연기의 일반적인 느낌은 동일하게 유지” 9
  • 11. Smoke Rings turbulence 함수가 공간을 왜곡하면 column은 자체로 가로가 두배로 나타남 Column은 높게 일어나도록 해야하며 너무 낮게 발생하면 링이 공간에서 어딘가로 오프되듯이 형성되어 나타날때 column 그 자체가 아웃되지 않음 두 가지 gain 곡선을 채용 y의 함수로 column 근처 turbulence amplitude , y의 함수로부터 멀리 column 에서 다른 컨트롤의 turbulence 진폭을 제어 낮은 스모크 링에 의해서 후자의 곡선은 항상 전자 뒤에 언제나 지체 11
  • 12. Optimization “연기는 Sample 볼륨 내에서 상당히 부족하기 때문에 판단력있는 presampling을 기반으로 최적화 하기 좋다” 12
  • 13. 첫번째 렌더링 Optimization 약 8시간 AT&T Pixel Machine with 64 DSP32 processors 640×480×640 볼륨의 단일 프레임 “애니메이션을 하기에 상당히 비현실적” 볼륨 내의 연기를 찾아 작은 해상도로 이미지를 미리 계산하여 속도를 높임 그 볼륨 내에서 최종 계산을 수행 13
  • 14. 더 구체적으로 Optimization 예비 Raymarch 마지막 X, Y, Z 해상도 4분의 1 로 예비 raymarch 1/64 전체 계산하는 것처럼 많은 밀도 평가는 오직 1/64 만큼 필요함 각 4X4에서 모든 nonzero 밀도를 경계 z를 따라 간격을 저장 Null interval이 됨 각 Pixel에 이 간격이 모든 이웃 Pixel의 간격과의 조합으로 확장, 보수할 수 있음 14
  • 15. 최종으로 Optimization Z intervals 최종 raymarching의 도메인을 제한하는 Z 간격을 경계의 이미지를 사용 결과적으로 30 배 이상 단축, 약 16분 소요 (subsampled prepass에 대한 시간을 포함) Smoke는 공간내에서 희박하기 때문에 시간단축이 크며 밀도가 많은 Sample widths가 zero로 떨어지기 때문에 작은 디테일은 무시되지 않음 15
  • 18. Turbulence Turbulence 대리석, 구름, 폭발, 등을 만들기 위해 사용, Noise 함수 위에 만들어진 간단한 프랙탈 생성 루프 “전혀 실제 turbulence 모델이 아니다” 18
  • 19. Turbulence 주요 트릭 : fabs()function gradient 불연속적인 “fault lines”을 만들고 turbulent 흐름의 결과를 보고 생각한 것이 눈속임으로 보이게 된다 19
  • 20. Turbulence phase shift turbulence() 함수는 친숙한 대리석 트릭과 같이 최상의 결과를 제공 sin(point + turbulence(point) * point.x); lofreq turbulence의 가장 낮은 주파수 성분을 설정 hifreq turbulence 효과가 하나의 Pixel 수준 아래로 도달하도록 함수에 의해 사용 20
  • 21. Q&A