SlideShare una empresa de Scribd logo
1 de 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

Más contenido relacionado

La actualidad más candente

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
 

La actualidad más candente (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
 

Destacado

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
 

Destacado (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 a 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 a 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
 

Último

Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
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
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
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
 
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
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 

Último (20)

Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
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
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
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)
 
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
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 

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

Notas del editor

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