SlideShare a Scribd company logo
1 of 10
Download to read offline
An Introduction to
NV_path_rendering
    Mark J. Kilgard
  NVIDIA Corporation
     June 8, 2011
Purpose of this Presentation

 Overview of GPU-accelerated path rendering
    Using “stencil, then cover”
 Explain and demonstrate the NV_path_rendering API
    Aimed primarily at programmers
 Introduce you to the content of NVIDIA’s NVpr SDK
What is path rendering?
A rendering approach
    Resolution-independent two-
    dimensional graphics
    Occlusion & transparency depend
    on rendering order
        So called “Painter’s Algorithm”
    Basic primitive is a path to be filled
    or stroked
        Path is a sequence of path
        commands
        Commands are
          – moveto, lineto, curveto, arcto,
            closepath, etc.
Standards
    Content: PostScript, PDF,
    TrueType fonts, Flash, Scalable
    Vector Graphics (SVG), HTML5
    Canvas, Silverlight, Office drawings
    APIs: Apple Quartz 2D, Khronos
    OpenVG, Microsoft Direct2D, Cairo,
    Skia, Qt::QPainter, Anti-grain
    Graphics,
Path Filling vs. Stroking




just filling                              just stroking




                               filling + stroke =
                                  intended content
Handling Common Path Rendering
Functionality: Filtering
 GPUs are highly efficient at image
 filtering
      Fast texture mapping            Qt
          Mipmapping
          Anisotropic filtering
          Wrap modes
 CPUs aren't really
                                      Moiré
                                      artifacts




 GPU
                                      Cairo
Projective Path Rendering Support
Compared
    GPU           Skia            Cairo         Qt
flawless      yes, but bugs   unsupported   unsupported




    correct      correct      unsupported   unsupported
    correct       wrong       unsupported   unsupported
Rendering Paths Clipped to
Some Other Arbitrary Path
 Example clipping the PostScript tiger to a heart
 constructed from two cubic Bezier curves




        unclipped tiger   tiger with pink background clipped to heart
Benchmark Scenes




   Tiger       Dragon   Round Dogs   Butterfly        Spikes


Coat of Arms   Cowboy   Buonaparte   Embrace     Japanese Strokes
Learning NV_path_rendering

 White paper + source code available
    “Getting Started with NV_path_rendering”
 Explains
    Path specification
    “Stencil, then Cover” API usage
    Instanced rendering for text and glyphs
Feedback and Contacts


 We need your feedback
    Issues?
    Questions?


 Contact us by emailing
    nvpr-support@nvidia.com

More Related Content

Viewers also liked

Overcoming & Preventing Significant Technical SEO Issues
Overcoming & Preventing Significant Technical SEO IssuesOvercoming & Preventing Significant Technical SEO Issues
Overcoming & Preventing Significant Technical SEO Issues
mruud
 
Arcade carestia acquisition 2013
Arcade   carestia acquisition 2013Arcade   carestia acquisition 2013
Arcade carestia acquisition 2013
Arcade Marketing
 
Chexplore VC Presentation
Chexplore VC PresentationChexplore VC Presentation
Chexplore VC Presentation
thevegaslist
 
Killer food obesity
Killer food   obesityKiller food   obesity
Killer food obesity
Adnan Abbas
 
Mangalam institute of management
Mangalam institute of managementMangalam institute of management
Mangalam institute of management
Sourav Singh
 
"Social Innovation for Employment" information session
"Social Innovation for Employment" information session "Social Innovation for Employment" information session
"Social Innovation for Employment" information session
Nahdet El Mahrousa
 

Viewers also liked (20)

Yolima
YolimaYolima
Yolima
 
Introduction law III Class
Introduction law III ClassIntroduction law III Class
Introduction law III Class
 
Overcoming & Preventing Significant Technical SEO Issues
Overcoming & Preventing Significant Technical SEO IssuesOvercoming & Preventing Significant Technical SEO Issues
Overcoming & Preventing Significant Technical SEO Issues
 
3 idiots life’s learning
3 idiots   life’s learning3 idiots   life’s learning
3 idiots life’s learning
 
Arcade carestia acquisition 2013
Arcade   carestia acquisition 2013Arcade   carestia acquisition 2013
Arcade carestia acquisition 2013
 
Anti virus
Anti virusAnti virus
Anti virus
 
Fizyka
FizykaFizyka
Fizyka
 
Mike baker fotosdivertidas
Mike baker fotosdivertidasMike baker fotosdivertidas
Mike baker fotosdivertidas
 
Doc1
Doc1Doc1
Doc1
 
Chexplore VC Presentation
Chexplore VC PresentationChexplore VC Presentation
Chexplore VC Presentation
 
台湾の目標準拠評価の国際会議のスライド
台湾の目標準拠評価の国際会議のスライド台湾の目標準拠評価の国際会議のスライド
台湾の目標準拠評価の国際会議のスライド
 
Killer food obesity
Killer food   obesityKiller food   obesity
Killer food obesity
 
Mangalam institute of management
Mangalam institute of managementMangalam institute of management
Mangalam institute of management
 
150603 教育学特殊(学級規模) 第7講
150603 教育学特殊(学級規模) 第7講150603 教育学特殊(学級規模) 第7講
150603 教育学特殊(学級規模) 第7講
 
Chemia cała
Chemia całaChemia cała
Chemia cała
 
Anteprima Pianificazione strategica per gli studi professionali della Guida a...
Anteprima Pianificazione strategica per gli studi professionali della Guida a...Anteprima Pianificazione strategica per gli studi professionali della Guida a...
Anteprima Pianificazione strategica per gli studi professionali della Guida a...
 
"Social Innovation for Employment" information session
"Social Innovation for Employment" information session "Social Innovation for Employment" information session
"Social Innovation for Employment" information session
 
Proof That NEVER GIVE UP Really Works
Proof That NEVER GIVE UP Really WorksProof That NEVER GIVE UP Really Works
Proof That NEVER GIVE UP Really Works
 
Mike baker imagenes
Mike baker imagenesMike baker imagenes
Mike baker imagenes
 
Dreamworks
Dreamworks Dreamworks
Dreamworks
 

Similar to NV_path_rendering

Understanding Hardware Acceleration on Mobile Browsers
Understanding Hardware Acceleration on Mobile BrowsersUnderstanding Hardware Acceleration on Mobile Browsers
Understanding Hardware Acceleration on Mobile Browsers
Ariya Hidayat
 
아이폰강의(7) pdf
아이폰강의(7) pdf아이폰강의(7) pdf
아이폰강의(7) pdf
sunwooindia
 
OpenLayers 3.0
OpenLayers 3.0OpenLayers 3.0
OpenLayers 3.0
Camptocamp
 

Similar to NV_path_rendering (20)

Understanding Hardware Acceleration on Mobile Browsers
Understanding Hardware Acceleration on Mobile BrowsersUnderstanding Hardware Acceleration on Mobile Browsers
Understanding Hardware Acceleration on Mobile Browsers
 
Modern OpenGL scientific visualization
Modern OpenGL scientific visualizationModern OpenGL scientific visualization
Modern OpenGL scientific visualization
 
An Introduction to NV_path_rendering
An Introduction to NV_path_renderingAn Introduction to NV_path_rendering
An Introduction to NV_path_rendering
 
GPU-accelerated Path Rendering
GPU-accelerated Path RenderingGPU-accelerated Path Rendering
GPU-accelerated Path Rendering
 
NV_path_rendering Frequently Asked Questions
NV_path_rendering Frequently Asked QuestionsNV_path_rendering Frequently Asked Questions
NV_path_rendering Frequently Asked Questions
 
High performance graphics and computation - OpenGL ES and RenderScript
High performance graphics and computation - OpenGL ES and RenderScript High performance graphics and computation - OpenGL ES and RenderScript
High performance graphics and computation - OpenGL ES and RenderScript
 
Understanding hardware acceleration on mobile browsers presentation
Understanding hardware acceleration on mobile browsers presentationUnderstanding hardware acceleration on mobile browsers presentation
Understanding hardware acceleration on mobile browsers presentation
 
Understanding Hardware Acceleration on Mobile Browsers
Understanding Hardware Acceleration on Mobile BrowsersUnderstanding Hardware Acceleration on Mobile Browsers
Understanding Hardware Acceleration on Mobile Browsers
 
CAPTCHA and Convolutional neural network
CAPTCHA and Convolutional neural network CAPTCHA and Convolutional neural network
CAPTCHA and Convolutional neural network
 
Graphics pipelining
Graphics pipeliningGraphics pipelining
Graphics pipelining
 
Hardware Accelerated 2D Rendering for Android
Hardware Accelerated 2D Rendering for AndroidHardware Accelerated 2D Rendering for Android
Hardware Accelerated 2D Rendering for Android
 
What is OpenGL ?
What is OpenGL ?What is OpenGL ?
What is OpenGL ?
 
dev_int_96
dev_int_96dev_int_96
dev_int_96
 
아이폰강의(7) pdf
아이폰강의(7) pdf아이폰강의(7) pdf
아이폰강의(7) pdf
 
Cross platform computer vision optimization
Cross platform computer vision optimizationCross platform computer vision optimization
Cross platform computer vision optimization
 
(2) gui drawing
(2) gui drawing(2) gui drawing
(2) gui drawing
 
NVIDIA Graphics, Cg, and Transparency
NVIDIA Graphics, Cg, and TransparencyNVIDIA Graphics, Cg, and Transparency
NVIDIA Graphics, Cg, and Transparency
 
Modern Graphics Pipeline Overview
Modern Graphics Pipeline OverviewModern Graphics Pipeline Overview
Modern Graphics Pipeline Overview
 
Realizing OpenGL
Realizing OpenGLRealizing OpenGL
Realizing OpenGL
 
OpenLayers 3.0
OpenLayers 3.0OpenLayers 3.0
OpenLayers 3.0
 

Recently uploaded

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 

NV_path_rendering

  • 1. An Introduction to NV_path_rendering Mark J. Kilgard NVIDIA Corporation June 8, 2011
  • 2. Purpose of this Presentation Overview of GPU-accelerated path rendering Using “stencil, then cover” Explain and demonstrate the NV_path_rendering API Aimed primarily at programmers Introduce you to the content of NVIDIA’s NVpr SDK
  • 3. What is path rendering? A rendering approach Resolution-independent two- dimensional graphics Occlusion & transparency depend on rendering order So called “Painter’s Algorithm” Basic primitive is a path to be filled or stroked Path is a sequence of path commands Commands are – moveto, lineto, curveto, arcto, closepath, etc. Standards Content: PostScript, PDF, TrueType fonts, Flash, Scalable Vector Graphics (SVG), HTML5 Canvas, Silverlight, Office drawings APIs: Apple Quartz 2D, Khronos OpenVG, Microsoft Direct2D, Cairo, Skia, Qt::QPainter, Anti-grain Graphics,
  • 4. Path Filling vs. Stroking just filling just stroking filling + stroke = intended content
  • 5. Handling Common Path Rendering Functionality: Filtering GPUs are highly efficient at image filtering Fast texture mapping Qt Mipmapping Anisotropic filtering Wrap modes CPUs aren't really Moiré artifacts GPU Cairo
  • 6. Projective Path Rendering Support Compared GPU Skia Cairo Qt flawless yes, but bugs unsupported unsupported correct correct unsupported unsupported correct wrong unsupported unsupported
  • 7. Rendering Paths Clipped to Some Other Arbitrary Path Example clipping the PostScript tiger to a heart constructed from two cubic Bezier curves unclipped tiger tiger with pink background clipped to heart
  • 8. Benchmark Scenes Tiger Dragon Round Dogs Butterfly Spikes Coat of Arms Cowboy Buonaparte Embrace Japanese Strokes
  • 9. Learning NV_path_rendering White paper + source code available “Getting Started with NV_path_rendering” Explains Path specification “Stencil, then Cover” API usage Instanced rendering for text and glyphs
  • 10. Feedback and Contacts We need your feedback Issues? Questions? Contact us by emailing nvpr-support@nvidia.com