Simple Ray Tracing Framework Ray Trace Image Depth or Mask Image Interactive Preview Interactive Control.

Slides:



Advertisements
Similar presentations
Technische Universität München Computer Graphics SS 2014 Graphics Effects Rüdiger Westermann Lehrstuhl für Computer Graphik und Visualisierung.
Advertisements

Ray tracing. New Concepts The recursive ray tracing algorithm Generating eye rays Non Real-time rendering.
Graphics Pipeline.
SE 313 – Computer Graphics Lecture 12: Lighting and Materials Lecturer: Gazihan Alankuş 1.
3D Graphics Rendering and Terrain Modeling
Chapter 6: Vertices to Fragments Part 2 E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley Mohan Sridharan Based on Slides.
Part I: Basics of Computer Graphics Viewing Transformation and Coordinate Systems Chapter
Essentials of Interactive Computer Graphics: Concepts and Implementation K. Sung, P. Shirley, S. Baer Intro and Chapter 1 Goals Give student some idea.
Introduction to OpenGL. What is OpenGL OpenGL is a low-level software interface to graphics hardware No commands for performing windowing tasks or obtaining.
1 Angel: Interactive Computer Graphics 4E © Addison-Wesley 2005 Models and Architectures Ed Angel Professor of Computer Science, Electrical and Computer.
Ch 1 Intro to Graphics page 1CS 367 First Day Agenda Best course you have ever had (survey) Info Cards Name, , Nickname C / C++ experience, EOS experience.
Essentials of Interactive Computer Graphics: Concepts and Implementation K. Sung, P. Shirley, S. Baer Chapter 4 Chapter 4: Working with Graphics APIs.
Now Playing: Quicksand Under Carpet New Radiant Storm King from Leftover Blues: Released 2004.
CSS552 Final Project Demo Peter Lam Tim Chuang. Problem Statement Our goal is to experiment with different post rendering effects (Cel Shading, Bloom.
Guilford County Sci Vis V204.01
Working with Graphics. Objectives Understand bitmap and vector graphics Place a graphic into a frame Work with the content indicator Transform frame contents.
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.
1 Perception and VR MONT 104S, Spring 2008 Lecture 22 Other Graphics Considerations Review.
Objectives Review some advanced topics, including Review some advanced topics, including Chapter 8: Implementation Chapter 8: Implementation Chapter 9:
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.
1 Computer Graphics Week3 –Graphics & Image Processing.
INTRO TO COMPUTER GRAPHICS TEXT EDWARD ANGEL: EDITION 5 CS770/870
UniS CS297 Graphics with Java and OpenGL Introduction.
Advanced Computer Graphics March 06, Grading Programming assignments Paper study and reports (flipped classroom) Final project No written exams.
Computer Graphics. Requirements Prerequisites Prerequisites CS 255 : Data Structures CS 255 : Data Structures Math 253 Math 253 Experience with C Programming.
UniS CS293 Graphics with Java and OpenGL Introduction.
Project Raytracing. Content Goals Idea of Raytracing Ray Casting – Therory – Practice Raytracing – Theory – Light model – Practice Output images Conclusion.
C O M P U T E R G R A P H I C S Guoying Zhao 1 / 14 C O M P U T E R G R A P H I C S Guoying Zhao 1 / 14 Going-through.
CS 450: COMPUTER GRAPHICS REVIEW: INTRODUCTION TO COMPUTER GRAPHICS – PART 2 SPRING 2015 DR. MICHAEL J. REALE.
Week 2 - Friday.  What did we talk about last time?  Graphics rendering pipeline  Geometry Stage.
CSC 461: Lecture 3 1 CSC461 Lecture 3: Models and Architectures  Objectives –Learn the basic design of a graphics system –Introduce pipeline architecture.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
1 Angel and Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 Introduction to Computer Graphics Ed Angel Professor Emeritus of Computer.
1 Introduction to Computer Graphics SEN Introduction to OpenGL Graphics Applications.
Week 6 - Wednesday.  What did we talk about last time?  Light  Material  Sensors.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
1Computer Graphics Lecture 4 - Models and Architectures John Shearer Culture Lab – space 2
COMPUTER GRAPHICS CSCI 375. What do I need to know?  Familiarity with  Trigonometry  Analytic geometry  Linear algebra  Data structures  OOP.
More on Advanced Interfaces, Image Basics Glenn G. Chappell U. of Alaska Fairbanks CS 381 Lecture Notes Friday, November 21, 2003.
2 COEN Computer Graphics I Evening’s Goals n Discuss application bottleneck determination n Discuss various optimizations for making programs execute.
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.
Parallel Ray Tracer Computer Systems Lab Presentation Stuart Maier.
Review on Graphics Basics. Outline Polygon rendering pipeline Affine transformations Projective transformations Lighting and shading From vertices to.
CS380: Computer Graphics Distributed Ray Tracing TA Course URL:
Subject Name: Computer Graphics Subject Code: Textbook: “Computer Graphics”, C Version By Hearn and Baker Credits: 6 1.
Ray Tracing Fall, Introduction Simple idea  Forward Mapping  Natural phenomenon infinite number of rays from light source to object to viewer.
11/24/ :45 Graphics II Shadow Maps Reflections Session 5.
Joshua Smith and Garrick Solberg CSS 552 – Topics in Rendering.
OpenGL API 2D Graphic Primitives Angel Angel: Interactive Computer Graphics5E © Addison-Wesley
RENDERING : Global Illumination
Chapter 1 Graphics Systems and Models Models and Architectures.
1 E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 Models and Architectures 靜宜大學 資訊工程系 蔡奇偉 副教授 2012.
Volumetric Lighting Effects By Thomas Brown and Albert Ng.
Computer Graphics I, Fall Programming with OpenGL Part 2: Complete Programs.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
Digital Camera Analogy ● How do we take a picture of a person indoor? ● A target (object) needs to be determined. → geometry ● The person needs to wear.
MPEG-4 Binary Information for Scenes (BIFS)
Photorealistic Rendering vs. Interactive 3D Graphics
3D Graphics Rendering PPT By Ricardo Veguilla.
Interactive Computer Graphics
Models and Architectures
Chapter 14 JavaFX Basics Dr. Clincy - Lecture.
Models and Architectures
Computer Graphics 4Practical Lesson
Models and Architectures
The Image The pixels in the image The mask The resulting image 255 X
Presentation transcript:

Simple Ray Tracing Framework Ray Trace Image Depth or Mask Image Interactive Preview Interactive Control

Technologies C# – Just another programming language WinForm: – GUI Application Development – not covered in this class Interactive Viewing: – XNA (can be OGL or D3D) – To be covered in second half

The Scene Describe by XML (text) file! Four major components – Image Spec (Film in a camera) – The Camera – Environment (Lighting condition) – The Objects Geometry: spheres and polygons Material properties

XML Scene Description Similar to Maya’s.ma file – Extremely simpler version!! Example Command File Camera: eye Camera: lookat

Source Code Structure Two Projects: – 3DPreviewer: Shell container – RayTracer: Our source code Parser (translate XML into data structure) RTCore: Shading, Image representation: – DoNotChange: RT thrade support (later) – NeedToUse: Shading, Utilities RTSupport – Geometry – RaySupport: » Ray and IntersectionRecord – SceneResourceSupport » Texture, Light, Materials – 2 libraries: GUI, Graphics, 2 MVC Support

Representation RTCamera ImageSpec SceneDatabase Ray IntersectionRecord Geometry Link to StarterProjectStarterProject

RTWindow.cs: App Container App Window Shell In WindowsForm

Parser.cs: XML Parser Translates Command File into data structures In RayTracer: Parser/CommandFileParser.cs

RTCore: Folder DoNotChange Folder: – No need to even examine the source – Thread support (to cover later in the quarter) NeedToUse Folder – Need to understand the code – No need to change Three files: Compute, ImageFrameSupport, and Init – Essential to understand – Necessary for 3D Viewing and Camera implementation

Geometry and RaySupport Geometry – geometries in the scene – For now only: Rectangles and Spheres – No need to worry until much later Ray – Ray: Origin + Direction Ray constructor: TAKES 2 positions!! – IntersectionRecord

Transformation The tag The implementaiton in – RTGeometry_ParseXForm.cs – Rectangle::Parsing at the end:

Geometry and RaySupport Ray IntersectionRecord Sphere Rectangle

RTCamera: mEye mAt

ImageSpec: Resolution Must Compute Each Pixel Location!!

SceneDataBase Contains all the scene resources – Geometries, Textures, Materials, Lights Simple index tables for each resource

Calling Sequence RTWindow::BeginRT() /* from BeginRT Button – Create and Init: image, mask, depth buffers RTCore::BeginRTThread – In RTCore/DoNotChange/RTCore_Thread.cs – one/more separate thread(s) call to RTCore::ComputeImage – In RTCore/RTCore_Compute.cs – Loop through all pixels, for each pixel – Compute visibility, coverage, depth

Important Functions RTCore::ComputeVisibility() – In RTCore/RTCore_Visibility.cs – Use -1 for exceptGeomIndex for now RTCore::ComputeShading() – In RTCore/RTCore_Shade.cs – Use 0 for generation for now