
====================SCRIP FORM====================
Sub INISIALISASI()
'========== Inisialisasi ==========
EnableOpenGL Me.hDC
hrc = wglCreateContext(hDC)
wglMakeCurrent hDC, hrc
'Inisilisasi Koordinat D2
xmin = -30: ymin = -30
xmax = 30: ymax = 30
gluOrtho2D xmin, xmax, ymin, ymax
glClearColor 0, 0, 0, 0
glClear GL_COLOR_BUFFER_BIT Or GL_DEPTH_BUFFER_BIT
glClear clrColorBufferBit
glMatrixMode GL_PROJECTION
glLoadIdentity
'=============================================
' ========Menggambar boneka tengah ========
'========Menggambar Garis=============
'=============================================
glColor3f 0, 0, 0
glBegin bmLines
'Titik ke 1
glVertex2f -30, 0
'Titik k2 2
glVertex2f 30, 0
glEnd
glColor3f 0, 0, 0
glBegin bmLines
'Titik ke 1
glVertex2f 0, 30
'Titik ke 2
glVertex2f 0, -30
glEnd
'=====Menggambar badan ==========
glColor3f 0.5, 0, 0.5
glBegin bmPolygon
glVertex2f -2, 0
glVertex2f 2, 0
glVertex2f 4, -8
glVertex2f -4, -8
glEnd
'=====Menggambar kaki 1==========
glColor3f 1, 0.2, 0.4
glBegin bmQuads
glVertex2f 1, -8
glVertex2f 3, -8
glVertex2f 3, -12
glVertex2f 1, -12
glEnd
'=====Menggambar kaki2 ==========
glColor3f 1, 0.2, 0.4
glBegin bmQuads
glVertex2f -3, -8
glVertex2f -1, -8
glVertex2f -1, -12
glVertex2f -3, -12
glEnd
'=====Menggambar tangan 1 ==========
glColor3f 1, 0.2, 0.4
glBegin bmQuads
glVertex2f 2, -1
glVertex2f 6, 2
glVertex2f 6, -3
glVertex2f 3, -4
glEnd
'=====Menggambar tangan 2 ==========
glColor3f 1, 0.2, 0.4
glBegin bmQuads
glVertex2f -2, -1
glVertex2f -6, 2
glVertex2f -6, -3
glVertex2f -3, -4
glEnd
End Sub
Private Sub Command1_Click()
Call INISIALISASI
End Sub
Private Sub Command2_Click()
Dim x As Single, y As GLfloat
Dim rad2Derajad As Single, R As Single
rad2Derajad = 3.14 / 180
R = 4
glBegin bmPolygon
glColor3f 1, 0, 1
For teta = 1 To 360
x = R * Cos(teta * rad2Derajad)
y = R * Sin(teta * rad2Derajad)
glVertex2f x, y + 4
Next
glEnd
'========Menggambar Telinga =======
glBegin bmPolygon
glColor3f 1, 0.2, 0.4
For teta = 1 To 360
x = 2 * Cos(teta * rad2Derajad)
y = 2 * Sin(teta * rad2Derajad)
glVertex2f x + 4, y + 8
Next
glEnd
'========Menggambar Telinga2 =======
glBegin bmPolygon
glColor3f 1, 0.2, 0.4
For teta = 1 To 360
x = 2 * Cos(teta * rad2Derajad)
y = 2 * Sin(teta * rad2Derajad)
glVertex2f x + -4, y + 8
Next
glEnd
'========Menggambar mata =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 1 * Cos(teta * rad2Derajad)
y = 1 * Sin(teta * rad2Derajad)
glVertex2f x + -2, y + 4
Next
glEnd
'========Menggambar mata 2 =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 1 * Cos(teta * rad2Derajad)
y = 1 * Sin(teta * rad2Derajad)
glVertex2f x + 2, y + 4
Next
glEnd
'======Menggambar segitiga mulut =========
glColor3f 0.5, 0, 0.5
glBegin bmTriangles
'Titik ke 1
glVertex2f -1, 2
'Titik ke 2
glVertex2f 0, 3
'Titik ke 3
glVertex2f 1, 2
glEnd
'========Menggambar bola TANGAN =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 2 * Cos(teta * rad2Derajad)
y = 3 * Sin(teta * rad2Derajad)
glVertex2f x + 6, y + -1
Next
glEnd
'========Menggambar bola TANGAN =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 2 * Cos(teta * rad2Derajad)
y = 3 * Sin(teta * rad2Derajad)
glVertex2f x + -6, y + -1
Next
glEnd
'=======================================
'=====BONEKA KOTAK BARU KANAN =========
'=====Menggambar Garis Kotak kepala=======
'====================================
glColor3f 1, 0.2, 0.4
glBegin bmQuads
'Titik ke 1
glVertex2f 12, 0
'Titik ke 2
glVertex2f 12, 8
'Titik ke 3
glVertex2f 20, 8
'Titik ke 4
glVertex2f 20, 0
glEnd
'=====Menggambar Garis Kotak telinga kiri=======
glColor3f 1, 1, 1
glBegin bmQuads
'Titik ke 1
glVertex2f 11, 0
'Titik ke 2
glVertex2f 11, 8
'Titik ke 3
glVertex2f 12, 8
'Titik ke 4
glVertex2f 12, 0
glEnd
'=====Menggambar Garis Kotak telinga kanan=======
glColor3f 1, 1, 1
glBegin bmQuads
'Titik ke 1
glVertex2f 20, 0
'Titik ke 2
glVertex2f 20, 8
'Titik ke 3
glVertex2f 21, 8
'Titik ke 4
glVertex2f 21, 0
glEnd
'=====Menggambar Garis Kotak badan=======
glColor3f 1, 1, 0
glBegin bmQuads
'Titik ke 1
glVertex2f 13, -6
'Titik ke 2
glVertex2f 13, 0
'Titik ke 3
glVertex2f 19, 0
'Titik ke 4
glVertex2f 19, -6
glEnd
'=====Menggambar Garis Kotak kaki=======
glColor3f 1, 1, 0
glBegin bmQuads
'Titik ke 1
glVertex2f 14, -10
'Titik ke 2
glVertex2f 14, -6
'Titik ke 3
glVertex2f 15, -6
'Titik ke 4
glVertex2f 15, -10
glEnd
'=====Menggambar Garis Kotak kaki=======
glColor3f 1, 1, 0
glBegin bmQuads
'Titik ke 1
glVertex2f 17, -10
'Titik ke 2
glVertex2f 17, -6
'Titik ke 3
glVertex2f 18, -6
'Titik ke 4
glVertex2f 18, -10
glEnd
'======Menggambar segitiga kepala topi=========
glColor3f 0, 0.2, 1
glBegin bmTriangles
'Titik ke 1
glVertex2f 12, 8
'Titik ke 2
glVertex2f 16, 13
'Titik ke 3
glVertex2f 20, 8
glEnd
'========Menggambar kotak mata kanan =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 1 * Cos(teta * rad2Derajad)
y = 1 * Sin(teta * rad2Derajad)
glVertex2f x + 14, y + 6
Next
glEnd
'========Menggambar kotak mata kiri =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 1 * Cos(teta * rad2Derajad)
y = 1 * Sin(teta * rad2Derajad)
glVertex2f x + 18, y + 6
Next
glEnd
'======Menggambar kotak segitiga mulut =========
glColor3f 0, 1, 1
glBegin bmTriangles
'Titik ke 1
glVertex2f 15, 3
'Titik ke 2
glVertex2f 16, 4
'Titik ke 3
glVertex2f 17, 3
glEnd
'=====Menggambar kotak tangan 1==========
glColor3f 1, 1, 0
glBegin bmQuads
glVertex2f 20, -5
glVertex2f 20, 0
glVertex2f 21, 0
glVertex2f 21, -5
glEnd
'=====Menggambar kotak tangan 2==========
glColor3f 1, 1, 0
glBegin bmQuads
glVertex2f 11, -5
glVertex2f 11, 0
glVertex2f 12, 0
glVertex2f 12, -5
glEnd
'========Menggambar kotak mata kanan =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 1 * Cos(teta * rad2Derajad)
y = 1 * Sin(teta * rad2Derajad)
glVertex2f x + 16, y + 13
Next
glEnd
'============================================
'====BONEKA KOTAK BARU KIRI =============
'=====Menggambar Garis Kotak kepala=======
'=========================================
glColor3f 1, 0.2, 0.4
glBegin bmQuads
'Titik ke 1
glVertex2f -12, 0
'Titik ke 2
glVertex2f -12, 8
'Titik ke 3
glVertex2f -20, 8
'Titik ke 4
glVertex2f -20, 0
glEnd
'=====Menggambar Garis Kotak telinga kiri=======
glColor3f 1, 1, 1
glBegin bmQuads
'Titik ke 1
glVertex2f -11, 0
'Titik ke 2
glVertex2f -11, 8
'Titik ke 3
glVertex2f -12, 8
'Titik ke 4
glVertex2f -12, 0
glEnd
'=====Menggambar Garis Kotak telinga kanan=======
glColor3f 1, 1, 1
glBegin bmQuads
'Titik ke 1
glVertex2f -20, 0
'Titik ke 2
glVertex2f -20, 8
'Titik ke 3
glVertex2f -21, 8
'Titik ke 4
glVertex2f -21, 0
glEnd
'=====Menggambar Garis Kotak badan=======
glColor3f 1, 1, 0
glBegin bmQuads
'Titik ke 1
glVertex2f -13, -6
'Titik ke 2
glVertex2f -13, 0
'Titik ke 3
glVertex2f -19, 0
'Titik ke 4
glVertex2f -19, -6
glEnd
'=====Menggambar Garis Kotak kaki=======
glColor3f 1, 1, 0
glBegin bmQuads
'Titik ke 1
glVertex2f -14, -10
'Titik ke 2
glVertex2f -14, -6
'Titik ke 3
glVertex2f -15, -6
'Titik ke 4
glVertex2f -15, -10
glEnd
'=====Menggambar Garis Kotak kaki=======
glColor3f 1, 1, 0
glBegin bmQuads
'Titik ke 1
glVertex2f -17, -10
'Titik ke 2
glVertex2f -17, -6
'Titik ke 3
glVertex2f -18, -6
'Titik ke 4
glVertex2f -18, -10
glEnd
'======Menggambar segitiga kepala topi=========
glColor3f 0, 0.2, 1
glBegin bmTriangles
'Titik ke 1
glVertex2f -12, 8
'Titik ke 2
glVertex2f -16, 13
'Titik ke 3
glVertex2f -20, 8
glEnd
'========Menggambar kotak mata kanan =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 1 * Cos(teta * rad2Derajad)
y = 1 * Sin(teta * rad2Derajad)
glVertex2f x + -14, y + 6
Next
glEnd
'========Menggambar kotak mata kiri =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 1 * Cos(teta * rad2Derajad)
y = 1 * Sin(teta * rad2Derajad)
glVertex2f x + -18, y + 6
Next
glEnd
'======Menggambar kotak segitiga mulut =========
glColor3f 0, 1, 1
glBegin bmTriangles
'Titik ke 1
glVertex2f -15, 3
'Titik ke 2
glVertex2f -16, 4
'Titik ke 3
glVertex2f -17, 3
glEnd
'=====Menggambar kotak tangan 1==========
glColor3f 1, 1, 0
glBegin bmQuads
glVertex2f -20, -5
glVertex2f -20, 0
glVertex2f -21, 0
glVertex2f -21, -5
glEnd
'=====Menggambar kotak tangan 2==========
glColor3f 1, 1, 0
glBegin bmQuads
glVertex2f -11, -5
glVertex2f -11, 0
glVertex2f -12, 0
glVertex2f -12, -5
glEnd
'========Menggambar kotak mata kanan =======
glBegin bmPolygon
glColor3f 1, 1, 1
For teta = 1 To 360
x = 1 * Cos(teta * rad2Derajad)
y = 1 * Sin(teta * rad2Derajad)
glVertex2f x + -16, y + 13
Next
glEnd
glFlush
SwapBuffers Me.hDC
End Sub
==========================SCRIP MODUL====================
Sub EnableOpenGL(ghDC As Long)
Dim pfd As PIXELFORMATDESCRIPTOR
ZeroMemory pfd, Len(pfd)
pfd.nSize = Len(pfd)
pfd.nVersion = 1
pfd.dwFlags = PFD_DRAW_TO_WINDOW Or PFD_SUPPORT_OPENGL Or PFD_DOUBLEBUFFER
pfd.iPixelType = PFD_TYPE_RGBA
pfd.cColorBits = 24
pfd.cDepthBits = 32
pfd.iLayerType = PFD_MAIN_PLANE
PixFormat = ChoosePixelFormat(ghDC, pfd)
If PixFormat = 0 Then GoTo ee
SetPixelFormat ghDC, PixFormat, pfd
hrc = wglCreateContext(ghDC)
wglMakeCurrent ghDC, hrc
Exit Sub
ee: MsgBox "Nelze nastavit parametry pro zobrazení grafiky!"
End
End Sub
Sub DisableOpenGL()
wglMakeCurrent 0, 0
wglDeleteContext hrc
End Sub
0 komentar on "OpenGL BOneka 2D aLaaaa Yuliana.......:)"
Posting Komentar