1 USING: accessors kernel literals math opengl.demo-support
2 opengl.gl opengl.glu ui ui.gadgets ui.render ;
5 TUPLE: nehe3-gadget < gadget ;
10 : <nehe3-gadget> ( -- gadget )
13 M: nehe3-gadget draw-gadget* ( gadget -- )
15 GL_PROJECTION glMatrixMode
17 45.0 width height / >float 0.1 100.0 gluPerspective
18 GL_MODELVIEW glMatrixMode
20 GL_SMOOTH glShadeModel
21 0.0 0.0 0.0 0.0 glClearColor
23 GL_DEPTH_TEST glEnable
25 GL_PERSPECTIVE_CORRECTION_HINT GL_NICEST glHint
26 GL_COLOR_BUFFER_BIT GL_DEPTH_BUFFER_BIT bitor glClear
28 -1.5 0.0 -6.0 glTranslatef
31 0.0 1.0 0.0 glVertex3f
33 -1.0 -1.0 0.0 glVertex3f
35 1.0 -1.0 0.0 glVertex3f
37 3.0 0.0 0.0 glTranslatef
40 -1.0 1.0 0.0 glVertex3f
41 1.0 1.0 0.0 glVertex3f
42 1.0 -1.0 0.0 glVertex3f
43 -1.0 -1.0 0.0 glVertex3f
46 MAIN-WINDOW: run3 { { title "NeHe Tutorial 3" } { pref-dim { $ width $ height } } }
47 <nehe3-gadget> >>gadgets ;