Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
self._window,
(display_width - window_width) // 2,
(display_height - window_height) // 2,
)
glfw.make_context_current(self._window)
glfw.set_window_size_limits(
self._window, width, height, glfw.DONT_CARE, glfw.DONT_CARE
)
self._hidpi_scale = (
glfw.get_framebuffer_size(self._window)[0]
/ glfw.get_window_size(self._window)[0]
)
self._update_viewport()
glfw.set_key_callback(self._window, self._key_callback)
glfw.set_mouse_button_callback(self._window, self._mouse_button_callback)
glfw.set_window_icon(self._window, 1, [get_icon_image()])
glfw.set_input_mode(self._window, glfw.CURSOR, glfw.CURSOR_HIDDEN)
# initialize renderer
self._renderer = Renderer(width, height)
# initialize audio player
self._audio_player = AudioPlayer()
# export module functions
pyxel.btn = self.btn
pyxel.btnp = self.btnp
pyxel.btnr = self.btnr
pyxel.mouse = self.mouse
def main():
if not opengl_init():
return
# Enable key events
glfw.set_input_mode(window,glfw.STICKY_KEYS,GL_TRUE)
# Enable key event callback
glfw.set_key_callback(window,key_event)
# Set opengl clear color to something other than red (color used by the fragment shader)
glClearColor(0,0,0.4,0)
vertex_array_id = glGenVertexArrays(1)
glBindVertexArray( vertex_array_id )
program_id = common.LoadShaders( ".\\shaders\\Tutorial4\\TransformVertexShader.vertexshader",
".\\shaders\\Tutorial4\\ColorFragmentShader.fragmentshader" )
# Get a handle for our "MVP" uniform
matrix_id= glGetUniformLocation(program_id, "MVP");
# Projection matrix : 45 Field of View, 4:3 ratio, display range : 0.1 unit <-> 100 units
projection = mat4.perspective(45.0, 4.0 / 3.0, 0.1, 100.0)
self.renderer = renderer
self.title = title
self._is_initialized = False # keep track of whether self.init_gl() has been called
if not glfw.init():
raise Exception("GLFW Initialization error")
# Use modern OpenGL version 4.5 core
glfw.window_hint(glfw.CONTEXT_VERSION_MAJOR, 4)
glfw.window_hint(glfw.CONTEXT_VERSION_MINOR, 5)
glfw.window_hint(glfw.OPENGL_PROFILE, glfw.OPENGL_CORE_PROFILE)
self._configure_context()
self.window = glfw.create_window(self.renderer.window_size[0], self.renderer.window_size[1], self.title, None, None)
if self.window is None:
glfw.terminate()
raise Exception("GLFW window creation error")
glfw.set_key_callback(self.window, self.key_callback)
glfw.make_context_current(self.window)
glfw.set_input_mode(self.window, glfw.CURSOR, glfw.CURSOR_DISABLED)
# Get the actual buffer size of the window
# This is important for some displays like Apple's Retina as reported window sizes are virtual
self.buffer_width, self.buffer_height = glfw.get_framebuffer_size(self.window)
print("Frame buffer size:", self.buffer_width, self.buffer_height)
print("Actual window size:", glfw.get_window_size(self.window))
glfw.make_context_current(self.window)
# The number of screen updates to wait from the time glfwSwapBuffers
# was called before swapping the buffers and returning
if self.vsync:
glfw.swap_interval(1)
glfw.set_key_callback(self.window, self.key_event_callback)
glfw.set_cursor_pos_callback(self.window, self.mouse_event_callback)
glfw.set_window_size_callback(self.window, self.window_resize_callback)
# Create mederngl context from existing context
self.ctx = moderngl.create_context(require=self.gl_version.code)
context.WINDOW = self
self.fbo = self.ctx.screen
self.set_default_viewport()
self.window = glfw.create_window(self.width, self.height, self.title, monitor, None)
if not self.window:
glfw.terminate()
raise ValueError("Failed to create window")
if not self.cursor:
glfw.set_input_mode(self.window, glfw.CURSOR, glfw.CURSOR_DISABLED)
self.buffer_width, self.buffer_height = glfw.get_framebuffer_size(self.window)
glfw.make_context_current(self.window)
if self.vsync:
glfw.swap_interval(1)
glfw.set_key_callback(self.window, self.key_event_callback)
glfw.set_cursor_pos_callback(self.window, self.mouse_event_callback)
glfw.set_mouse_button_callback(self.window, self.mouse_button_callback)
glfw.set_window_size_callback(self.window, self.window_resize_callback)
self.ctx = moderngl.create_context(require=self.gl_version_code)
self.print_context_info()
self.set_default_viewport()
if not self.window:
glfw.terminate()
exit
glfw.make_context_current(self.window)
self.panning = False
self.last_x_down = 0
self.last_y_down = 0
self.last_time_moved = 0
self.last_x_velocity = 0
self.last_y_velocity = 0
glfw.set_mouse_button_callback(self.window, self.mouse_button_callback)
glfw.set_cursor_pos_callback(self.window, self.cursor_pos_callback)
glfw.set_key_callback(self.window, self.key_callback)
glfw.set_scroll_callback(self.window, self.scroll_callback)
glfw.set_window_size_callback(self.window,
lambda win, w, h: self.m.resize(w, h))
self.m.resize(self.width, self.height)
self.running = False
glfw.terminate()
exit
glfw.make_context_current(self.window)
self.m = tangram.Map()
self.m.load_scene(scenefile)
self.m.setup_gl()
self.panning = False
self.last_x_down = 0
self.last_y_down = 0
glfw.set_mouse_button_callback(self.window, self.mouse_button_callback)
glfw.set_cursor_pos_callback(self.window, self.cursor_pos_callback)
glfw.set_key_callback(self.window, self.key_callback)
glfw.set_scroll_callback(self.window, self.scroll_callback)
glfw.set_window_size_callback(self.window,
lambda win, w, h: self.m.resize(w, h))
self.m.resize(self.width, self.height)
self.running = False