High-level 3D programming. using Coin and Sc21. on Mac OS X. Marius Kintel ~ Karin Kosina
|
|
- Olivia White
- 5 years ago
- Views:
Transcription
1 High-level 3D programming on Mac OS X using Coin and Sc21 Marius Kintel ~ Karin Kosina
2 Sc21? a soft, silvery-white metal atomic number: 21 relativ atomic mass: 44.96
3 Sc21 a Mac OS X framework Objective-C++ integration of Coin with Cocoa
4 Coin another Mac OS X framework C++ a high-level 3D graphics library
5 Introduction Sc21 Demo Coin Q & A Overview
6 High-Level 3D Graphics Hierarchical structure ( scenegraph ) abstractions automatic caching run-time efficiency Object-based instead of vertex-based Data-driven vs. application-driven
7 Coin Features data-driven scenegraph library uses OpenGL for rendering fully Open Inventor 2.1 compatible multi-platform (Mac OS X,Windows, GNU/Linux, other UNIX systems) VRML97 support Free Software
8 Coin vs. Open Inventor Open Inventor API: designed by SGI last version: Open Inventor 2.1 Open Inventor implementations: SGI s original Open Inventor Open Inventor from TGS Coin by SIM
9 Other High-Level 3D Toolkits Among others: Java3D OpenGL Performer VTK and more... None of them is well-integrated with Mac OS X!
10 Add-ons and Related Libraires SIMVoleon (volume rendering) SIM Scenery (terrain rendering) SoGUI libraries (GUI toolkit integration) SoQt (Qt) SoWin (Windows) SoXt (Motif)
11 A Small Survey... Who of you is familiar with Open Inventor?... Coin?... other high-level 3D graphics toolkits? What language do you mostly use...? What language would you like to use...?
12 Coin 101 A high-level introduction to Coin More on Coin programming later! Describing the scene: Nodes in the scenegraph Rendering the scene: Applying actions to the scenegraph
13 Material Node Types Overview Separator Shape nodes (objects in the scene) Group Translation Cube Property nodes (OpenGL state) Cube Group nodes
14 Material Node Types Overview Separator Shape nodes (objects in the scene) Group Translation Cube Property nodes (OpenGL state) Cube Group nodes
15 Node Types Overview Shape Nodes Basic shapes sphere, cone, cylinder, &c general shapes faceset, lineset, pointset, &c. special shapes text, nurbs, &c.
16 Node Types Overview Shape Nodes Basic shapes sphere, cone, cylinder, &c general shapes faceset, lineset, pointset, &c. special shapes text, nurbs, &c.
17 Node Types Overview Shape Nodes Basic shapes sphere, cone, cylinder, &c general shapes faceset, lineset, pointset, &c. special shapes text, nurbs, &c.
18 Node Types Overview Shape Nodes Basic shapes sphere, cone, cylinder, &c general shapes faceset, lineset, pointset, &c. special shapes text, nurbs, &c.
19 Node Types Overview Shape Nodes Basic shapes sphere, cone, cylinder, &c general shapes faceset, lineset, pointset, &c. special shapes text, nurbs, &c.
20 Node Types Overview Shape Nodes Basic shapes sphere, cone, cylinder, &c general shapes faceset, lineset, pointset, &c. special shapes text, nurbs, &c.
21 Material Node Types Overview Separator Shape nodes (objects in the scene) Group Translation Cube Property nodes (OpenGL state) Cube Group nodes
22 Material Node Types Overview Separator Shape nodes (objects in the scene) Group Translation Cube Property nodes (OpenGL state) Cube Group nodes
23 Node Types Overview Property Nodes OpenGL state materials, texture, lighting transformations Coin state geometric complexity font
24 Material Node Types Overview Separator Shape nodes (objects in the scene) Group Translation Cube Property nodes (OpenGL state) Cube Group nodes
25 Material Node Types Overview Separator Shape nodes (objects in the scene) Group Translation Cube Property nodes (OpenGL state) Cube Group nodes
26 Node Types Overview Group Nodes Containers to collect groups of objects (nodes) into subtrees Types: SoGroup SoSeparator SoSwitch More later...
27 Scenegraph Description Separator { Group { Material { diffusecolor } Cube { } } Transform { translation } Cube { } } Material Group Cube Separator Translation Cube
28 Material Group Cube Separator Translation Cube Actions Scenegraph is traversed from top to bottom and from left to right Each node can react to the action (behaviour depending on node type) Rendering the scene is an action
29 Material GLRenderAction Behaviours Group Cube Separator Translation Cube Group nodes traverse their children Shape nodes draw their geometry Property nodes set the OpenGl state usually replacing the current state exception: transformations (concatendated) and light sources (added)
30 Coin/Sc21 State Of The Union Application Cocoa Sc OpenGL Coin OpenGL Mac OS X
31 Cocoa in 2 Minutes :) Cocoa is one of the two basic frameworks on Mac OS X (together with Carbon) The language of Cocoa is Objective-C Extension to C very strongly run-time based reflection, message-passing what OO was meant to be :)
32 Cocoa in 2 Minutes :) NIB files serialized objects graphical tool to build user interfaces: Interface Builder Foundation.framework AppKit.framework
33 Sc21 Overview View Controller Model
34 SCEventHandler Sc21 Overview SCDrawable SCController SCSceneGraph
35 SCEventHandler SCController SCDrawable SCSceneGraph
36 SCDrawable formal SCDrawable <NSObject> - (void)display; -
37 SCDrawable SCView class implements <SCDrawable> behaves like NSView events forwarded to SCController::handleEvent Fullscreen rendering? just implement the protocol!
38 SCEventHandler SCController SCDrawable SCSceneGraph
39 SCController Coin rendering draws into its SCDrawable Event handling SCView sends events to handleevent: SCController passes them on to its SCEventHandler
40 SCEventHandler SCController SCDrawable SCSceneGraph
41 SCSceneGraph Abstraction for the Coin scenegraph File I/O Superscenegraph creation checkbox in IB palette delegate for more control
42 SCEventHandler SCController SCDrawable SCSceneGraph
43 SCEventHandler Will handle NSEvents occurring in our SCView Chain of event handlers Built-in event handlers: SCExaminerHandler SCCoinHandler
44 SCEventHandler Superclass for event handlers Two important methods: - (BOOL)controller:(SCController *)controller handleevent:(nsevent *)event; - (void)controller:(sccontroller *)update;
45 Demo ~
46 [Sc21 release] You now know all there is to know about Sc21 :) Give it a spin! public beta of Sc21 sample code documentation
47 Licensing Part of Coin3D (Coin, Sc21, SoGUI libs) GPL for Free Software development PEL (Professional Edition License) for all other uses developer license (no run-time fees, royalities, &c.) full source code available $ 2K / developer and year Inquiries to <sales@sim.no>
48 Summary
49 Where to go from here... Coin/Mac and Sc21 website API documentation The Inventor Mentor The Inventor Toolmaker Coin3D Mailinglist:
50 Q ~ & A
51 Systems in Motion Booth # Karin Kosina kyrah@sim.no Marius Kintel kintel@sim.no
Open Inventor Scene Graph
Open Inventor Scene Graph CSE 681 Autumn 2011 Han-Wei Shen Open Inventor Developed by SGI, originally IRIS Inventor a C++ object oriented retained mode 3D graphics API Built on top of OpenGL to allow for
More informationHigh Level Graphics Programming & VR System Architecture
High Level Graphics Programming & VR System Architecture Hannes Interactive Media Systems Group (IMS) Institute of Software Technology and Interactive Systems Based on material by Dieter Schmalstieg VR
More information2.5 Animations. Applications. Learning & Teaching Design User Interfaces. Content Process ing. Group Communi cations. Documents.
2.5 Animations Usage Applications Learning & Teaching Design User Interfaces Services Content Process ing Security... Documents Synchronization Group Communi cations S ystem s Databases Programming Media-Server
More information2.5 Animations. Contents. Basics. S ystem s. Services. Usage. Computer Architectures. Learning & Teaching Design User Interfaces.
2.5 Animations 2.5 Animations 2.5-1 Basics S ystem s Services Usage Applications Learning & Teaching Design User Interfaces Content Process ing Security... Documents Synchronization Group Communi cations
More informationCSC Graphics Programming. Budditha Hettige Department of Statistics and Computer Science
CSC 307 1.0 Graphics Programming Department of Statistics and Computer Science Graphics Programming 2 Common Uses for Computer Graphics Applications for real-time 3D graphics range from interactive games
More informationIntroduction to Computer Graphics. Knowledge basic concepts 2D and 3D computer graphics
Introduction to Computer Graphics Knowledge basic concepts 2D and 3D computer graphics 1 Introduction 2 Basic math 3 2D transformations 4 3D transformations 5 Viewing 6 Primitives 7 Geometry 8 Shading
More informationExperiences with Open Inventor. 1 Introduction. 2 HEP Visualization in an Object-Oriented Environment
Experiences with Open Inventor Joseph Boudreau University of Pittsburgh, Pittsburgh, PA, 15260 USA Abstract The Open Inventor(OI) library is a toolkit for constructing, rendering and interacting with a
More informationCS193E Lecture 17. Multiple Document Windows OpenGL & Cocoa
CS193E Lecture 17 Multiple Document Windows OpenGL & Cocoa Multiple Views onto a Model Xcode Keynote Finder Dreamweaver TreeGenerator 3D NSDocument Architecture Supports two approaches: Simple, single
More informationGraphical Objects and Scene Graphs
Graphical Objects and Scene Graphs Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico Objectives Introduce graphical objects Generalize
More informationWidget. Widget is a generic name for parts of an interface that have their own behaviour. e.g., buttons, progress bars, sliders, drop-down
Widgets Jeff Avery Widget Widget is a generic name for parts of an interface that have their own behaviour. e.g., buttons, progress bars, sliders, drop-down menus, spinners, file dialog boxes, etc are
More informationCHAPTER 1 Graphics Systems and Models 3
?????? 1 CHAPTER 1 Graphics Systems and Models 3 1.1 Applications of Computer Graphics 4 1.1.1 Display of Information............. 4 1.1.2 Design.................... 5 1.1.3 Simulation and Animation...........
More informationX Review. Mac OS X Roots: NeXT. BWS Available for virtually every OS
X Review Distributed window system Server is the user s Terminal Client runs the application WM Xlib Application Widget Set Xt Intrinsics Xlib Highly modular X Server (exchange WM, Widget Set) BWS Available
More informationAnimation & Rendering
7M836 Animation & Rendering Introduction, color, raster graphics, modeling, transformations Arjan Kok, Kees Huizing, Huub van de Wetering h.v.d.wetering@tue.nl 1 Purpose Understand 3D computer graphics
More informationDynamics in Maya. Gary Monheit Alias Wavefront PHYSICALLY BASED MODELING SH1 SIGGRAPH 97 COURSE NOTES
Dynamics in Maya Gary Monheit Alias Wavefront SH1 Dynamics in Maya Overall Requirements Architecture and Features Animations SH2 Overall Requirements Why Dynamics? Problems with traditional animation techniques
More informationUnit Maps: Kindergarten Math
Representation and Comparison of Whole Numbers K.3 Place value. The student represents and compares whole numbers, the relative position and magnitude of whole numbers, and relationships within the numeration
More informationA Shared 4-D Workspace. Miranda Ko. Peter Cahoon. University of British Columbia. Vancouver, British Columbia. Canada.
A Shared 4-D Workspace Miranda Ko Peter Cahoon University of British Columbia Vancouver, British Columbia Canada August 25, 1995 1 Abstract A Shared four-dimensional workspace is a shared animation of
More informationOpen Scene Graph Lecture Note #1
Setup OSG Open Scene Graph Lecture Note #1 448430 Spring 2009 4/6/2009 Kyoung Shin Park Multimedia Engineering Dankook University Download OSG 2.6.0 http://dis.dankook.ac.kr/lectures/msd09/osg-2.6.0.zip
More informationSpatial Data Structures
Spatial Data Structures Hierarchical Bounding Volumes Regular Grids Octrees BSP Trees Constructive Solid Geometry (CSG) [Angel 9.10] Outline Ray tracing review what rays matter? Ray tracing speedup faster
More informationCS 4300 Computer Graphics
CS 4300 Computer Graphics Prof. Harriet Fell Fall 2011 Lecture 8 September 22, 2011 GUIs GUIs in modern operating systems cross-platform GUI frameworks common GUI widgets event-driven programming Model-View-Controller
More informationTopics. Overview of VRML 97 VRML Today After VRML
VRML Ruth Aylett Topics Overview of VRML 97 VRML Today After VRML What is VRML? VR modelling language NOT a programming language! Open standard (1997) for Internet sharing of 3D files and Virtual Worlds
More informationHierarchical Modeling and Scene Graphs
Hierarchical Modeling and Scene Graphs Adapted from material prepared by Ed Angel Spring 2009 Objectives Examine the limitations of linear modeling Symbols and instances Introduce hierarchical models Articulated
More informationOpen Inventor by VSG Fast Start
Open Inventor by VSG Fast Start Mike Heck Technology Advisor February 2010 Welcome to the Open Inventor by VSG Fast Start webinar. This is a short, but very concentrated, introduction to programming with
More informationAcademic Vocabulary CONTENT BUILDER FOR THE PLC MATH GRADE 1
Academic Vocabulary CONTENT BUILDER FOR THE PLC MATH GRADE 1 : academic vocabulary directly taken from the standard STANDARD 1.2(C) use objects, pictures, and expanded and standard forms to represent numbers
More informationVR-programming tools (procedural) More VRML later in this course! (declarative)
Realtime 3D Computer Graphics & Virtual Reality OpenGL Introduction VR-programming Input and display devices are the main hardware interface to users Immersion embeds users through the generation of live-like
More informationHE COMPLETE OPENGL PROGI FOR WINDOW WIND
HE COMPLETE OPENGL PROGI FOR WINDOW WIND WAITC GROUP PRESS. A Division of Sams Publishing Corte Madera CA Table of Contents FOREWORD xxii INTRODUCTION xxiii PART I: INTRODUCTION TO OPENGL 1 CHAPTER 1:
More informationCS450/550. Pipeline Architecture. Adapted From: Angel and Shreiner: Interactive Computer Graphics6E Addison-Wesley 2012
CS450/550 Pipeline Architecture Adapted From: Angel and Shreiner: Interactive Computer Graphics6E Addison-Wesley 2012 0 Objectives Learn the basic components of a graphics system Introduce the OpenGL pipeline
More informationIntroduction. What s New in This Edition
Introduction Welcome to the fourth edition of the OpenGL SuperBible. For more than ten years, we have striven to provide the world s best introduction to not only OpenGL, but 3D graphics programming in
More informationSpatial Data Structures
15-462 Computer Graphics I Lecture 17 Spatial Data Structures Hierarchical Bounding Volumes Regular Grids Octrees BSP Trees Constructive Solid Geometry (CSG) April 1, 2003 [Angel 9.10] Frank Pfenning Carnegie
More informationOpenGL Essentials Training
OpenGL Essentials Training 3-day session Overview Understanding principles of 3D programming Understanding drawing Primitives Understanding transformation matrix and Coloring Understanding Blending and
More informationHierarchical Modeling
Hierarchical Modeling Geometric Primitives Remember that most graphics APIs have only a few geometric primitives Spheres, cubes, triangles, etc These primitives are instanced in order to apply transforms
More informationThree-Dimensional Shapes
Lesson 11.1 Three-Dimensional Shapes Three-dimensional objects come in different shapes. sphere cone cylinder rectangular prism cube Circle the objects that match the shape name. 1. rectangular prism 2.
More informationLibraries for Computer Graphics. Introduction to VRT. Scene-graph libraries. Libraries for computer graphics. Scene-graph libraries (cont.
Libraries for Computer Graphics Introduction to VRT HT2004 Mikael Erlandsson mikael.erlandsson@hci.uu.se Application CG-Library OpenGL Hardware What functionality should be provided? Which data structures
More informationSpatial Data Structures
15-462 Computer Graphics I Lecture 17 Spatial Data Structures Hierarchical Bounding Volumes Regular Grids Octrees BSP Trees Constructive Solid Geometry (CSG) March 28, 2002 [Angel 8.9] Frank Pfenning Carnegie
More informationLesson 08 Geometrical Object Types
Lesson 08 Geometrical Object Types Introduction In this lesson, you will learn about different geometrical object types. This lesson is meant to clarify the differences between these object types and introduce
More informationSurface Rendering. Surface Rendering
Surface Rendering Surface Rendering Introduce Mapping Methods - Texture Mapping - Environmental Mapping - Bump Mapping Go over strategies for - Forward vs backward mapping 2 1 The Limits of Geometric Modeling
More informationCocoa. Last Week... Music 3SI: Introduction to Audio/Multimedia App. Programming. Today... Why Cocoa? Wikipedia - Cocoa
Music 3SI: Introduction to Audio/Multimedia App. Programming IDE (briefly) VST Plug-in Assignment 1 hints Last Week... Week #5-5/5/2006 CCRMA, Department of Music Stanford University 1 2 Today... Cocoa
More informationHow the Other Half Lives
How the Other Half Lives Developing SDR Software for the Macintosh Platform Jeremy C. McDermond, J.D. 1 (NH6Z) 1. As of May 22, 2010 About the Author Licensed in 1986 at age 14 as KB7AKH Began to program
More informationCSE 167: Introduction to Computer Graphics Lecture #11: Visibility Culling
CSE 167: Introduction to Computer Graphics Lecture #11: Visibility Culling Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2017 Announcements Project 3 due Monday Nov 13 th at
More informationModeling Objects. Modeling. Symbol-Instance Table. Instance Transformation. Each appearance of the object in the model is an instance
Modeling Objects Modeling Hierarchical Transformations Hierarchical Models Scene Graphs A prototype has a default size, position, and orientation You need to perform modeling transformations to position
More informationVersion 4.1 Demo. RecurDynTM 2002 RecurDyn User Conference
Version 4.1 Demo RecurDynTM 2002 RecurDyn User Conference What s New? Using Parasolid Kernel Solid Modeler Other Program Interfaces New Data Structure New & Improved Features What s New? Using Parasolid
More informationCS 465 Program 4: Modeller
CS 465 Program 4: Modeller out: 30 October 2004 due: 16 November 2004 1 Introduction In this assignment you will work on a simple 3D modelling system that uses simple primitives and curved surfaces organized
More informationHow the Other Half Lives
How the Other Half Lives Developing SDR Software for the Macintosh Platform Jeremy C. McDermond, J.D. (NH6Z) Cocoa Based on the NextStep tech (you can tell by the NS prefix to classes like NSView) Standard
More informationHierarchical Modeling and Scene Graphs
Hierarchical Modeling and Scene Graphs Adapted from material prepared by Ed Angel Spring 2009 Objectives Examine the limitations of linear modeling Symbols and instances Introduce hierarchical models Articulated
More informationComputer Graphics (CS 543) Lecture 13b Ray Tracing (Part 1) Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI)
Computer Graphics (CS 543) Lecture 13b Ray Tracing (Part 1) Prof Emmanuel Agu Computer Science Dept. Worcester Polytechnic Institute (WPI) Raytracing Global illumination-based rendering method Simulates
More informationCS451Real-time Rendering Pipeline
1 CS451Real-time Rendering Pipeline JYH-MING LIEN DEPARTMENT OF COMPUTER SCIENCE GEORGE MASON UNIVERSITY Based on Tomas Akenine-Möller s lecture note You say that you render a 3D 2 scene, but what does
More informationIntroduction to Virtual Environments - Spring Wernert/Arns. Lecture 4.2 Animation & Interaction
Introduction to Virtual Environments - Spring 2004 - Wernert/Arns Lecture 4.2 Animation & Interaction Outline 1. Animation Techniques & Concepts 2. Input & Event Concepts 3. Implementation Details 0. Resources
More informationInteractive OpenGL Animation
Syracuse University SURFACE Syracuse University Honors Program Capstone Projects Syracuse University Honors Program Capstone Projects Spring 5-1-2011 Interactive OpenGL Animation Lusha Zhang Follow this
More informationGraphics Pipeline & APIs
Graphics Pipeline & APIs CPU Vertex Processing Rasterization Fragment Processing glclear (GL_COLOR_BUFFER_BIT GL_DEPTH_BUFFER_BIT); glpushmatrix (); gltranslatef (-0.15, -0.15, solidz); glmaterialfv(gl_front,
More informationBuilding scalable 3D applications. Ville Miettinen Hybrid Graphics
Building scalable 3D applications Ville Miettinen Hybrid Graphics What s going to happen... (1/2) Mass market: 3D apps will become a huge success on low-end and mid-tier cell phones Retro-gaming New game
More information2: Introducing image synthesis. Some orientation how did we get here? Graphics system architecture Overview of OpenGL / GLU / GLUT
COMP27112 Computer Graphics and Image Processing 2: Introducing image synthesis Toby.Howard@manchester.ac.uk 1 Introduction In these notes we ll cover: Some orientation how did we get here? Graphics system
More informationModeling. Anuj Agrawal Dan Bibyk Joe Pompeani Hans Winterhalter
Modeling Anuj Agrawal Dan Bibyk Joe Pompeani Hans Winterhalter Modeling Joe o Polygon Models o NURBS o Subdivision Surfaces o Locators Hans o Splitting polygons, joining objects, extruding faces o Extrude,
More informationOpen Inventor and MasterSuite
Open Inventor and MasterSuite Patrick Barthelemy Robert Weideman G5G SA (a TGS company), Bordeaux, France TGS Inc. San Diego, USA Abstract Open Inventor is a powerful C++ class library for building 3D
More informationUnit Maps: Grade 2 Math
Place Value and Comparing Numbers 2.3 Place value. The student understands how to represent and compare whole numbers, the relative position and magnitude of whole numbers, and relationships within the
More informationIntroduction to Python and VTK
Introduction to Python and VTK Scientific Visualization, HT 2013 Lecture 2 Johan Nysjö Centre for Image analysis Swedish University of Agricultural Sciences Uppsala University 2 About me PhD student in
More informationFoundations of 3D Graphics Programming
Foundations of 3D Graphics Programming Jim X. Chen Edward J. Wegman Foundations of 3D Graphics Programming Using JOGL and Java3D With 139 Figures Jim X. Chen, PhD Computer Science Department George Mason
More information3D Graphics and OpenGl. First Steps
3D Graphics and OpenGl First Steps Rendering of 3D Graphics Objects defined in (virtual/mathematical) 3D space. Rendering of 3D Graphics Objects defined in (virtual/mathematical) 3D space. We see surfaces
More informationOpenSCAD. About OpenSCAD. Open SCAD is focused on the CAD (Computer Aided Design) aspects of creating 3D
OpenSCAD OpenSCAD is a free software for creating solid 3D CAD objects. It is available for Linux/UNIX, MS Windows and Mac OS X. About OpenSCAD Open SCAD is focused on the CAD (Computer Aided Design) aspects
More informationECE 104 Fundamentals of Computer Graphics Project 1
ECE 104 Fundamentals of Computer Graphics Project 1 Due date: April 19 th, 2002 Project Objectives: As part of this warm-up project you will (1) create your first working graphics program based on OpenGL,
More informationCS324e -Elements of Graphics and Visualization. Animation in Java3D
CS324e -Elements of Graphics and Visualization Animation in Java3D Adding Animation Animation in Java2D achieved by changing the position (or some other attribute) of the graphic primitive over time Animation
More informationHierarchical Modelling
Gregor Miller gregor{at}ece.ubc.ca Hierarchical Modelling Limitations of linear modelling Articulated models Tree and DAG models Traversal Strategies Instance Transformation Start with a prototype object
More informationDualSPHysics Interface Documentation
DualSPHysics Interface Documentation Version 1.1 (05/07/2013) S. M. Longshaw & B. D. Rogers Smoothed Particle Hydrodynamics Expert Group, The University of Manchester 1 P a g e Contents 1.0 Installation
More informationCS 450: COMPUTER GRAPHICS REVIEW: INTRODUCTION TO COMPUTER GRAPHICS SPRING 2016 DR. MICHAEL J. REALE
CS 450: COMPUTER GRAPHICS REVIEW: INTRODUCTION TO COMPUTER GRAPHICS SPRING 2016 DR. MICHAEL J. REALE COMPUTER GRAPHICS DEFINITION AND AREAS Computer graphics creating and manipulating images using computers
More informationCS 563 Advanced Topics in Computer Graphics QSplat. by Matt Maziarz
CS 563 Advanced Topics in Computer Graphics QSplat by Matt Maziarz Outline Previous work in area Background Overview In-depth look File structure Performance Future Point Rendering To save on setup and
More informationRay Tracing III. Wen-Chieh (Steve) Lin National Chiao-Tung University
Ray Tracing III Wen-Chieh (Steve) Lin National Chiao-Tung University Shirley, Fundamentals of Computer Graphics, Chap 10 Doug James CG slides, I-Chen Lin s CG slides Ray-tracing Review For each pixel,
More informationThis lecture. Introduction to VRT. Hardware. Implementation levels. Scene-Graph libraries. Computer Graphic libraries
Introduction to VRT HT2005 This lecture My research (not in your slides) Theory VRT Basic structures Useful functions Simple demo Mikael Erlandsson mikael.erlandsson@it.uu.se Informationsteknologi 2006-09-01
More informationUsing VTK and the OpenGL Graphics Libraries on HPCx
Using VTK and the OpenGL Graphics Libraries on HPCx Jeremy Nowell EPCC The University of Edinburgh Edinburgh EH9 3JZ Scotland, UK April 29, 2005 Abstract Some of the graphics libraries and visualisation
More informationLessons from Scene Graphs: Using Scene Graphs to Teach Hierarchical Modeling
Lessons from Scene Graphs: Using Scene Graphs to Teach Hierarchical Modeling Steve Cunningham California State University Stanislaus Michael J. Bailey San Diego Supercomputer Center University of California
More informationCOMP6700/2140 GUI and Event Driven Programming
COMP6700/2140 GUI and Event Driven Programming Alexei B Khorev and Josh Milthorpe Research School of Computer Science, ANU April 2017 Alexei B Khorev and Josh Milthorpe (RSCS, ANU) COMP6700/2140 GUI and
More informationCSE 167: Introduction to Computer Graphics Lecture #8: Scene Graph. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2015
CSE 167: Introduction to Computer Graphics Lecture #8: Scene Graph Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2015 Announcements Thursday: Midterm exam Friday: Project 3
More informationComputer Graphics. Prof. Feng Liu. Fall /21/2016
Computer Graphics Prof. Feng Liu Fall 2016 http://www.cs.pdx.edu/~fliu/courses/cs447/ 11/21/2016 Last time Polygon Mesh and Modeling 2 Today Modeling Technologies Final Exam: 12:30-2:00, December 7, 2016
More information3D Programming. 3D Programming Concepts. Outline. 3D Concepts. 3D Concepts -- Coordinate Systems. 3D Concepts Displaying 3D Models
3D Programming Concepts Outline 3D Concepts Displaying 3D Models 3D Programming CS 4390 3D Computer 1 2 3D Concepts 3D Model is a 3D simulation of an object. Coordinate Systems 3D Models 3D Shapes 3D Concepts
More informationOpenGL with Qt 5. Qt Developer Days, Berlin Presented by Sean Harmer. Produced by Klarälvdalens Datakonsult AB
Qt Developer Days, Berlin 2012 Presented by Sean Harmer Produced by Klarälvdalens Datakonsult AB Material based on Qt 5.0, created on November 9, 2012 QtQuick 2 and OpenGL The Future Module: 2/18 QtQuick
More informationJava2D/Java3D Graphics
Java2D/Java3D Graphics Sandro Spina Computer Graphics and Simulation Group Computer Science Department University of Malta 1 Abstraction in Software Engineering We shall be looking at how abstraction is
More informationPrinciples of Computer Game Design and Implementation. Lecture 5
Principles of Computer Game Design and Implementation Lecture 5 We already knew Introduction to this module History of video High-level information of a game Designing information for a game Execution
More informationA Generalized Scene Graph
A Generalized Scene Graph Jürgen Döllner Klaus Hinrichs Institut für Informatik, Universität Münster Einsteinstr. 62, 48149 Münster, Germany Email: {dollner,khh@uni-muenster.de Abstract Scene graphs are
More informationCOMP 175 COMPUTER GRAPHICS. Lecture 07: Scene Graph. COMP 175: Computer Graphics March 10, Remco Chang 07 Scene Graph
Lecture 07: Scene Graph COMP 175: Computer Graphics March 10, 2015 1/47 Refresher: OpenGL Matrix Transformation Pipeline Input: list of 3D coordinates (x, y, z) GL_MODELVIEW Model transform View transform
More informationWidgets. Overview. Widget. Widgets Widget toolkits Lightweight vs. heavyweight widgets Swing Widget Demo
Widgets Overview Widgets Widget toolkits Lightweight vs. heavyweight widgets Swing Widget Demo Widget Widget is a generic name for parts of an interface that have their own behavior: buttons, progress
More informationScale Rate by Object Size: Only available when the current Emitter Type is Surface, Curve, or Volume. If you turn on this attribute, the
Basic Emitter Attributes Emitter Name: The name helps you identify the emitter object in the Outliner. If you don t enter a name, the emitter object receives a default name such as emitter1. Solver: (For
More informationTutorial guideline for App Inventor
Tutorial guideline for App Inventor This short guideline will help you to quickly jump into the tutorial sessions of the MIT App Inventor with minimal reading in a short time period. I have extracted some
More informationOverview. Java and OpenSceneGraph. Introduction. OpenSceneGraph. Introduction Scene graph structure
Overview Java and OpenSceneGraph Introduction Scene graph structure Node types Example Vectors, Matrices and Transformations Events Picking Introduction A scene graph system Used for Visual simulations,
More informationUnit Maps: Grade 1 Math
Numbers and Place Value 1.3 Place value. The student represents and compares whole numbers, the relative position and magnitude of whole numbers, and relationships within the numeration system related
More informationRay Casting of Trimmed NURBS Surfaces on the GPU
Ray Casting of Trimmed NURBS Surfaces on the GPU Hans-Friedrich Pabst Jan P. Springer André Schollmeyer Robert Lenhardt Christian Lessig Bernd Fröhlich Bauhaus University Weimar Faculty of Media Virtual
More informationWidget Toolkits CS MVC
Widget Toolkits 1 CS349 -- MVC Widget toolkits Also called widget libraries or GUI toolkits or GUI APIs Software bundled with a window manager, operating system, development language, hardware platform
More informationAs we said Procedural Textures are not images but textures that Blender creates automatically. They are good to use as a foundation to start with.
Textures There are two types of Textures in Blender. Procedural Textures that are by default created by the program and Image Textures that use external images. We will first see how you can apply a Procedural
More informationCGT 581 G Geometric Modeling Surfaces (part I)
CGT 581 G Geometric Modeling Surfaces (part I) Bedrich Benes, Ph.D. Purdue University Department of Computer Graphics Technology Polygonal Representation The common representation is a mesh of triangles
More informationYear 2. Year 2. Lesson Breakdown & Textbook Mapping Spring. Lesson Breakdown & Textbook Mapping
Breakdown & Spring This document is designed to be used in conjunction with the White Rose Schemes of Learning and has been written as a guide to indicate the progression and pace in which the National
More informationTEACHING PLAN FAKULTI TEKNOLOGI MAKLUMAT DAN KOMUNIKASI UNIVERSITI TEKNIKAL MALAYSIA MELAKA
TEACHING PLAN FAKULTI TEKNOLOGI MAKLUMAT DAN KOMUNIKASI UNIVERSITI TEKNIKAL MALAYSIA MELAKA INTERACTIVE COMPUTER GRAPHI BITM STER SI 0/06 BITM INTERACTIVE COMPUTER GRAPHI (,, ) TYPE OF SUBJECT : K.0 LEARNING
More informationCS 352: Computer Graphics. Hierarchical Graphics, Modeling, And Animation
CS 352: Computer Graphics Hierarchical Graphics, Modeling, And Animation Chapter 9-2 Overview Modeling Animation Data structures for interactive graphics CSG-tree BSP-tree Quadtrees and Octrees Visibility
More informationComputer Graphics: Introduction to the Visualisation Toolkit
Computer Graphics: Introduction to the Visualisation Toolkit Visualisation Lecture 2 Taku Komura Institute for Perception, Action & Behaviour Taku Komura Computer Graphics & VTK 1 Last lecture... Visualisation
More informationComputer Graphics: Programming, Problem Solving, and Visual Communication
Computer Graphics: Programming, Problem Solving, and Visual Communication Dr. Steve Cunningham Computer Science Department California State University Stanislaus Turlock, CA 95382 copyright 2002, Steve
More informationComputer Graphics (CS 543) Lecture 1 (Part 1): Introduction to Computer Graphics
Computer Graphics (CS 543) Lecture 1 (Part 1): Introduction to Computer Graphics Prof Emmanuel Agu Computer Science Dept. Worcester Polytechnic Institute (WPI) What is Computer Graphics (CG)? Computer
More informationScene Management. Video Game Technologies 11498: MSc in Computer Science and Engineering 11156: MSc in Game Design and Development
Video Game Technologies 11498: MSc in Computer Science and Engineering 11156: MSc in Game Design and Development Chap. 5 Scene Management Overview Scene Management vs Rendering This chapter is about rendering
More information14 Years of Object-Oriented Visualization. Bill Lorensen General Electric Corporate Research and Development
14 Years of Object-Oriented Visualization Bill Lorensen General Electric Corporate Research and Development lorensen@crd.ge.com Object-Oriented Visualization Outline Beginnings Object-Oriented Visualization
More informationCS193p Spring 2010 Wednesday, March 31, 2010
CS193p Spring 2010 Logistics Lectures Building 260 (History Corner) Room 034 Monday & Wednesday 4:15pm - 5:30pm Office Hours TBD Homework 7 Weekly Assignments Assigned on Wednesdays (often will be multiweek
More informationGraphics Pipeline & APIs
3 2 4 Graphics Pipeline & APIs CPU Vertex Processing Rasterization Processing glclear (GL_COLOR_BUFFER_BIT GL_DEPTH_BUFFER_BIT); glpushmatrix (); gltranslatef (-0.15, -0.15, solidz); glmaterialfv(gl_front,
More informationHow to install and build an application
GEANT4 BEGINNERS COURSE GSSI, L Aquila (Italy) 6-10 July 2015 How to install and build an application tutorial course Outline Supported platforms & compilers Required software Where to download the packages
More informationEvent Dispatch. Interactor Tree Lightweight vs. Heavyweight Positional Dispatch Focus Dispatch. 2.4 Event Dispatch 1
Event Dispatch Interactor Tree Lightweight vs. Heavyweight Positional Dispatch Focus Dispatch 2.4 Event Dispatch 1 Event Architecture A pipeline: - Capture and Queue low-level hardware events - Dispatch
More informationHIERARCHICAL TRANSFORMATIONS A Practical Introduction
HIERARCHICAL TRANSFORMATIONS A Practical Introduction Christopher Peters HPCViz, KTH Royal Institute of Technology, Sweden chpeters@kth.se https://www.kth.se/profile/chpeters/ Transformations Many objects
More informationSculpting 3D Models. Glossary
A Array An array clones copies of an object in a pattern, such as in rows and columns, or in a circle. Each object in an array can be transformed individually. Array Flyout Array flyout is available in
More informationEvent Dispatch. Interactor Tree Lightweight vs. Heavyweight Positional Dispatch Focus Dispatch. Event Architecture. A pipeline: Event Capture
Event Dispatch Interactor Tree Lightweight vs. Heavyweight Positional Dispatch Focus Dispatch 2.4 Event Dispatch 1 Event Architecture A pipeline: - Capture and Queue low-level hardware events - Dispatch
More information