frame-buffer


Vocabulary
ui.gadgets.frame-buffer

Definition


Methods

M:: frame-buffer draw-gadget* ( FRAME-BUFFER -- )
gl3-mode? get-global [
FRAME-BUFFER draw-pixels
FRAME-BUFFER update-frame-buffer
glFlush FRAME-BUFFER read-pixels
] [
FRAME-BUFFER dim>> { 0 1 } v* first2 glRasterPos2i
FRAME-BUFFER draw-pixels
FRAME-BUFFER update-frame-buffer
glFlush FRAME-BUFFER read-pixels
] if ;



M:: frame-buffer layout* ( FRAME-BUFFER -- )
FRAME-BUFFER last-dim>> [
FRAME-BUFFER dim>> = [
FRAME-BUFFER pixels>> :> OLD-PIXELS FRAME-BUFFER
last-dim>> first gl-scale >fixnum :> OLD-WIDTH
FRAME-BUFFER init-frame-buffer-pixels FRAME-BUFFER
[ dim>> ] [ last-dim<< ] bi
FRAME-BUFFER pixels>> :> NEW-PIXELS FRAME-BUFFER
last-dim>> first gl-scale >fixnum :> NEW-WIDTH
OLD-PIXELS OLD-WIDTH NEW-PIXELS NEW-WIDTH
copy-pixels FRAME-BUFFER texture-id>>
[ 1 swap uint <ref> glDeleteTextures ] when*
f FRAME-BUFFER texture-id<<
] unless
] [
FRAME-BUFFER init-frame-buffer-pixels FRAME-BUFFER
[ dim>> ] [ last-dim<< ] bi
] if* ;