ringabout / staticglfw

A Statically linked GLFW 3.x interface for Nim (NO DLL required)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Static GLFW for nim

This library is always statically linked so only the functionality you use gets included in the binary. There is also no need for glfw.dll or libglfw3.dylib to be included.

Example

import staticglfw
import opengl

# Init GLFW
if init() == 0:
  raise newException(Exception, "Failed to Initialize GLFW")

# Open window.
var window = createWindow(800, 600, "GLFW3 WINDOW", nil, nil)
# Connect the GL context.
window.makeContextCurrent()
# This must be called to make any GL function work
loadExtensions()

# Run while window is open.
while windowShouldClose(window) == 0:

  # Draw red color screen.
  glClearColor(1, 0, 0, 1)
  glClear(GL_COLOR_BUFFER_BIT)

  # Swap buffers (this will display the red color)
  window.swapBuffers()

  # Check for events.
  pollEvents()
  # If you get ESC key quit.
  if window.getKey(KEY_ESCAPE) == 1:
    window.setWindowShouldClose(1)

# Destroy the window.
window.destroyWindow()
# Exit GLFW.
terminate()

GLFW version:

Version: 3.3.2

Currently tracking this commit: https://github.com/glfw/glfw/commit/bf1c62b2612dba79365e836830fe2a6105adbe78

About

A Statically linked GLFW 3.x interface for Nim (NO DLL required)

License:MIT License


Languages

Language:C 84.7%Language:Objective-C 12.9%Language:Nim 1.6%Language:CMake 0.7%