SlideShare a Scribd company logo
Regal
 for OpenGL
development
 Nigel T. Stewart
NVIDIA Corporation
 August 4th, 2012
Regal Goals

Open Source
There is nothing behind the curtain.
You can see what Regal is doing and change it if needed.

Portability
Consistent OpenGL API that runs on all major platforms:
Windows, Linux, Mac, iOS, and Android

Compatible
Immediate mode, fixed function, GL_QUADS
work everywhere, emulated as necessary.

Modern OpenGL API
Direct State Access (DSA) and Vertex Array Object (VAO),
emulated as necessary.
Ease of Use

Set breakpoints on OpenGL functions.
Step into the code.
Inspect state.

Efficiency

If it cannot be implemented efficiently in Regal, it is not universally
supported.

For example, tessellation support requires tessellation hardware.
Regal is a Work-In-Progress

Emulation for OpenGL ES and Desktop GL Core contexts.

          Fixed-function lighting using GLSL shaders.
          Direct-state-access emulation.
          Immediate mode emulation


Logging

          See all the application calls into Regal
          See all the driver calls from Regal into OpenGL
          GL_EXT_debug_marker emulation
Debugging

Optional error checking layer. (glGetError)


Access configuration, logs and GL state via HTTP.



Other ideas (unimplemented as of now)
        Debugging checks
        Performance problems
        Statistics gathering – API coverage, time spent.
        Frame capture
        GL state capture and comparison.
Imagined Uses for Regal

 Using Regal as a portability layer for developing games
 for Windows, Linux, Android, Mac and/or iOS.

 As a way of running OpenGL 1.x or 2.x code in a core
 OpenGL context. (Apple Mac or AMD GPU)

 As a way of porting Linux OpenGL games to mobile
 devices.

 As a common infrastructure for OpenGL development
 tools.
More Information
Source Code on github:
https://github.com/p3/regal

opengl.org forum thread:
http://www.opengl.org/discussion_boards/showthread.php/1786
78-Introducing-Regal?p=1240974

Email:
nstewart@nvidia.com

More Related Content

PDF
Standing out as a new grad candidate
Sashko Stubailo
 
PDF
Implementing OpenCL support in GEGL and GIMP
lgworld
 
PDF
GraphQL: The Missing Link Between Frontend and Backend Devs
Sashko Stubailo
 
PDF
Develop & Deploy your Laravel Application on Google Cloud Platforms
Olanrewaju Abidogun
 
PDF
Hello worldandroid
Durai S
 
PDF
Android hello world
Durai S
 
PDF
Continuous Deployment for Staging and Production Environments
OlyaSurits
 
PDF
How to GraphQL: React Apollo
Tomasz Bak
 
Standing out as a new grad candidate
Sashko Stubailo
 
Implementing OpenCL support in GEGL and GIMP
lgworld
 
GraphQL: The Missing Link Between Frontend and Backend Devs
Sashko Stubailo
 
Develop & Deploy your Laravel Application on Google Cloud Platforms
Olanrewaju Abidogun
 
Hello worldandroid
Durai S
 
Android hello world
Durai S
 
Continuous Deployment for Staging and Production Environments
OlyaSurits
 
How to GraphQL: React Apollo
Tomasz Bak
 

What's hot (16)

PPTX
Develop, deploy, and operate services at reddit scale oscon 2018
Gregory Taylor
 
ODP
Elixir absinthe-basics
Ruben Amortegui
 
PDF
Kubernetes at Reddit: An Origin Story - KubeCon NA 2018
Gregory Taylor
 
PPTX
Intro to Flutter
Shady Selim
 
PDF
How to GraphQL
Tomasz Bak
 
PPT
Qt Application Development on Harmattan
Ville Lavonius
 
PDF
How to use apolloJS on React ?
Jonathan Jalouzot
 
PPTX
How volkswagen used microservices and automation to develop self service solu...
Marcos Entenza Garcia
 
PPTX
KotlinConf - Kotlin and Spring Boot, a match made in heaven
Nicolas Fränkel
 
PPTX
Porting Projects to .NET 5
Immo Landwerth
 
PPTX
AspectJ Android with Example
firstthumb
 
PPTX
The Bleeding Edge - Whats New in Angular 2
Lohith Goudagere Nagaraj
 
PDF
20180124 android taipei_arinterface
PRADA Hsiung
 
PPTX
Build your android app with gradle
Swain Loda
 
PPTX
Into to GraphQL
shobot
 
PPTX
Python Map Reduce vs Scalding
Andreea Bodnari
 
Develop, deploy, and operate services at reddit scale oscon 2018
Gregory Taylor
 
Elixir absinthe-basics
Ruben Amortegui
 
Kubernetes at Reddit: An Origin Story - KubeCon NA 2018
Gregory Taylor
 
Intro to Flutter
Shady Selim
 
How to GraphQL
Tomasz Bak
 
Qt Application Development on Harmattan
Ville Lavonius
 
How to use apolloJS on React ?
Jonathan Jalouzot
 
How volkswagen used microservices and automation to develop self service solu...
Marcos Entenza Garcia
 
KotlinConf - Kotlin and Spring Boot, a match made in heaven
Nicolas Fränkel
 
Porting Projects to .NET 5
Immo Landwerth
 
AspectJ Android with Example
firstthumb
 
The Bleeding Edge - Whats New in Angular 2
Lohith Goudagere Nagaraj
 
20180124 android taipei_arinterface
PRADA Hsiung
 
Build your android app with gradle
Swain Loda
 
Into to GraphQL
shobot
 
Python Map Reduce vs Scalding
Andreea Bodnari
 
Ad

Viewers also liked (20)

PPTX
For chiropractic to progress it no longer needs Philosophy?
Braddon Atkinson
 
PPS
SWA Presentation
Christian Diverson
 
DOCX
Cách mới để món cá sốt cà ri ngon bất ngờ
Các Món Ăn Ngon
 
PDF
慶應義塾大学 教育学特殊 第12講(2016年67月13日)
Koyo Yamamori
 
DOCX
Cua đồng rang me
Các Món Ăn Ngon
 
PDF
W.A.Y. Where are you? Strumento di a
eAgisco
 
PDF
SkinnyFrameworkやろうぜ!(+ScalaMatsuriレポート) #scala_kb
Asami Abe
 
PPT
BYOiPad Parent Briefing, July 31, 2012
jarruzza
 
PPTX
台湾の目標準拠評価の国際会議のスライド
Koyo Yamamori
 
PDF
20121222 scalaビギナーズ
Asami Abe
 
PPT
Edmodo 8-6-12
Olga Kuharets
 
PDF
150527 教育学特殊 第6講
Koyo Yamamori
 
PPTX
Coventry 2011 presentation
sandrammarinho
 
PPTX
1. scenario pembelajaran uk 2012
sugainanaf
 
PDF
Integral_Boekhouding en beheer programma's
T.I.P.Group
 
PDF
151021 教育評価論(三田)第4講
Koyo Yamamori
 
PPS
Mike baker fotosdivertidas
Mike Baker Ovarb
 
PDF
150428 慶応の学生に読ませようと作ったビブリオ あまりにも多すぎるので精選します
Koyo Yamamori
 
PPTX
"Social Innovation for Employment" information session
Nahdet El Mahrousa
 
For chiropractic to progress it no longer needs Philosophy?
Braddon Atkinson
 
SWA Presentation
Christian Diverson
 
Cách mới để món cá sốt cà ri ngon bất ngờ
Các Món Ăn Ngon
 
慶應義塾大学 教育学特殊 第12講(2016年67月13日)
Koyo Yamamori
 
Cua đồng rang me
Các Món Ăn Ngon
 
W.A.Y. Where are you? Strumento di a
eAgisco
 
SkinnyFrameworkやろうぜ!(+ScalaMatsuriレポート) #scala_kb
Asami Abe
 
BYOiPad Parent Briefing, July 31, 2012
jarruzza
 
台湾の目標準拠評価の国際会議のスライド
Koyo Yamamori
 
20121222 scalaビギナーズ
Asami Abe
 
Edmodo 8-6-12
Olga Kuharets
 
150527 教育学特殊 第6講
Koyo Yamamori
 
Coventry 2011 presentation
sandrammarinho
 
1. scenario pembelajaran uk 2012
sugainanaf
 
Integral_Boekhouding en beheer programma's
T.I.P.Group
 
151021 教育評価論(三田)第4講
Koyo Yamamori
 
Mike baker fotosdivertidas
Mike Baker Ovarb
 
150428 慶応の学生に読ませようと作ったビブリオ あまりにも多すぎるので精選します
Koyo Yamamori
 
"Social Innovation for Employment" information session
Nahdet El Mahrousa
 
Ad

Similar to Regal (20)

PPTX
Porting the Source Engine to Linux: Valve's Lessons Learned
basisspace
 
PPTX
OpenGL 4.5 Update for NVIDIA GPUs
Mark Kilgard
 
PPTX
13th kandroid OpenGL and EGL
Jungsoo Nam
 
PPT
Advanced Graphics Workshop - GFX2011
Prabindh Sundareson
 
PDF
Gdc 14 bringing unreal engine 4 to open_gl
changehee lee
 
PDF
Embedded Graphics Drivers in Mesa (ELCE 2019)
Igalia
 
PDF
LCA13: OpenGL ES3 and You
Linaro
 
PDF
Getting Started with Spring for GraphQL
VMware Tanzu
 
PPTX
OpenGL ES EGL Spec&APIs
Jungsoo Nam
 
PPT
Open gl
ch samaram
 
PDF
Rapid and Reliable Developing with HTML5 & GWT
Manuel Carrasco Moñino
 
PDF
Opengl basics
pushpa latha
 
PDF
Introduction to accelerated graphics
Ruslan Novikov
 
PPT
Open Kode, Airplay And The New Reality Of Write Once Run Anywhere
guest991eb3
 
PDF
System Support for OpenGL Direct Rendering
Mark Kilgard
 
DOCX
Computer graphics workbook
Muhammadalizardari
 
PPTX
Seminar presentation on OpenGL
Megha V
 
PDF
GPU Programming with Java
Kelum Senanayake
 
PDF
LibGDX: Cross Platform Game Development
Intel® Software
 
PDF
Minko - Flash Conference #5
Minko3D
 
Porting the Source Engine to Linux: Valve's Lessons Learned
basisspace
 
OpenGL 4.5 Update for NVIDIA GPUs
Mark Kilgard
 
13th kandroid OpenGL and EGL
Jungsoo Nam
 
Advanced Graphics Workshop - GFX2011
Prabindh Sundareson
 
Gdc 14 bringing unreal engine 4 to open_gl
changehee lee
 
Embedded Graphics Drivers in Mesa (ELCE 2019)
Igalia
 
LCA13: OpenGL ES3 and You
Linaro
 
Getting Started with Spring for GraphQL
VMware Tanzu
 
OpenGL ES EGL Spec&APIs
Jungsoo Nam
 
Open gl
ch samaram
 
Rapid and Reliable Developing with HTML5 & GWT
Manuel Carrasco Moñino
 
Opengl basics
pushpa latha
 
Introduction to accelerated graphics
Ruslan Novikov
 
Open Kode, Airplay And The New Reality Of Write Once Run Anywhere
guest991eb3
 
System Support for OpenGL Direct Rendering
Mark Kilgard
 
Computer graphics workbook
Muhammadalizardari
 
Seminar presentation on OpenGL
Megha V
 
GPU Programming with Java
Kelum Senanayake
 
LibGDX: Cross Platform Game Development
Intel® Software
 
Minko - Flash Conference #5
Minko3D
 

Recently uploaded (20)

PDF
Tea4chat - another LLM Project by Kerem Atam
a0m0rajab1
 
PDF
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
PDF
Trying to figure out MCP by actually building an app from scratch with open s...
Julien SIMON
 
PPTX
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
PPTX
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
PDF
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
PDF
Advances in Ultra High Voltage (UHV) Transmission and Distribution Systems.pdf
Nabajyoti Banik
 
PPTX
IT Runs Better with ThousandEyes AI-driven Assurance
ThousandEyes
 
PDF
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 
PDF
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
PPTX
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
PDF
Get More from Fiori Automation - What’s New, What Works, and What’s Next.pdf
Precisely
 
PDF
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
PDF
Research-Fundamentals-and-Topic-Development.pdf
ayesha butalia
 
PDF
Brief History of Internet - Early Days of Internet
sutharharshit158
 
PDF
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
 
PDF
REPORT: Heating appliances market in Poland 2024
SPIUG
 
PDF
NewMind AI Weekly Chronicles - July'25 - Week IV
NewMind AI
 
PDF
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
 
PDF
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 
Tea4chat - another LLM Project by Kerem Atam
a0m0rajab1
 
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
Trying to figure out MCP by actually building an app from scratch with open s...
Julien SIMON
 
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
Advances in Ultra High Voltage (UHV) Transmission and Distribution Systems.pdf
Nabajyoti Banik
 
IT Runs Better with ThousandEyes AI-driven Assurance
ThousandEyes
 
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
Get More from Fiori Automation - What’s New, What Works, and What’s Next.pdf
Precisely
 
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
Research-Fundamentals-and-Topic-Development.pdf
ayesha butalia
 
Brief History of Internet - Early Days of Internet
sutharharshit158
 
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
 
REPORT: Heating appliances market in Poland 2024
SPIUG
 
NewMind AI Weekly Chronicles - July'25 - Week IV
NewMind AI
 
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
 
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 

Regal

  • 1. Regal for OpenGL development Nigel T. Stewart NVIDIA Corporation August 4th, 2012
  • 2. Regal Goals Open Source There is nothing behind the curtain. You can see what Regal is doing and change it if needed. Portability Consistent OpenGL API that runs on all major platforms: Windows, Linux, Mac, iOS, and Android Compatible Immediate mode, fixed function, GL_QUADS work everywhere, emulated as necessary. Modern OpenGL API Direct State Access (DSA) and Vertex Array Object (VAO), emulated as necessary.
  • 3. Ease of Use Set breakpoints on OpenGL functions. Step into the code. Inspect state. Efficiency If it cannot be implemented efficiently in Regal, it is not universally supported. For example, tessellation support requires tessellation hardware.
  • 4. Regal is a Work-In-Progress Emulation for OpenGL ES and Desktop GL Core contexts. Fixed-function lighting using GLSL shaders. Direct-state-access emulation. Immediate mode emulation Logging See all the application calls into Regal See all the driver calls from Regal into OpenGL GL_EXT_debug_marker emulation
  • 5. Debugging Optional error checking layer. (glGetError) Access configuration, logs and GL state via HTTP. Other ideas (unimplemented as of now) Debugging checks Performance problems Statistics gathering – API coverage, time spent. Frame capture GL state capture and comparison.
  • 6. Imagined Uses for Regal Using Regal as a portability layer for developing games for Windows, Linux, Android, Mac and/or iOS. As a way of running OpenGL 1.x or 2.x code in a core OpenGL context. (Apple Mac or AMD GPU) As a way of porting Linux OpenGL games to mobile devices. As a common infrastructure for OpenGL development tools.
  • 7. More Information Source Code on github: https://github.com/p3/regal opengl.org forum thread: http://www.opengl.org/discussion_boards/showthread.php/1786 78-Introducing-Regal?p=1240974 Email: [email protected]