UniS CS297 Graphics with Java and OpenGL Introduction.

Slides:



Advertisements
Similar presentations
MEG 361 CAD Chapter 3 Basic Concepts of Graphics Programming.
Advertisements

Graphics Pipeline.
CS 4363/6353 BASIC RENDERING. THE GRAPHICS PIPELINE OVERVIEW Vertex Processing Coordinate transformations Compute color for each vertex Clipping and Primitive.
3D Graphics Rendering and Terrain Modeling
CS 4363/6353 INTRODUCTION TO COMPUTER GRAPHICS. WHAT YOU’LL SEE Interactive 3D computer graphics Real-time 2D, but mostly 3D OpenGL C/C++ (if you don’t.
INTRODUCTION. Painting with numbers! Aspects Modeling Rendering Animation.
HCI 530 : Seminar (HCI) Damian Schofield.
Further Programming for 3D applications CE Introduction to Further Programming for 3D application Bob Hobbs Faculty of Computing, Engineering and.
Graphics Systems I-Chen Lin’s CG slides, Doug James’s CG slides Angel, Interactive Computer Graphics, Chap 1 Introduction to Graphics Pipeline.
SWE 423: Multimedia Systems Chapter 4: Graphics and Images.
Introduction to OpenGL. What is OpenGL OpenGL is a low-level software interface to graphics hardware No commands for performing windowing tasks or obtaining.
Three-Dimensional Concepts
Shading Languages By Markus Kummerer. Markus Kummerer 2 / 19 State of the Art Shading.
3D Rendering with JOGL Introduction to Java OpenGL Graphic Library By Ricardo Veguilla
Guilford County Sci Vis V204.01
MULTIMEDIA TECHNOLOGY SMM 3001 MEDIA - GRAPHICS. In this chapter how the computer creates, stores, and displays graphic images how the computer creates,
1 Perception, Illusion and VR HNRS 299, Spring 2008 Lecture 19 Other Graphics Considerations Review.
1 Computer Graphics Week13 –Shading Models. Shading Models Flat Shading Model: In this technique, each surface is assumed to have one normal vector (usually.
Course Overview, Introduction to CG Glenn G. Chappell U. of Alaska Fairbanks CS 381 Lecture Notes Friday, September 5, 2003.
1 Perception and VR MONT 104S, Spring 2008 Lecture 22 Other Graphics Considerations Review.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 10: Computer Graphics Computer Science: An Overview Tenth Edition.
CS 480/680 Computer Graphics Course Overview Dr. Frederick C Harris, Jr. Fall 2012.
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
Computer Graphics Computer Graphics is everywhere: Visual system is most important sense: High bandwidth Natural communication Fast developments in Hardware.
UniS CS293 Graphics with Java and OpenGL Textures.
3D Visualisation of Simulation Data. Informal Seminar 08/03/2004. By Chris Sweet.
Advanced Computer Graphics March 06, Grading Programming assignments Paper study and reports (flipped classroom) Final project No written exams.
Week 2 - Wednesday CS361.
Computer Graphics An Introduction. What’s this course all about? 06/10/2015 Lecture 1 2 We will cover… Graphics programming and algorithms Graphics data.
UniS CS293 Graphics with Java and OpenGL Introduction.
Graphics Programming using OpenGL. OpenGL is a software interface that allows the programmer to create 2D and 3D graphics images. This interface consists.
OpenGl Graphics Programming. Introduction OpenGL is a low-level graphics library specification. It makes available to the programmer a small set of geomteric.
CS 450: COMPUTER GRAPHICS REVIEW: INTRODUCTION TO COMPUTER GRAPHICS – PART 2 SPRING 2015 DR. MICHAEL J. REALE.
INTRODUCTION INTRODUCTION Computer Graphics: As objects: images generated and/or displayed by computers. As a subject: the science of studying how to generate.
Homogeneous Form, Introduction to 3-D Graphics Glenn G. Chappell U. of Alaska Fairbanks CS 381 Lecture Notes Monday, October 20,
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
CS 638, Fall 2001 Multi-Pass Rendering The pipeline takes one triangle at a time, so only local information, and pre-computed maps, are available Multi-Pass.
CSE 581: Interactive Computer Graphics Spring 2012, UG 4 Tuesday, Thursday – 9:00AM – 10:18AM DL 0317 Raghu Machiraju Slides: Courtesy - Prof. Huamin Wang,
Image Synthesis Rabie A. Ramadan, PhD 1. 2 About my self Rabie A. Ramadan My website and publications
Introduction to OpenGL Programming Jian-Liang Lin 2002.
1 Computer Graphics Week2 –Creating a Picture. Steps for creating a picture Creating a model Perform necessary transformation Lighting and rendering the.
3D animation is rendered clip of animated 3D objects in a 3D environment. An example: Examples of movies released in 3D are Toy Story, Cars, Shrek, Wall-E,
Computer Graphics Chapter 6 Andreas Savva. 2 Interactive Graphics Graphics provides one of the most natural means of communicating with a computer. Interactive.
1 Perception and VR MONT 104S, Fall 2008 Lecture 21 More Graphics for VR.
Week 10:Rendering 1. In the last lecture we saw how to model objects and represent them as wireframe models. Wire frame models depict the outer hull of.
Image Synthesis Rabie A. Ramadan, PhD 4. 2 Review Questions Q1: What are the two principal tasks required to create an image of a three-dimensional scene?
Advanced Computer Graphics Spring 2014 K. H. Ko School of Mechatronics Gwangju Institute of Science and Technology.
1 Welcome Alireza Moghaddam Humber College Lecture 1 Game 540 Alireza Moghaddam
Subject Name: Computer Graphics Subject Code: Textbook: “Computer Graphics”, C Version By Hearn and Baker Credits: 6 1.
UniS CS297 Graphics with Java and OpenGL Blending.
Digital Media Dr. Jim Rowan ITEC Vector Graphics Elegant way to construct digital images that –have a compact representation –are scalable –are.
COMPUTER GRAPHICS CS 482 – FALL 2015 SEPTEMBER 29, 2015 RENDERING RASTERIZATION RAY CASTING PROGRAMMABLE SHADERS.
Chapter 4 -- Color1 Color Open GL Chapter 4. Chapter 4 -- Color2 n The goal of almost all OpenGL applications is to draw color pictures in a window on.
Copyright © Curt Hill Meshes A Little More to Know.
Computer Graphics (Fall 2003) COMS 4160, Lecture 5: OpenGL 1 Ravi Ramamoorthi Many slides courtesy Greg Humphreys.
Applications and Rendering pipeline
Chapter 10: Computer Graphics
Computer Graphics.
Week 2 - Friday CS361.
CSI-447: Multimedia Systems
Computer Graphics Lecture 32
Introduction to OpenGL
3D Graphics Rendering PPT By Ricardo Veguilla.
The Graphics Rendering Pipeline
Understanding Theory and application of 3D
A Theory of Light and Shade
CS297 Graphics with Java and OpenGL
CIS 441/541: Introduction to Computer Graphics Lecture 15: shaders
Introduction to OpenGL
Presentation transcript:

UniS CS297 Graphics with Java and OpenGL Introduction

UniS 2 The OpenGL graphics system is a software interface to graphics hardware. (The GL stands for Graphics Library.) For interactive programs that produce color images of moving three-dimensional objects. First introduced 1992.

UniS 3 OpenGL With OpenGL, you can control computer-graphics technology to produce realistic pictures or ones that depart from reality in imaginative ways. OpenGL has become the industry standard for graphics applications and games.

UniS 4 JOGL OpenGL is originally written in C. JOGL is the Java OpenGL programming bindings to OpenGL APIs. JOGL, since 2003, is maintained and supported by Sun Microsystems as one of their official Java projects:

UniS 5 Texts Free online copy of the original OpenGL V1.1 Redbook: ?LinkID=993 Note: written in C, not Java. However this is a very informative book, which has been used extensively for this course as the main source of examples and core material. Goes in-depth into many aspects of computer graphics that are invaluable as aid to understanding subject. All examples from Redbook have been translated into Java and are available online:

UniS 6 Texts Learning Java Bindings for OpenGL (JOGL) is cheap (less than £12 on Amazon) and has basics. Not as in-depth or comprehensive as the free Redbook. Not compatible with current version of JOGL, beware!

UniS 7 Course Details Course follows same basic outline as Open GL Redbook, except we use JOGL not C. Core material split into following sections "Introduction to OpenGL," provides a glimpse into the kinds of things OpenGL can do. Includes simple OpenGL program and essential programming details you need to know for subsequent sections.

UniS 8 Course Details "State Management and Drawing Geometric Objects," how to create a three-dimensional geometric description of an object that is eventually drawn on the screen. "Viewing," how three-dimensional models are transformed before being drawn onto a two- dimensional screen. You can control these transformations to show a particular view of a model. "Color," how to specify the colour and shading method used to draw an object. "Lighting," how to control the lighting conditions surrounding an object and how that object responds to light (that is, how it reflects or absorbs light). Lighting is an important topic, since objects usually don't look three-dimensional until they're lit.

UniS 9 Introduction to OpenGL "What Is OpenGL?", what it does and doesn't do, and how it works. "A Smidgen of OpenGL Code" presents a small OpenGL program and briefly discusses it. "OpenGL Command Syntax" explains some of the conventions and notations used by OpenGL commands. "OpenGL as a State Machine" describes the use of state variables in OpenGL and the commands for querying, enabling, and disabling states. "OpenGL Rendering Pipeline" shows a typical sequence of operations for processing geometric and image data. "Animation" explains in high level terms how to create pictures on the screen that move.

UniS 10 Introduction to OpenGL OpenGL is a software interface to graphics hardware. This interface consists of about 200 distinct commands that you use to specify the objects and operations needed to produce interactive three-dimensional applications.

UniS 11 Introduction to OpenGL OpenGL is designed as a streamlined, hardware-independent interface to be implemented on many different hardware platforms. No commands for performing windowing tasks or obtaining user input are included in OpenGL; Similarly, OpenGL doesn't provide high-level commands for describing models of three-dimensional objects. With OpenGL, you must build up your desired model from a small set of geometric primitives - points, lines, and polygons.

UniS 12 Introduction to OpenGL, Basic Image Construction Lets look at how the cover plate for the Redbook is constructed with OpenGl

UniS 13 Introduction to OpenGL, Basic Image Construction Cover scene constructed as a wireframe model

UniS 14 Introduction to OpenGL, Basic Image Construction Each line of wire corresponds to an edge of a primitive (typically a polygon). For example, the surface of the table is constructed from triangular polygons that fit together in a sort of 3d jigsaw

UniS 15 Introduction to OpenGL, Basic Image Construction Note that you can see portions of objects that would be obscured if the objects were solid rather than wireframe. For example, you can see the entire model of the hills outside the window even though most of this model is normally hidden by the wall of the room. The globe appears to be nearly solid because it's composed of hundreds of colored blocks, and you see the wireframe lines for all the edges of all the blocks, even those forming the back side of the globe.

UniS 16 Introduction to OpenGL, Basic Image Construction Depth-cued version of wireframe scene. Note that the lines farther from the eye are dimmer, giving a visual cue of depth.

UniS 17 Introduction to OpenGL, Basic Image Construction OpenGL uses atmospheric effects (collectively referred to as fog) to achieve depth cueing.

UniS 18 Introduction to OpenGL, Basic Image Construction Antialiased version of the wireframe scene.

UniS 19 Introduction to OpenGL, Basic Image Construction Antialiasing is a technique for reducing the jagged edges (also known as jaggies) created when approximating smooth edges using pixels - short for picture elements - which are confined to a rectangular grid. Such jaggies are usually the most visible with near- horizontal or near-vertical lines.

UniS 20 Introduction to OpenGL, Basic Image Construction Flat-shaded, unlit version of the scene.

UniS 21 Introduction to OpenGL, Basic Image Construction The objects in the scene are now shown as solid. They appear "flat" in the sense that only one color is used to render each polygon, so they don't appear smoothly rounded. There are no effects from any light sources.

UniS 22 Introduction to OpenGL, Basic Image Construction Lit, smooth-shaded version of the scene.

UniS 23 Introduction to OpenGL, Basic Image Construction scene looks much more realistic and three- dimensional objects are shaded to respond to the light sources in the room as if the objects were smoothly rounded.

UniS 24 Introduction to OpenGL, Basic Image Construction Final Image again, built from previous images, also has texture mapping and shadows. Texture mapping allows you to apply a two- dimensional image onto a three-dimensional object. Table surface is the most vibrant example of texture mapping. The wood grain on the floor and table surface are all texture mapped, as well as the wallpaper and the toy spinning top.