SlideShare a Scribd company logo
1 of 17
2/15/2014

1

JAVKHLAN.R
OVERVIEW
Graphics standards
Device independent graphics programming

2/15/2014

2

OpenGL and WebGL
GRAPHICS STANDARD
Goal: portability, standard graphics functions are independent of
programming language, bindings are defined for various
languages
• Early graphics packages
• GKS (Graphical Kernel System)
• PHIGS (Programmer's Hierarchical Interactive Graphics System)

• OpenGL
• Java3D
• Direct3D
• WebGL

2/15/2014

3

• VRML (Virtual Reality Modeling Language)
EARLY HISTORY OF APIS
IFIPS (1973) formed two committees to come up with a
standard graphics API
• Graphical Kernel System (GKS)
• 2D but contained good workstation model
• Widely used graphical kernel for CAD and CAM software in
the 1980’s and 1990’s

• Core
• Both 2D and 3D

• GKS adopted as ISO and later ANSI standard (1980s)
GKS not easily extended to 3D (GKS-3D)

• Far behind hardware development
PHIGS AND X
Programmers Hierarchical Graphics System (PHIGS)

• At one time considered to be the 3D graphic standard for the
1990’s
• Arose from CAD community
• Database model with retained graphics (structures)
X Window System
• DEC/MIT effort
• Client-server architecture with graphics
PEX combined the two
• Not easy to use (all the defects of each)
SGI AND GL
Silicon Graphics (SGI) revolutionized the graphics
workstation by implementing the pipeline in hardware (1982)
To access the system, application programmers used a
library called GL
With GL, it was relatively simple to program three
dimensional interactive applications
OPENGL
The success of GL lead to OpenGL (1992), a
platform-independent API that was
• Simple architecture
• Powerful and fast rendering
• Easy to use
• Contains 2 libraries: GL kernel and GLU (OpenGL Utility
Library)
• Close enough to the hardware to get excellent
performance
• 1992-2006 managed by the OpenGL ARB (Architecture
Review Board), now by the khronos group
• No window management: no user interface, no image
processing, no file system support (no image loader)
WEBGL
WebGL is based on OpenGL ES 2.0 and provides an API for 3D
graphics.
It uses the HTML5 canvas element and is accessed using
Document Object Model interfaces.

2/15/2014

8

Automatic memory management is provided as part of the
JavaScript language.
THE PROGRAMMER’S
INTERFACE
Programmer sees the graphics system through a software
interface: the Application Programmer Interface (API)
APIS AND DEVICE INDEPENDENT
GRAPHICS PROGRAMMING
Using APIs makes it possible to create programs that can be
compiled and run on many different graphics platforms.
Most APIs are basically libraries of routines that take care of standard
tasks like rasterization, hidden surface removal, polygon
clipping, projections.

2/15/2014

10

The APIs serve as intermediaries between
the application layer and the hardware
layer. One of their main functions is to
facilitate rendering but they can provide
also higher level as well as lower level
functions.
DIFFERENT API LEVELS
Lower level APIs (e.g. the rendering APIs Direct3D and
OpenGL) deal directly with the rendering task.

On the other hand a higher level API like the scene graph API
Java3D takes care of maintaining and organizing information
about the graphic scenes, illumination, and environment
states but needs the help a rendering API to complete the
rendering task.

2/15/2014

11

The relationship between different APIs, the operating
system, and the hardware layer are illustrated in the
following two pages.
GRAPHICS STANDARD
API contains functions for creation, manipulation and display of
images
Basic building blocks: primitives and attributes
Geometric transformations
Modeling transformations
Viewing transformations
Structuring/manipulating components hierarchically
Control functions

2/15/2014

12

•
•
•
•
•
•
13

2/15/2014
PREPARATION
•

Get a browser that supports it.

• Firefox: just make sure you have version 4 or higher.
• Chrome: all you need to do is install it, or if you’re already using it, just
check whether it’s updated itself to version 10 — this will almost certainly
have happened automatically (it was released in March 2011), but you
can check from the “About Google Chrome” option on the tools menu to
confirm.
• Safari: on Macs, OS X 10.7 has WebGL support, but it’s switched off by
default. To switch it on, enable the developer menu and check the
“Enable WebGL” option. (Thanks to Blah for the heads-up on this one.)
If you’re on Windows, make sure you have the Microsoft DirectX
runtime installed — this is a free download from Microsoft.

•

Once you’ve done that, make sure that you’ve got the very latest versions
of the drivers for your graphics card.

2/15/2014

14

•
WEBGL FUNCTION FORMAT
function name
dimensions

Gl.Vertex3f(x,y,z)
x,y,z are floats

belongs to GL library

glVertex3fv(p)
p is a pointer to an array
SQUARE

2/15/2014

16

if you understand how this works, the rest should be pretty
simple…
HOMEWORK
Gl.??? – Find all and study all in this example.

2/15/2014

17

Draw – Rectangle, square, circle in the same window

More Related Content

What's hot

Bridging Between CAD & GIS: 8 Ways to Automate Data Integration
Bridging Between CAD & GIS: 8 Ways to Automate Data IntegrationBridging Between CAD & GIS: 8 Ways to Automate Data Integration
Bridging Between CAD & GIS: 8 Ways to Automate Data IntegrationSafe Software
 
Using FME to Validate CAD File Submittals for Utilities
Using FME to Validate CAD File Submittals for UtilitiesUsing FME to Validate CAD File Submittals for Utilities
Using FME to Validate CAD File Submittals for UtilitiesSafe Software
 
Bridging Between CAD & GIS: 8 Ways to Automate Data Integration
Bridging Between CAD & GIS: 8 Ways to Automate Data IntegrationBridging Between CAD & GIS: 8 Ways to Automate Data Integration
Bridging Between CAD & GIS: 8 Ways to Automate Data IntegrationSafe Software
 
Integrating CAD and GIS with Spatial ETL
Integrating CAD and GIS with Spatial ETLIntegrating CAD and GIS with Spatial ETL
Integrating CAD and GIS with Spatial ETLAndrew Bashfield
 
Automated Bulk Conversion of 250,000+ CAD and Corresponding Raster Files to PDF
Automated Bulk Conversion of 250,000+ CAD and Corresponding Raster Files to PDFAutomated Bulk Conversion of 250,000+ CAD and Corresponding Raster Files to PDF
Automated Bulk Conversion of 250,000+ CAD and Corresponding Raster Files to PDFSafe Software
 
BIM-based Enterprise GIS Workflows for Facilities Management with QA/QC
BIM-based Enterprise GIS Workflows for Facilities Management with QA/QCBIM-based Enterprise GIS Workflows for Facilities Management with QA/QC
BIM-based Enterprise GIS Workflows for Facilities Management with QA/QCSafe Software
 
Utilities Industry Success Stories with FME
Utilities Industry Success Stories with FME Utilities Industry Success Stories with FME
Utilities Industry Success Stories with FME Safe Software
 
Transforming AutoCAD Data to Smallworld with FME
Transforming AutoCAD Data to Smallworld with FMETransforming AutoCAD Data to Smallworld with FME
Transforming AutoCAD Data to Smallworld with FMESafe Software
 
Coordinate Systems in FME 101
Coordinate Systems in FME 101 Coordinate Systems in FME 101
Coordinate Systems in FME 101 Safe Software
 
도시 인프라 공간정보 데이터 커넥션-통합 기술 표준화를 위한 ISO TC211 19166 개발 이야기
도시 인프라 공간정보 데이터 커넥션-통합 기술 표준화를 위한 ISO TC211 19166 개발 이야기 도시 인프라 공간정보 데이터 커넥션-통합 기술 표준화를 위한 ISO TC211 19166 개발 이야기
도시 인프라 공간정보 데이터 커넥션-통합 기술 표준화를 위한 ISO TC211 19166 개발 이야기 Tae wook kang
 
Spatialware_2_Sql08
Spatialware_2_Sql08Spatialware_2_Sql08
Spatialware_2_Sql08Mike Osbourn
 
A cloud-based platform for IFC file enrichment with second-level space bound...
A cloud-based platform for IFC file enrichment with  second-level space bound...A cloud-based platform for IFC file enrichment with  second-level space bound...
A cloud-based platform for IFC file enrichment with second-level space bound...Kyriakos Katsigarakis
 
Presentation Cable Project Cad Adc
Presentation Cable Project Cad AdcPresentation Cable Project Cad Adc
Presentation Cable Project Cad Adcglbarker
 
Manufacturing Day - Case Study - MacLean Engineering
Manufacturing Day - Case Study - MacLean EngineeringManufacturing Day - Case Study - MacLean Engineering
Manufacturing Day - Case Study - MacLean EngineeringLarson Software Technology
 

What's hot (20)

Bridging Between CAD & GIS: 8 Ways to Automate Data Integration
Bridging Between CAD & GIS: 8 Ways to Automate Data IntegrationBridging Between CAD & GIS: 8 Ways to Automate Data Integration
Bridging Between CAD & GIS: 8 Ways to Automate Data Integration
 
Cad standards guideline
Cad standards guidelineCad standards guideline
Cad standards guideline
 
Using FME to Validate CAD File Submittals for Utilities
Using FME to Validate CAD File Submittals for UtilitiesUsing FME to Validate CAD File Submittals for Utilities
Using FME to Validate CAD File Submittals for Utilities
 
Bridging Between CAD & GIS: 8 Ways to Automate Data Integration
Bridging Between CAD & GIS: 8 Ways to Automate Data IntegrationBridging Between CAD & GIS: 8 Ways to Automate Data Integration
Bridging Between CAD & GIS: 8 Ways to Automate Data Integration
 
Ironcad
IroncadIroncad
Ironcad
 
Integrating CAD and GIS with Spatial ETL
Integrating CAD and GIS with Spatial ETLIntegrating CAD and GIS with Spatial ETL
Integrating CAD and GIS with Spatial ETL
 
Automated Bulk Conversion of 250,000+ CAD and Corresponding Raster Files to PDF
Automated Bulk Conversion of 250,000+ CAD and Corresponding Raster Files to PDFAutomated Bulk Conversion of 250,000+ CAD and Corresponding Raster Files to PDF
Automated Bulk Conversion of 250,000+ CAD and Corresponding Raster Files to PDF
 
BIM-based Enterprise GIS Workflows for Facilities Management with QA/QC
BIM-based Enterprise GIS Workflows for Facilities Management with QA/QCBIM-based Enterprise GIS Workflows for Facilities Management with QA/QC
BIM-based Enterprise GIS Workflows for Facilities Management with QA/QC
 
Utilities Industry Success Stories with FME
Utilities Industry Success Stories with FME Utilities Industry Success Stories with FME
Utilities Industry Success Stories with FME
 
Transforming AutoCAD Data to Smallworld with FME
Transforming AutoCAD Data to Smallworld with FMETransforming AutoCAD Data to Smallworld with FME
Transforming AutoCAD Data to Smallworld with FME
 
Coordinate Systems in FME 101
Coordinate Systems in FME 101 Coordinate Systems in FME 101
Coordinate Systems in FME 101
 
도시 인프라 공간정보 데이터 커넥션-통합 기술 표준화를 위한 ISO TC211 19166 개발 이야기
도시 인프라 공간정보 데이터 커넥션-통합 기술 표준화를 위한 ISO TC211 19166 개발 이야기 도시 인프라 공간정보 데이터 커넥션-통합 기술 표준화를 위한 ISO TC211 19166 개발 이야기
도시 인프라 공간정보 데이터 커넥션-통합 기술 표준화를 위한 ISO TC211 19166 개발 이야기
 
Varun_Kandhari_Resume
Varun_Kandhari_ResumeVarun_Kandhari_Resume
Varun_Kandhari_Resume
 
Spatialware_2_Sql08
Spatialware_2_Sql08Spatialware_2_Sql08
Spatialware_2_Sql08
 
Boon Ronald_CV
Boon Ronald_CVBoon Ronald_CV
Boon Ronald_CV
 
A cloud-based platform for IFC file enrichment with second-level space bound...
A cloud-based platform for IFC file enrichment with  second-level space bound...A cloud-based platform for IFC file enrichment with  second-level space bound...
A cloud-based platform for IFC file enrichment with second-level space bound...
 
Parallel Rendering
Parallel RenderingParallel Rendering
Parallel Rendering
 
Presentation Cable Project Cad Adc
Presentation Cable Project Cad AdcPresentation Cable Project Cad Adc
Presentation Cable Project Cad Adc
 
Titan_IV
Titan_IVTitan_IV
Titan_IV
 
Manufacturing Day - Case Study - MacLean Engineering
Manufacturing Day - Case Study - MacLean EngineeringManufacturing Day - Case Study - MacLean Engineering
Manufacturing Day - Case Study - MacLean Engineering
 

Viewers also liked

Convert Your Legacy OpenGL Code to Modern OpenGL with Qt
Convert Your Legacy OpenGL Code to Modern OpenGL with QtConvert Your Legacy OpenGL Code to Modern OpenGL with Qt
Convert Your Legacy OpenGL Code to Modern OpenGL with QtICS
 
Лабораторийн ажил 12
Лабораторийн ажил 12Лабораторийн ажил 12
Лабораторийн ажил 12Chinzorig Undarmaa
 
Java Script and HTML.
Java Script and HTML.Java Script and HTML.
Java Script and HTML.Akshat Vig
 
Button ашиглан хуудас хооронд холбоос хийх
Button ашиглан хуудас хооронд холбоос хийхButton ашиглан хуудас хооронд холбоос хийх
Button ашиглан хуудас хооронд холбоос хийхЖавзмаа Ж
 
D:\Sw207\Lectures Old\Pp Lect0
D:\Sw207\Lectures Old\Pp Lect0D:\Sw207\Lectures Old\Pp Lect0
D:\Sw207\Lectures Old\Pp Lect0ulziibaatar
 

Viewers also liked (20)

4. graphics standard
4. graphics standard4. graphics standard
4. graphics standard
 
GPU - how can we use it?
GPU - how can we use it?GPU - how can we use it?
GPU - how can we use it?
 
Convert Your Legacy OpenGL Code to Modern OpenGL with Qt
Convert Your Legacy OpenGL Code to Modern OpenGL with QtConvert Your Legacy OpenGL Code to Modern OpenGL with Qt
Convert Your Legacy OpenGL Code to Modern OpenGL with Qt
 
Dynamic web 13
Dynamic web 13Dynamic web 13
Dynamic web 13
 
Pp Lect13 1
Pp Lect13 1Pp Lect13 1
Pp Lect13 1
 
Лабораторийн ажил 12
Лабораторийн ажил 12Лабораторийн ажил 12
Лабораторийн ажил 12
 
Pp Lect12 13
Pp Lect12 13Pp Lect12 13
Pp Lect12 13
 
Sw203 Lab4
Sw203 Lab4Sw203 Lab4
Sw203 Lab4
 
Pp Lect4 5
Pp Lect4 5Pp Lect4 5
Pp Lect4 5
 
Pp Lect9
Pp Lect9Pp Lect9
Pp Lect9
 
Pp Lect7 1
Pp Lect7 1Pp Lect7 1
Pp Lect7 1
 
Java Script and HTML.
Java Script and HTML.Java Script and HTML.
Java Script and HTML.
 
Pp Lect10 11
Pp Lect10 11Pp Lect10 11
Pp Lect10 11
 
Pp Lect8
Pp Lect8Pp Lect8
Pp Lect8
 
Button ашиглан хуудас хооронд холбоос хийх
Button ашиглан хуудас хооронд холбоос хийхButton ашиглан хуудас хооронд холбоос хийх
Button ашиглан хуудас хооронд холбоос хийх
 
Lecture 2
Lecture 2Lecture 2
Lecture 2
 
D:\Sw207\Lectures Old\Pp Lect0
D:\Sw207\Lectures Old\Pp Lect0D:\Sw207\Lectures Old\Pp Lect0
D:\Sw207\Lectures Old\Pp Lect0
 
Pp Lect8 1
Pp Lect8 1Pp Lect8 1
Pp Lect8 1
 
Pp Lect9 10 1
Pp Lect9 10 1Pp Lect9 10 1
Pp Lect9 10 1
 
Pp Lect3 1
Pp Lect3 1Pp Lect3 1
Pp Lect3 1
 

Similar to Graphics Standards and Device Independent Programming

ANDROID presentation prabal
ANDROID presentation prabalANDROID presentation prabal
ANDROID presentation prabalPrabal Tyagi
 
Flex en silverlight viewer configuratie, Esri, Mark Jagt, Boudewijn Boogaard
Flex en silverlight viewer configuratie, Esri, Mark Jagt, Boudewijn BoogaardFlex en silverlight viewer configuratie, Esri, Mark Jagt, Boudewijn Boogaard
Flex en silverlight viewer configuratie, Esri, Mark Jagt, Boudewijn BoogaardEsri Nederland
 
Flutter vs Java Graphical User Interface Frameworks - text
Flutter vs Java Graphical User Interface Frameworks - textFlutter vs Java Graphical User Interface Frameworks - text
Flutter vs Java Graphical User Interface Frameworks - textToma Velev
 
Synapse india reviews on asp.net mobile application
Synapse india reviews on asp.net mobile applicationSynapse india reviews on asp.net mobile application
Synapse india reviews on asp.net mobile applicationsaritasingh19866
 
Development with JavaFX 9 in JDK 9.0.1
Development with JavaFX 9 in JDK 9.0.1Development with JavaFX 9 in JDK 9.0.1
Development with JavaFX 9 in JDK 9.0.1Wolfgang Weigend
 
Android operating system
Android operating systemAndroid operating system
Android operating systemDev Savalia
 
Dirigible powered by Orion for Cloud Development (EclipseCon EU 2015)
Dirigible powered by Orion for Cloud Development (EclipseCon EU 2015)Dirigible powered by Orion for Cloud Development (EclipseCon EU 2015)
Dirigible powered by Orion for Cloud Development (EclipseCon EU 2015)Nedelcho Delchev
 
Rapid and Reliable Developing with HTML5 & GWT
Rapid and Reliable Developing with HTML5 & GWTRapid and Reliable Developing with HTML5 & GWT
Rapid and Reliable Developing with HTML5 & GWTManuel Carrasco Moñino
 
Developing for Android-Types of Android Application
Developing for Android-Types of Android ApplicationDeveloping for Android-Types of Android Application
Developing for Android-Types of Android ApplicationNandini Prabhu
 
Eclipse vs Netbean vs Railo
Eclipse vs Netbean vs RailoEclipse vs Netbean vs Railo
Eclipse vs Netbean vs RailoMohd Safian
 
Cross-Platform Development using Angulr JS in Visual Studio
Cross-Platform Development using Angulr JS in Visual StudioCross-Platform Development using Angulr JS in Visual Studio
Cross-Platform Development using Angulr JS in Visual StudioMizanur Sarker
 
Java keynote preso
Java keynote presoJava keynote preso
Java keynote presoArtur Alves
 

Similar to Graphics Standards and Device Independent Programming (20)

Computer graphics workbook
Computer graphics workbookComputer graphics workbook
Computer graphics workbook
 
ANDROID presentation prabal
ANDROID presentation prabalANDROID presentation prabal
ANDROID presentation prabal
 
My androidpresentation
My androidpresentationMy androidpresentation
My androidpresentation
 
desktop_resume
desktop_resumedesktop_resume
desktop_resume
 
Flex en silverlight viewer configuratie, Esri, Mark Jagt, Boudewijn Boogaard
Flex en silverlight viewer configuratie, Esri, Mark Jagt, Boudewijn BoogaardFlex en silverlight viewer configuratie, Esri, Mark Jagt, Boudewijn Boogaard
Flex en silverlight viewer configuratie, Esri, Mark Jagt, Boudewijn Boogaard
 
Embedded Android : System Development - Part I
Embedded Android : System Development - Part IEmbedded Android : System Development - Part I
Embedded Android : System Development - Part I
 
Flutter vs Java Graphical User Interface Frameworks - text
Flutter vs Java Graphical User Interface Frameworks - textFlutter vs Java Graphical User Interface Frameworks - text
Flutter vs Java Graphical User Interface Frameworks - text
 
Synapse india reviews on asp.net mobile application
Synapse india reviews on asp.net mobile applicationSynapse india reviews on asp.net mobile application
Synapse india reviews on asp.net mobile application
 
Development with JavaFX 9 in JDK 9.0.1
Development with JavaFX 9 in JDK 9.0.1Development with JavaFX 9 in JDK 9.0.1
Development with JavaFX 9 in JDK 9.0.1
 
2D graphics
2D graphics2D graphics
2D graphics
 
Android operating system
Android operating systemAndroid operating system
Android operating system
 
Angel
AngelAngel
Angel
 
Dirigible powered by Orion for Cloud Development (EclipseCon EU 2015)
Dirigible powered by Orion for Cloud Development (EclipseCon EU 2015)Dirigible powered by Orion for Cloud Development (EclipseCon EU 2015)
Dirigible powered by Orion for Cloud Development (EclipseCon EU 2015)
 
Rapid and Reliable Developing with HTML5 & GWT
Rapid and Reliable Developing with HTML5 & GWTRapid and Reliable Developing with HTML5 & GWT
Rapid and Reliable Developing with HTML5 & GWT
 
Graphics Libraries
Graphics LibrariesGraphics Libraries
Graphics Libraries
 
2019 VizEx View HTML5 Workshop
2019 VizEx View HTML5 Workshop2019 VizEx View HTML5 Workshop
2019 VizEx View HTML5 Workshop
 
Developing for Android-Types of Android Application
Developing for Android-Types of Android ApplicationDeveloping for Android-Types of Android Application
Developing for Android-Types of Android Application
 
Eclipse vs Netbean vs Railo
Eclipse vs Netbean vs RailoEclipse vs Netbean vs Railo
Eclipse vs Netbean vs Railo
 
Cross-Platform Development using Angulr JS in Visual Studio
Cross-Platform Development using Angulr JS in Visual StudioCross-Platform Development using Angulr JS in Visual Studio
Cross-Platform Development using Angulr JS in Visual Studio
 
Java keynote preso
Java keynote presoJava keynote preso
Java keynote preso
 

Recently uploaded

Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfjimielynbastida
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 

Recently uploaded (20)

Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdf
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 

Graphics Standards and Device Independent Programming

  • 2. OVERVIEW Graphics standards Device independent graphics programming 2/15/2014 2 OpenGL and WebGL
  • 3. GRAPHICS STANDARD Goal: portability, standard graphics functions are independent of programming language, bindings are defined for various languages • Early graphics packages • GKS (Graphical Kernel System) • PHIGS (Programmer's Hierarchical Interactive Graphics System) • OpenGL • Java3D • Direct3D • WebGL 2/15/2014 3 • VRML (Virtual Reality Modeling Language)
  • 4. EARLY HISTORY OF APIS IFIPS (1973) formed two committees to come up with a standard graphics API • Graphical Kernel System (GKS) • 2D but contained good workstation model • Widely used graphical kernel for CAD and CAM software in the 1980’s and 1990’s • Core • Both 2D and 3D • GKS adopted as ISO and later ANSI standard (1980s) GKS not easily extended to 3D (GKS-3D) • Far behind hardware development
  • 5. PHIGS AND X Programmers Hierarchical Graphics System (PHIGS) • At one time considered to be the 3D graphic standard for the 1990’s • Arose from CAD community • Database model with retained graphics (structures) X Window System • DEC/MIT effort • Client-server architecture with graphics PEX combined the two • Not easy to use (all the defects of each)
  • 6. SGI AND GL Silicon Graphics (SGI) revolutionized the graphics workstation by implementing the pipeline in hardware (1982) To access the system, application programmers used a library called GL With GL, it was relatively simple to program three dimensional interactive applications
  • 7. OPENGL The success of GL lead to OpenGL (1992), a platform-independent API that was • Simple architecture • Powerful and fast rendering • Easy to use • Contains 2 libraries: GL kernel and GLU (OpenGL Utility Library) • Close enough to the hardware to get excellent performance • 1992-2006 managed by the OpenGL ARB (Architecture Review Board), now by the khronos group • No window management: no user interface, no image processing, no file system support (no image loader)
  • 8. WEBGL WebGL is based on OpenGL ES 2.0 and provides an API for 3D graphics. It uses the HTML5 canvas element and is accessed using Document Object Model interfaces. 2/15/2014 8 Automatic memory management is provided as part of the JavaScript language.
  • 9. THE PROGRAMMER’S INTERFACE Programmer sees the graphics system through a software interface: the Application Programmer Interface (API)
  • 10. APIS AND DEVICE INDEPENDENT GRAPHICS PROGRAMMING Using APIs makes it possible to create programs that can be compiled and run on many different graphics platforms. Most APIs are basically libraries of routines that take care of standard tasks like rasterization, hidden surface removal, polygon clipping, projections. 2/15/2014 10 The APIs serve as intermediaries between the application layer and the hardware layer. One of their main functions is to facilitate rendering but they can provide also higher level as well as lower level functions.
  • 11. DIFFERENT API LEVELS Lower level APIs (e.g. the rendering APIs Direct3D and OpenGL) deal directly with the rendering task. On the other hand a higher level API like the scene graph API Java3D takes care of maintaining and organizing information about the graphic scenes, illumination, and environment states but needs the help a rendering API to complete the rendering task. 2/15/2014 11 The relationship between different APIs, the operating system, and the hardware layer are illustrated in the following two pages.
  • 12. GRAPHICS STANDARD API contains functions for creation, manipulation and display of images Basic building blocks: primitives and attributes Geometric transformations Modeling transformations Viewing transformations Structuring/manipulating components hierarchically Control functions 2/15/2014 12 • • • • • •
  • 14. PREPARATION • Get a browser that supports it. • Firefox: just make sure you have version 4 or higher. • Chrome: all you need to do is install it, or if you’re already using it, just check whether it’s updated itself to version 10 — this will almost certainly have happened automatically (it was released in March 2011), but you can check from the “About Google Chrome” option on the tools menu to confirm. • Safari: on Macs, OS X 10.7 has WebGL support, but it’s switched off by default. To switch it on, enable the developer menu and check the “Enable WebGL” option. (Thanks to Blah for the heads-up on this one.) If you’re on Windows, make sure you have the Microsoft DirectX runtime installed — this is a free download from Microsoft. • Once you’ve done that, make sure that you’ve got the very latest versions of the drivers for your graphics card. 2/15/2014 14 •
  • 15. WEBGL FUNCTION FORMAT function name dimensions Gl.Vertex3f(x,y,z) x,y,z are floats belongs to GL library glVertex3fv(p) p is a pointer to an array
  • 16. SQUARE 2/15/2014 16 if you understand how this works, the rest should be pretty simple…
  • 17. HOMEWORK Gl.??? – Find all and study all in this example. 2/15/2014 17 Draw – Rectangle, square, circle in the same window

Editor's Notes

  1. Virtual RealityModelling Language
  2. International Federation of Information Processing Societies
  3. Digital Equipment CorporationMassachusetts Institute of Technology1990’s