function OpenGLGadget(ByVal gadget As Long, ByVal x As Long, ByVal y As Long, ByVal w As Long, ByVal h As Long, ByVal cBits As Long = 32, byval dBits as Long = 24, byval sBits as Long = 0, byval aBits as Long = 0) As HWND
Создает гаджет для рисования средствами OpenGl .
gadget - идентификатор\номер (любое натуральное число больше нуля, может быть 1,2,3,4 и др.)
x,y,w,h - расположение и размеры гаджета
cBits - определяет число битовых плоскостей в каждом буфере цвета
dBits - определяет размер глубины буфера
sBits - определяет размер буфера трафарета
aBits - определяет общее число битовых плоскостей в буфере аккумулятора
Windows , Linux
#Include "window9.bi"
Sub SceneDraw()
glClearColor(0.7,0.7,0.6,1)
glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT)
glTranslatef 50,50,0
glBegin GL_TRIANGLES
glColor3ub 255,0,0
glVertex2i 0, 50
glColor3ub 0,255,0
glVertex2i 100, 50
glColor3ub 0,0,255
glVertex2i 50, 0
glEnd
glLoadIdentity
OpenGLGadgetSwapBuffers(1)
End Sub
var win = OpenWindow("OpenGL Gadget",100,100,230,250)
OpenGLGadget(1,5,5,200,200,,0)
Do
var event = WindowEvent()
If event = eventclose Then Exit Do
SceneDraw()
sleep(1)
Loop
#Include "window9.bi"
function SceneDraw() As Integer
Static rtri as single, rquad as Single
glClear GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT
glLoadIdentity
glTranslatef -1.5, 0.0, -6.0
glRotatef rtri, 0, 1, 0
glBegin GL_TRIANGLES
glColor3f 1.0, 0.0, 0.0
glVertex3f 0.0, 1.0, 0.0
glColor3f 0.0, 1.0, 0.0
glVertex3f -1.0, -1.0, 0.0
glColor3f 0.0, 0.0, 1.0
glVertex3f 1.0, -1.0, 0.0
glEnd
glLoadIdentity
glTranslatef 1.5, 0.0, -6.0
glColor3f 0.5, 0.5, 1.0
glRotatef rquad, 1, 0, 0
glBegin GL_QUADS
glVertex3f -1.0, 1.0, 0.0
glVertex3f 1.0, 1.0, 0.0
glVertex3f 1.0, -1.0, 0.0
glVertex3f -1.0, -1.0, 0.0
glEnd
glFlush
rtri += 1
rquad += 1
OpenGLGadgetSwapBuffers(1)
Return TRUE
End Function
var win = OpenWindow("OpenGL Gadget",100,100,230,250)
OpenGLGadget(1,5,5,200,200,,32)
SetTimer(win , 1, 20, Cast(Any Ptr,@SceneDraw()))
Do
var event = WaitEvent()
If event = eventclose Then Exit Do
Loop
Created with the Personal Edition of HelpNDoc: Single source CHM, PDF, DOC and HTML Help creation