'Techne > Pape: Programming Graphics 1' 카테고리의 다른 글
[Dave Pape] Graphics hardware & software; Python (0) | 2007.10.29 |
---|---|
[Dave Pape] Programming Graphics 1 (0) | 2007.10.29 |
[Dave Pape] Graphics hardware & software; Python (0) | 2007.10.29 |
---|---|
[Dave Pape] Programming Graphics 1 (0) | 2007.10.29 |
Python
Features:
- Dynamic data typing
- Automatic memory management
- Advanced data types (strings, lists, dictionaries)
- A large standard library
- Extensible & embeddable
Building Blocks
- Comments
- Numbers
- Strings
- Lists
- Variables
- Operators
- Statements
- Assignment
- If - elif - else
- For loops
- While loops
- Functions
- Variable scope
- Modules
- Advanced data types
%
operator (modulo)Modules are pre-written packages of code that can be used in a Python program.
They are similar to libraries in other languages.
A class is a data type, for objects that can contain both variables and functions.A class can implement certain operations that are invoked by special syntax (such as arithmetic operations or subscripting and slicing) by defining methods with special names.
Graphics Pipeline
- Program & data reside in PC memory
- CPU runs program, calling graphics commands
- Commands & data transferred to graphics card
- Images rendered into graphics card memory
- Video display generated from graphics card memory
Interface between CPU & graphics card:
- PCI
- AGP (1x, 2x, 4x, 8x)
- PCI Express
Interface between graphics card & display:
- VGA
- DVI
- Composite, S-Video
A scene graph is a tree used to represent a graphical scene.A scene-graph is a data structure that arranges the logical and often (but not necessarily) spatial representation of a graphical scene.
Graphics APIs
- OpenGL
- Direct3D
- Performer
- OpenInventor
- OpenSceneGraph
- Java3D
- Virtools
- OpenDX
- AVS
[Dave Pape] GLUT; geometry; coordinate systems (0) | 2007.11.01 |
---|---|
[Dave Pape] Programming Graphics 1 (0) | 2007.10.29 |
When: Tuesday/Thursday 2:00 - 3:50 pm
Where: CFA 242
Instructor: Dave Pape
e-mail: depape at buffalo.edu
Office: CFA 250
Office hours: Wed 12-1pm; Tues/Thurs 1-2pm
Website: http://resumbrae.com/ub/dms423/
This production course introduces students to the concepts and practice of programming 2-D and 3-D computer graphics using OpenGL. The major focus is on developing the skills needed to create interactive, real-time CG experiences. Students write their own code to create customized computer tools and visuals and learn the fundamentals of graphics.
Upon completing this course, a student should have an understanding of basic computer graphics technical concepts - e.g., be able to describe the different types of geometric transformations, define what a normal vector is and what it's used for, understand how a texture image is applied to a shape, etc. The student should also be comfortable with using programming and mathematics (trigonometry, interpolation, vectors) to build and control a graphical scene.
There is no single required text. Rather, students should choose one of the following texts, based on their background and programming experience:
Useful websites:
The major topics that we will cover are:
|
|
Aug 28/30 | Introduction |
Sep 4/6 | Images, frame buffer |
Sep 11 | Geometry, coordinate systems |
Sep 20/22 | Transformations |
Sep 25/27 | More transformations, 3D coordinates |
Oct 2/4 | Depth cues |
Oct 9/11 | Math |
Oct 16/18 | Interaction |
Oct 23/25 | Texturing |
Oct 30/Nov 1 | Lighting |
Nov 6/8 | Motion math |
Nov 13/15 | Sound |
Nov 20 | Alpha |
Nov 27/29 | PD |
Dec 4/6 | Special topics TBD |
[Dave Pape] GLUT; geometry; coordinate systems (0) | 2007.11.01 |
---|---|
[Dave Pape] Graphics hardware & software; Python (0) | 2007.10.29 |