Sub Process_Globals
Dim timer1 As Timer
End Sub
Sub Globals
Dim appNext As AppNextLib
Dim btLeftAd As Button
Dim btRightAd As Button
Dim btLevelFailedAd As Button
Dim btBackToLobbyAd As Button
Dim btHide As Button
Dim exitApp As Boolean : exitApp=False
Dim PanelOpenGl As Panel
Dim glsv As GLSurfaceView2
Dim framecount As Float
Dim g_program As Int
Dim vertices(12) As Float
End Sub
Sub Activity_Create(FirstTime As Boolean)
'Do not forget to load the layout file created with the visual designer. For example:
Activity.LoadLayout("1")
appNext.Initialize("appNextAd")
appNext.showBubble("033b239c-01e2-4918-ac9a-394db4df2a44")
init_demo_gl
End Sub
Sub Activity_Resume
resume_demo_gl
End Sub
Sub Activity_Pause (UserClosed As Boolean)
pause_demo_gl
End Sub
Sub activity_KeyPress (KeyCode As Int) As Boolean 'Return True to consume the event
If KeyCode=KeyCodes.KEYCODE_BACK Then
CallSubDelayed(Me, "HandleBackKey")
Return True
End If
Return False
End Sub
Sub handleBackKey
appNext.showBubble("fcd77cdf-c102-4873-b2e4-de0e44cc0a3e")
exitApp = True
End Sub
Sub appNextAd_onLoadAd
Log("Ad Loaded")
End Sub
Sub appNextAd_noAds
Log("No ads")
If exitApp Then
Activity.Finish
End If
End Sub
Sub appNextAd_popupClicked
Log("Popup clicked")
End Sub
Sub appNextAd_popupClosed
Log("Popup closed")
If exitApp Then
Activity.Finish
End If
End Sub
Sub appNextAd_popupOpened
Log("Popup opened")
End Sub
Sub btLeftAd_Click
appNext.addMoreGamesLeft("762bb0d2-f92e-427d-93a8-0c47fb0c03ab")
End Sub
Sub btRightAd_Click
appNext.addMoreGamesRight("762bb0d2-f92e-427d-93a8-0c47fb0c03ab")
End Sub
Sub btLevelFailedAd_Click
appNext.showBubble("16f016cd-3bef-4d71-a83c-09f0066adcfc")
End Sub
Sub btBackToLobbyAd_Click
appNext.showBubble("5cb2f047-ecd1-4327-acc3-f6d1481ec1cc")
End Sub
Sub btHide_Click
appNext.hideMoreGames
End Sub
'---------------------------
'--- OpenGl2 Lib Sample ---
'---------------------------
Sub init_demo_gl
glsv.InitializeGL2("glsv")
glsv.InitializeConfig(8, 8, 8, 8, 16, 0)
glsv.InitializeFormat(1)
glsv.InitializeRender(glsv.RENDERMODE_WHEN_DIRTY)
PanelOpenGl.AddView(glsv,0,0,PanelOpenGl.Width,PanelOpenGl.Height)
End Sub
Sub resume_demo_gl
glsv.Resume
timer1.Initialize("Timer1", 100)
timer1.Enabled = True
framecount = 0
End Sub
Sub pause_demo_gl
glsv.Pause
timer1.Enabled = False
End Sub
Sub timer1_tick
glsv.RequestRender
End Sub
Sub glsv_SurfaceCreated(gl As GL2)
Dim shaderVert, shaderFrag As Int = 0
Dim shaderVertTexte, shaderFragTexte As String
gl.glClearColor(0.5,1,1,1)
vertices(0) = -1.0f : vertices(1) = 1.0f : vertices(2) = 0.0f
vertices(3) = -1.0f : vertices(4) = -1.0f : vertices(5) = 0.0f
vertices(6) = 1.0f : vertices(7) = -1.0f : vertices(8) = 0.0f
vertices(9) = 1.0f : vertices(10) = 1.0f : vertices(11) = 0.0f
g_program = gl.glCreateProgram
shaderVertTexte = File.ReadString(File.DirAssets, "bitmap.vert")
shaderVert = gl.glCreateShader(gl.GL_VERTEX_SHADER)
gl.glShaderSource(shaderVert, shaderVertTexte)
gl.glCompileShader(shaderVert)
gl.glAttachShader(g_program, shaderVert)
gl.glDeleteShader(shaderVert)
shaderFragTexte = File.ReadString(File.DirAssets, "plasma.fragment")
shaderFrag = gl.glCreateShader(gl.GL_FRAGMENT_SHADER)
gl.glShaderSource(shaderFrag, shaderFragTexte)
gl.glCompileShader(shaderFrag)
gl.glAttachShader(g_program, shaderFrag)
gl.glDeleteShader(shaderFrag)
gl.glLinkProgram(g_program)
End Sub
Sub glsv_SurfaceChanged(gl As GL2, width As Int, height As Int)
gl.glViewport(0, 0, width, height)
End Sub
Sub glsv_Draw(gl As GL2)
Dim mPositionHandle, uti, uk As Int
framecount=framecount+1
gl.glClear(gl.GL_COLOR_BUFFER_BIT)
gl.glUseProgram(g_program)
mPositionHandle = gl.glGetAttribLocation(g_program, "vPosition")
gl.glEnableVertexAttribArray(mPositionHandle)
gl.glVertexAttribPointerF(mPositionHandle, 3 ,False,12, vertices)
uti = gl.glGetUniformLocation(g_program, "u_time")
uk = gl.glGetUniformLocation(g_program, "u_k")
gl.glUniform1f(uti,framecount/5)
gl.glUniform2f(uk,8,8)
gl.glDrawElements(gl.GL_TRIANGLES,6,Array As Short( 0, 1, 2, 0, 2, 3))
gl.glUseProgram(0)
End Sub