Handbook
Glossary
draw-pixels-gl3 ( FRAME-BUFFER -- )
Vocabulary
ui
.
gadgets
.
frame-buffer
Inputs
FRAME-BUFFER
an
object
Outputs
None
Definition
USING:
accessors
alien.c-types
alien.data
kernel
math
opengl
opengl.gl
sequences
ui.render
;
IN:
ui.gadgets.frame-buffer
::
draw-pixels-gl3
( FRAME-BUFFER -- )
FRAME-BUFFER
dim>>
first2
[
gl-scale
>fixnum
]
bi@
:>
( width height ) FRAME-BUFFER
texture-id>>
[
GL_TEXTURE_2D
over
glBindTexture
GL_TEXTURE_2D
0 0 0 width height
GL_RGBA
GL_UNSIGNED_INT
FRAME-BUFFER
pixels>>
glTexSubImage2D
]
[
1
{
uint
}
[
glGenTextures
]
with-out-parameters
:>
tex-id tex-id FRAME-BUFFER
texture-id<<
GL_TEXTURE_2D
tex-id
glBindTexture
GL_TEXTURE_2D
GL_TEXTURE_MIN_FILTER
GL_NEAREST
glTexParameteri
GL_TEXTURE_2D
GL_TEXTURE_MAG_FILTER
GL_NEAREST
glTexParameteri
GL_TEXTURE_2D
GL_TEXTURE_WRAP_S
GL_CLAMP_TO_EDGE
glTexParameteri
GL_TEXTURE_2D
GL_TEXTURE_WRAP_T
GL_CLAMP_TO_EDGE
glTexParameteri
GL_TEXTURE_2D
0
GL_RGBA
width height 0
GL_RGBA
GL_UNSIGNED_INT
FRAME-BUFFER
pixels>>
glTexImage2D
tex-id
]
if*
drop
{
0 0
}
FRAME-BUFFER
dim>>
FRAME-BUFFER
texture-id>>
f
gl3-draw-texture
GL_TEXTURE_2D
0
glBindTexture
;