SlideShare a Scribd company logo
1 of 84
Download to read offline
●
    ●
    ●
    ●

●
●
●
●
    ●
    ●
●
    ●
    ●
    ●
    ●
●
●
    ●

●
    ●
●
    ●

●
    ●
●
    ●
    ●

●
●
●
    ●

●
d = Box(pos)



Box(pos, size)
{
  a = abs(pos-size) - size;
  return max(a.x,a.y,a.z);
}
d = Box(pos)
c = fmod(pos * A, B)
subD = max(c.y,min(c.y,c.z))
d = max(d, -subD)
d = Box(pos)
c = fmod(pos * A, B)
subD = max(c.y,min(c.y,c.z))
subD = min(subD,cylinder(c))
subD = max(subD, Windows())
d = max(d, -subD)
d = Box(pos)
e = fmod(pos + N, M)
floorD = Box(e)
d = max(d, -floorD)
d = Box(pos)
e = fmod(pos + N, M)
floorD = Box(e)
floorD = min(floorD,holes())
d = max(d, -floorD)
d = Box(pos)
c = fmod(pos * A, B)
subD = max(c.y,min(c.y,c.z))
subD = min(subD,cylinder(c))
subD = max(subD, Windows())
e = fmod(pos + N, M)
floorD = Box(e)
floorD = min(floorD,holes())
d = max(d, -subD)
d = max(d, -floorD)
pos.y = frac(pos.y)
d = Box(pos)
c = fmod(pos * A, B)
subD = max(c.y,min(c.y,c.z))
subD = min(subD,cylinder(c))
subD = max(subD, Windows())
e = fmod(pos + N, M)
floorD = Box(e)
floorD = min(floorD,holes())
d = max(d, -subD)
d = max(d, -floorD)
pos.xy = frac(pos.xy)
d = Box(pos)
c = fmod(pos * A, B)
subD = max(c.y,min(c.y,c.z))
subD = min(subD,cylinder(c))
subD = max(subD, Windows())
e = fmod(pos + N, M)
floorD = Box(e)
floorD = min(floorD,holes())
d = max(d, -subD)
d = max(d, -floorD)
Lighting
Tone mapping
Deferred texturing
God rays
●
●
●
●
    ●
    ●
    ●
●
●
    ●
    ●
    ●
    ●
●
    ●
    ●
    ●

●
●
●
●
●
●
    ●

●
    ●
    ●
    ●
    ●
●
    ●
    ●

●
    ●

●
    ●
    ●
●




●
    ●

●
●
●
    ●
    ●
    ●

●
    ●

●
●
●




    (Imagine it in 3D)
●
●
●
    ●

●
    ●
    ●

●
●
    ●
    ●
    ●

●
    ●
    ●
●
    ●

●
    ●

●
    ●
●
    ●
    ●

●
    ●
    ●
    ●
    ●
●
    ●

●
    ●

●
    ●
●
    ●
    ●
    ●

●
    ●
    ●
    ●
●
    ●
    ●
    ●

●
    ●
    ●
●
    ●
    ●
    ●
●
●
    ●
    ●
    ●
●
    ●
    ●
    ●

●
    ●
    ●
    ●
●
    ●

●
●
    ●
    ●
●
    ●
    ●


●
    ●
    ●

●
●
●
    ●

●

●
    ●

●
    ●
●
●
●
    ●

●
    ●
    ●
●
    ●

●       
    ●
    ●
    ●

●
●
●
    ●

●
    ●
    ●
    ●
●
●
●
    ●
    ●

●
    ●
●
    ●

●
    ●

●
    ●

●
●
●
●
●

●
    ●
●
●
●
●
●
●
●
    ●

●
    ●

●
    ●
●
●
    ●

●
●
    ●

●
    ●
●
    ●
    ●

●
    ●
    ●

●
●
●
●
    ●
    ●
    ●

●
●
    ●

●
●
    ●
    ●

●
●
●
    ●

●
    ●
    ●

●
●
●
●
●
●
●
●
●

More Related Content

What's hot (17)

Lista
ListaLista
Lista
 
Rgraphics
RgraphicsRgraphics
Rgraphics
 
βιβλιο με μικρες ιστοριες
βιβλιο με μικρες ιστοριεςβιβλιο με μικρες ιστοριες
βιβλιο με μικρες ιστοριες
 
Gggggggggggggggggggggggggggg
GgggggggggggggggggggggggggggGggggggggggggggggggggggggggg
Gggggggggggggggggggggggggggg
 
joy
joyjoy
joy
 
Love never chang
Love never changLove never chang
Love never chang
 
Gggggggggggggggggggggg
GgggggggggggggggggggggGggggggggggggggggggggg
Gggggggggggggggggggggg
 
Hgggggggggggggggggg
HggggggggggggggggggHgggggggggggggggggg
Hgggggggggggggggggg
 
Pomoc
PomocPomoc
Pomoc
 
Neu textdokument
Neu textdokumentNeu textdokument
Neu textdokument
 
文学生态视野中的江南文化与“重写文学史''运动
文学生态视野中的江南文化与“重写文学史''运动文学生态视野中的江南文化与“重写文学史''运动
文学生态视野中的江南文化与“重写文学史''运动
 
Bgggggggggggggd
BgggggggggggggdBgggggggggggggd
Bgggggggggggggd
 
Gghgjhgkgjhgj
GghgjhgkgjhgjGghgjhgkgjhgj
Gghgjhgkgjhgj
 
DOCUMENTO EN WORD DE PRUEBA
DOCUMENTO EN WORD DE PRUEBADOCUMENTO EN WORD DE PRUEBA
DOCUMENTO EN WORD DE PRUEBA
 
Trupati.ppt (1)
Trupati.ppt (1)Trupati.ppt (1)
Trupati.ppt (1)
 
C++ programs
C++ programsC++ programs
C++ programs
 
Hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
HhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhHhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
Hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
 

Viewers also liked

2months of jaehunseok
2months of jaehunseok2months of jaehunseok
2months of jaehunseok
재훈 석
 
Fortugno nick design_and_monetization
Fortugno nick design_and_monetizationFortugno nick design_and_monetization
Fortugno nick design_and_monetization
changehee lee
 
Lighting Shading by John Hable
Lighting Shading by John HableLighting Shading by John Hable
Lighting Shading by John Hable
Naughty Dog
 

Viewers also liked (9)

2months of jaehunseok
2months of jaehunseok2months of jaehunseok
2months of jaehunseok
 
Fortugno nick design_and_monetization
Fortugno nick design_and_monetizationFortugno nick design_and_monetization
Fortugno nick design_and_monetization
 
GTC 2014 - DirectX 11 Rendering and NVIDIA GameWorks in Batman: Arkham Origins
GTC 2014 - DirectX 11 Rendering and NVIDIA GameWorks in Batman: Arkham OriginsGTC 2014 - DirectX 11 Rendering and NVIDIA GameWorks in Batman: Arkham Origins
GTC 2014 - DirectX 11 Rendering and NVIDIA GameWorks in Batman: Arkham Origins
 
Around the World in 80 Shaders
Around the World in 80 ShadersAround the World in 80 Shaders
Around the World in 80 Shaders
 
SPU Assisted Rendering
SPU Assisted RenderingSPU Assisted Rendering
SPU Assisted Rendering
 
[1002 조진현]unity3d 소개
[1002 조진현]unity3d 소개[1002 조진현]unity3d 소개
[1002 조진현]unity3d 소개
 
GDC 2014 - Deformable Snow Rendering in Batman: Arkham Origins
GDC 2014 - Deformable Snow Rendering in Batman: Arkham OriginsGDC 2014 - Deformable Snow Rendering in Batman: Arkham Origins
GDC 2014 - Deformable Snow Rendering in Batman: Arkham Origins
 
Naughty Dog Vertex
Naughty Dog VertexNaughty Dog Vertex
Naughty Dog Vertex
 
Lighting Shading by John Hable
Lighting Shading by John HableLighting Shading by John Hable
Lighting Shading by John Hable
 

Similar to Advanced Procedural Rendering in DirectX11 - CEDEC 2012

Optimal Nudging. Presentation UD.
Optimal Nudging. Presentation UD.Optimal Nudging. Presentation UD.
Optimal Nudging. Presentation UD.
r-uribe
 
Aiello-Lammens: Global Sensitivity Analysis for Impact Assessments.
Aiello-Lammens:  Global Sensitivity Analysis for Impact Assessments.Aiello-Lammens:  Global Sensitivity Analysis for Impact Assessments.
Aiello-Lammens: Global Sensitivity Analysis for Impact Assessments.
questRCN
 
Pocket dot grid pages
Pocket dot grid pagesPocket dot grid pages
Pocket dot grid pages
HIKOO
 
アイ・トレーニング10点)
アイ・トレーニング10点)アイ・トレーニング10点)
アイ・トレーニング10点)
kenji sakuma
 
Fairisle knitting
Fairisle knittingFairisle knitting
Fairisle knitting
zafiro555
 
正誤表 p39
正誤表 p39正誤表 p39
正誤表 p39
zafiro555
 

Similar to Advanced Procedural Rendering in DirectX11 - CEDEC 2012 (20)

Deep dive into Nagios analytics
Deep dive into Nagios analyticsDeep dive into Nagios analytics
Deep dive into Nagios analytics
 
Optimal Nudging. Presentation UD.
Optimal Nudging. Presentation UD.Optimal Nudging. Presentation UD.
Optimal Nudging. Presentation UD.
 
20131212 - Sydney - Garvan Institute - Human Genetics and Big Data
20131212 - Sydney - Garvan Institute - Human Genetics and Big Data20131212 - Sydney - Garvan Institute - Human Genetics and Big Data
20131212 - Sydney - Garvan Institute - Human Genetics and Big Data
 
Aiello-Lammens: Global Sensitivity Analysis for Impact Assessments.
Aiello-Lammens:  Global Sensitivity Analysis for Impact Assessments.Aiello-Lammens:  Global Sensitivity Analysis for Impact Assessments.
Aiello-Lammens: Global Sensitivity Analysis for Impact Assessments.
 
Pocket dot grid pages
Pocket dot grid pagesPocket dot grid pages
Pocket dot grid pages
 
データ社会を生きる技術〜人工知能のHypeとHope〜
データ社会を生きる技術〜人工知能のHypeとHope〜データ社会を生きる技術〜人工知能のHypeとHope〜
データ社会を生きる技術〜人工知能のHypeとHope〜
 
Community dynamics of the adolescent vaginal microbiome during puberty (UOreg...
Community dynamics of the adolescent vaginal microbiome during puberty (UOreg...Community dynamics of the adolescent vaginal microbiome during puberty (UOreg...
Community dynamics of the adolescent vaginal microbiome during puberty (UOreg...
 
アイ・トレーニング10点)
アイ・トレーニング10点)アイ・トレーニング10点)
アイ・トレーニング10点)
 
Barley environmental association - Plant & Animal Genome 2018
Barley environmental association - Plant & Animal Genome 2018Barley environmental association - Plant & Animal Genome 2018
Barley environmental association - Plant & Animal Genome 2018
 
Entwicklungen in Spielen als Innovationstreiber für Usability
Entwicklungen in Spielen als Innovationstreiber für UsabilityEntwicklungen in Spielen als Innovationstreiber für Usability
Entwicklungen in Spielen als Innovationstreiber für Usability
 
Entwicklung in Spielen als Innovationstreiber für Usability
Entwicklung in Spielen als Innovationstreiber für UsabilityEntwicklung in Spielen als Innovationstreiber für Usability
Entwicklung in Spielen als Innovationstreiber für Usability
 
Gemeinsam kreativ für bessere Software - Vortragsreihe Dortmund
Gemeinsam kreativ für bessere Software - Vortragsreihe DortmundGemeinsam kreativ für bessere Software - Vortragsreihe Dortmund
Gemeinsam kreativ für bessere Software - Vortragsreihe Dortmund
 
Fairisle knitting
Fairisle knittingFairisle knitting
Fairisle knitting
 
Unit Testing Tool Competition-Eighth Round
Unit Testing Tool Competition-Eighth RoundUnit Testing Tool Competition-Eighth Round
Unit Testing Tool Competition-Eighth Round
 
正誤表 p39
正誤表 p39正誤表 p39
正誤表 p39
 
Modernisierung von Altanwendungen
Modernisierung von AltanwendungenModernisierung von Altanwendungen
Modernisierung von Altanwendungen
 
17 polishing
17 polishing17 polishing
17 polishing
 
Consumer Preferences in Real Estate Markets
Consumer Preferences in Real Estate MarketsConsumer Preferences in Real Estate Markets
Consumer Preferences in Real Estate Markets
 
Fruit breedomics workshop wp6 application of high throughput micheletti
Fruit breedomics workshop wp6 application of high throughput michelettiFruit breedomics workshop wp6 application of high throughput micheletti
Fruit breedomics workshop wp6 application of high throughput micheletti
 
20 Polishing
20 Polishing20 Polishing
20 Polishing
 

Recently uploaded

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Recently uploaded (20)

Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 

Advanced Procedural Rendering in DirectX11 - CEDEC 2012

  • 1.
  • 2. ● ● ● ● ● ●
  • 3. ● ● ● ● ● ● ● ●
  • 4.
  • 5. ● ● ●
  • 6. ● ● ●
  • 7. ● ● ● ● ● ● ●
  • 8. d = Box(pos) Box(pos, size) { a = abs(pos-size) - size; return max(a.x,a.y,a.z); }
  • 9. d = Box(pos) c = fmod(pos * A, B) subD = max(c.y,min(c.y,c.z)) d = max(d, -subD)
  • 10. d = Box(pos) c = fmod(pos * A, B) subD = max(c.y,min(c.y,c.z)) subD = min(subD,cylinder(c)) subD = max(subD, Windows()) d = max(d, -subD)
  • 11. d = Box(pos) e = fmod(pos + N, M) floorD = Box(e) d = max(d, -floorD)
  • 12. d = Box(pos) e = fmod(pos + N, M) floorD = Box(e) floorD = min(floorD,holes()) d = max(d, -floorD)
  • 13. d = Box(pos) c = fmod(pos * A, B) subD = max(c.y,min(c.y,c.z)) subD = min(subD,cylinder(c)) subD = max(subD, Windows()) e = fmod(pos + N, M) floorD = Box(e) floorD = min(floorD,holes()) d = max(d, -subD) d = max(d, -floorD)
  • 14. pos.y = frac(pos.y) d = Box(pos) c = fmod(pos * A, B) subD = max(c.y,min(c.y,c.z)) subD = min(subD,cylinder(c)) subD = max(subD, Windows()) e = fmod(pos + N, M) floorD = Box(e) floorD = min(floorD,holes()) d = max(d, -subD) d = max(d, -floorD)
  • 15. pos.xy = frac(pos.xy) d = Box(pos) c = fmod(pos * A, B) subD = max(c.y,min(c.y,c.z)) subD = min(subD,cylinder(c)) subD = max(subD, Windows()) e = fmod(pos + N, M) floorD = Box(e) floorD = min(floorD,holes()) d = max(d, -subD) d = max(d, -floorD)
  • 16.
  • 19.
  • 20. ● ● ● ● ● ● ●
  • 21.
  • 22. ● ● ● ● ● ●
  • 23. ● ● ● ● ● ● ●
  • 24.
  • 25.
  • 26. ● ● ● ● ● ● ● ●
  • 27. ● ● ● ● ● ● ●
  • 28.
  • 29. ● ● ● ● ●
  • 30. ● ● ● ● ● ●
  • 31. ● ● (Imagine it in 3D)
  • 32.
  • 33. ● ● ● ● ● ● ●
  • 34. ● ● ● ● ● ●
  • 35. ● ● ● ● ●
  • 36.
  • 37. ● ● ● ● ● ● ●
  • 38. ● ● ● ● ●
  • 39. ● ● ● ● ● ● ●
  • 40.
  • 41.
  • 42. ● ● ● ● ● ●
  • 43. ● ● ● ● ● ● ● ●
  • 44. ● ● ● ● ● ● ●
  • 45. ● ● ● ● ●
  • 46. ● ● ● ● ● ●
  • 47. ● ● ● ● ● ● ● ●
  • 48.
  • 49.
  • 50.
  • 51.
  • 52. ● ● ● ● ● ● ●
  • 53. ● ●  ● ● ● ●
  • 54.
  • 55.
  • 56. ● ● ● ● ● ● ●
  • 57. ● ● ● ● ● ● ●
  • 58. ● ● ● ● ● ● ●
  • 59.
  • 60.
  • 62.
  • 64.
  • 65.
  • 66.
  • 67.
  • 68. ● ● ● ● ●
  • 69. ● ● ● ● ● ● ● ●
  • 70. ● ● ● ● ● ●
  • 71.
  • 72.
  • 73.
  • 74. ● ● ● ● ● ● ●
  • 75. ● ● ● ● ● ●
  • 76.
  • 77.
  • 78.
  • 79.
  • 80.
  • 81. ● ● ● ● ● ● ●
  • 82.