Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
48
Task/OpenGL/Kotlin/opengl.kotlin
Normal file
48
Task/OpenGL/Kotlin/opengl.kotlin
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
// Kotlin Native version 0.3
|
||||
|
||||
import kotlinx.cinterop.*
|
||||
import opengl.*
|
||||
|
||||
fun paint() {
|
||||
glClearColor(0.3f, 0.3f, 0.3f, 0.0f)
|
||||
glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT)
|
||||
|
||||
glShadeModel(GL_SMOOTH)
|
||||
|
||||
glLoadIdentity()
|
||||
glTranslatef(-15.0f, -15.0f, 0.0f)
|
||||
|
||||
glBegin(GL_TRIANGLES)
|
||||
glColor3f(1.0f, 0.0f, 0.0f)
|
||||
glVertex2f(0.0f, 0.0f)
|
||||
glColor3f(0.0f, 1.0f, 0.0f)
|
||||
glVertex2f(30.0f, 0.0f)
|
||||
glColor3f(0.0f, 0.0f, 1.0f)
|
||||
glVertex2f(0.0f, 30.0f)
|
||||
glEnd()
|
||||
|
||||
glFlush()
|
||||
}
|
||||
|
||||
fun reshape(width: Int, height: Int) {
|
||||
glViewport(0, 0, width, height)
|
||||
glMatrixMode(GL_PROJECTION)
|
||||
glLoadIdentity()
|
||||
glOrtho(-30.0, 30.0, -30.0, 30.0, -30.0, 30.0)
|
||||
glMatrixMode(GL_MODELVIEW)
|
||||
}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
memScoped {
|
||||
val argc = alloc<IntVar>().apply { value = 0 }
|
||||
glutInit(argc.ptr, null)
|
||||
}
|
||||
|
||||
glutInitWindowSize(640, 480)
|
||||
glutCreateWindow("Triangle")
|
||||
|
||||
glutDisplayFunc(staticCFunction(::paint))
|
||||
glutReshapeFunc(staticCFunction(::reshape))
|
||||
|
||||
glutMainLoop()
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue