21
IMPLEMENTATION AND ANALYSIS OF SINGLE SCATTERING MODELS FOR HAIR Student: Javier Meseguer de Paz Supervisor: Jan Kautz

Implementation and Analysis of Single Scattering Models for Hair

  • Upload
    imelda

  • View
    52

  • Download
    0

Embed Size (px)

DESCRIPTION

Implementation and Analysis of Single Scattering Models for Hair. Student : Javier Meseguer de Paz Supervisor: Jan Kautz. Context. Hair simulation Modelling Animation Rendering Single scattering Multiple s cattering Shadows Other effects Data acquisition and capture. - PowerPoint PPT Presentation

Citation preview

Page 1: Implementation  and  Analysis  of Single  Scattering Models for Hair

IMPLEMENTATION AND ANALYSIS OF SINGLE

SCATTERING MODELS FOR HAIR

Student: Javier Meseguer de PazSupervisor: Jan Kautz

Page 2: Implementation  and  Analysis  of Single  Scattering Models for Hair

CONTEXT Hair simulation

Modelling Animation Rendering

Single scattering Multiple scattering Shadows Other effects Data acquisition and capture

Page 3: Implementation  and  Analysis  of Single  Scattering Models for Hair

MOST IMPORTANT WORKS Kajiya

First shading model for hair (actually fur) Marschner et. al.

First physically-based shading model for hair Nguyen and Donelly

First real-time implementation of Marschner Zinke

First formal mathematical framework to study and generate hair shading models

Page 4: Implementation  and  Analysis  of Single  Scattering Models for Hair

GOALS OF THE PROJECT

Derive Marschner’s model using his framework

Hint a more general model could be used in real-time

Explain every step in detail

Derive the model

Implement the model

Compare the results

Zinke did Zinke did not

Page 5: Implementation  and  Analysis  of Single  Scattering Models for Hair

GOALS OF THE PROJECT

Explain every step in detail

Derived the model

Implement the model …and the others

Compare the results

So we:

Page 6: Implementation  and  Analysis  of Single  Scattering Models for Hair

FRAMEWORK• A precise notation is set

Page 7: Implementation  and  Analysis  of Single  Scattering Models for Hair

FRAMEWORK

),,,,,,( oooiiiBFSDF hhsf

),,,( ooiiBCSDFf

• Models every detail

• Requires fiber width less than a pixel• Suitable for real-time rendering

• Two kind of functions are defined:

• It is possible to convert the BFSDF into BCSDF

oioooiiiBFSDFooiiBCSDF hhshhsff ddd),,,,,,(21),,,(

1

1

1

1

Page 8: Implementation  and  Analysis  of Single  Scattering Models for Hair

FRAMEWORK To derive models, we start with the BFSDF for

perfect cylinderTRTBFSDF

TTBFSDF

RBFSDFBFSDF ffff

R TRT

TT

interior:refrac. index nabsoprtion s

Page 9: Implementation  and  Analysis  of Single  Scattering Models for Hair

FRAMEWORK Then, we modify it to match hair’s model -

MarschnerTRTBFSDF

TTBFSDF

RBFSDFBFSDF ffff

Page 10: Implementation  and  Analysis  of Single  Scattering Models for Hair

FRAMEWORK Then, we modify it to match hair’s model -

ZinkeTRTBFSDF

TTBFSDF

RBFSDFBFSDF ffff

Page 11: Implementation  and  Analysis  of Single  Scattering Models for Hair

FRAMEWORK And we convert from BFSDF to BCSDF

In Marschner model integrals can be solved In the case of Zinke only simplified a little:

BCSDFBFSDF ff

Page 12: Implementation  and  Analysis  of Single  Scattering Models for Hair

IMPLEMENTATION We pre-compute the model offline:

Numerical integration for these Caching to speed-up this

Page 13: Implementation  and  Analysis  of Single  Scattering Models for Hair

IMPLEMENTATION And store it into floating-point textures:

• Then, in real-time, we just have to lookup

Page 14: Implementation  and  Analysis  of Single  Scattering Models for Hair

RESULTS

Page 15: Implementation  and  Analysis  of Single  Scattering Models for Hair

RESULTS

Page 16: Implementation  and  Analysis  of Single  Scattering Models for Hair

RESULTS

Page 17: Implementation  and  Analysis  of Single  Scattering Models for Hair

COMPARISON Complexity

Kajiya is the easiest (it’s just a shader!) Marschner is quite complex Zinke even more! (numerical integration involved)

Page 18: Implementation  and  Analysis  of Single  Scattering Models for Hair

COMPARISON Speed

Kajiya doesn’t have pre-computation Marschner is 2500 times faster than Zinke on

average

Page 19: Implementation  and  Analysis  of Single  Scattering Models for Hair

Rendered images Kajiya looks quite good Marschner and Zinke are essentially the same

Page 20: Implementation  and  Analysis  of Single  Scattering Models for Hair

CONCLUSIONS It is possible to derive and implement a real-

time version of Zinke model However, it is not really a good choice Kajiya has a very good quality/complexity

trade-off Marschner looks good but definitely needs

shadowing to show its potential

Page 21: Implementation  and  Analysis  of Single  Scattering Models for Hair