Gigapixel - PowerPoint PPT Presentation

1 / 17
About This Presentation
Title:

Gigapixel

Description:

Makes any X Windows application run on the 24 tiled array ... glutInit(&argc, argv); glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB) ... – PowerPoint PPT presentation

Number of Views:145
Avg rating:3.0/5.0
Slides: 18
Provided by: info58
Category:
Tags: argv | gigapixel

less

Transcript and Presenter's Notes

Title: Gigapixel


1
Gigapixel YouAnd OpenGL Too!
  • 28 September 2005
  • CS 5764
  • John Booker

2
Gigapixel Technologies DMX
  • No, not that DMX
  • Distributed Multihead X
  • http//dmx.sourceforge.net/
  • Combines multiple displays across cluster into
    one display
  • Makes any X Windows application run on the 24
    tiled array
  • But its slow, the rendering isnt REALLY
    distributed

3
Technology Chromium
  • http//chromium.sourceforge.net/
  • Distributed Rendering for OpenGL
  • Unfortunately not a lot of vis toolkits for
    OpenGL (PLEASE, correct me if Im wrong)

4
OpenGL Where to start
  • Download GL/GLUT
  • Already setup on Gigapixel, do it for home too
  • Set up Visual Studio Project/Makefile
  • Windows
  • http//csf11.acs.uwosh.edu/cs371/visualstudio/
  • Others
  • http//www.opengl.org/resources/faq/getting_starte
    d.html

5
OpenGL Code Structure
  • int main(int argc, char argv)
  • /SETUP/
  • glutInit(argc, argv)
  • glutInitDisplayMode (GLUT_SINGLE GLUT_RGB)
  • glutInitWindowSize (250, 250)
  • glutInitWindowPosition (100, 100)
  • glutCreateWindow ("hello")
  • init ()
  • /Define Where Your Code is/
  • glutDisplayFunc(display)
  • /Go For It!/
  • glutMainLoop()
  • return 0

6
OpenGL Drawing Graphics
  • void display(void) /You set this up in
    main()/
  • glClear (GL_COLOR_BUFFER_BIT)
  • glColor3f (1.0, 1.0, 1.0)
  • /Draw a Primitive/
  • glBegin(GL_POLYGON)
  • glVertex3f (0.25, 0.25, 0.0)
  • glVertex3f (0.75, 0.25, 0.0)
  • glVertex3f (0.75, 0.75, 0.0)
  • glVertex3f (0.25, 0.75, 0.0)
  • glEnd()

7
Congratulations, you drew a square!
8
OpenGL Utility Toolkit (GLUT)
  • Utility library to
  • Define/control windows
  • Monitor keyboard/mouse input
  • popup menus

9
GLUT Menus
  • glutAddMenuEntry()

10
GLUT Mouse
  • glutMouseFunc(mouseFunk)
  • mouseFunk(int button, int state, int x, int y )
  • Process (x,y) manually to determine where clicks
    happened
  • -OR-
  • Figure out the picking example code here
  • http//www.opengl.org/resources/code/basics/redboo
    k/pickdepth.c

11
OpenGL Fonts
  • Not natively supported by OpenGL, but many
    options
  • http//www.opengl.org/resources/features/fontsurve
    y/

12
GL User Interface - GLUI
  • Can combine graphics with UI
  • http//www.cs.unc.edu/rademach/glui/download

13
Programming at home
  • Think big!

14
Programming at home
  • Not small!

15
Design Think about size!
Is your home screen a portion of the large
display?
Or is it an overview?
Gigapixel is 8 x 3 monitors _at_ 1280x1024 10240x3
072 total
16
Other Design Considerations
  • Notifications in the periphery
  • Periphery of gigapixel is well outside
    the periphery of vision

Be careful about positioning in general!
17
Links
  • OpenGL
  • http//www.opengl.org/
  • http//www.opengl.org/resources/faq/getting_starte
    d.html
  • Toolkits
  • GLUI http//www.cs.unc.edu/rademach/glui/
  • GLUT http//www.opengl.org/resources/libraries/glu
    t.html
  • Fonts http//www.opengl.org/resources/features/fon
    tsurvey/
  • Chromium
  • http//chromium.sourceforge.net/
  • DMX
  • http//dmx.sourceforge.net/
  • Gigapixel
  • http//infovis.cs.vt.edu/gigapixel/ (more stuff
    will be here soon)
Write a Comment
User Comments (0)
About PowerShow.com