Page
1. Inicialización de GLFW y creación de la ventana
glfw.init(): Inicializa la biblioteca GLFW.glfw.create_window(width, height, title, monitor, share): Crea una ventana con el tamañowidthyheighten pÃxeles, y el tÃtulo especificado.monitorysharese usan para configuraciones avanzadas (normalmente se dejan comoNone).glfw.make_context_current(window): Hace que el contexto de OpenGL de la ventana se vuelva activo para el renderizado.
2. Configuración de puntos (con GL_POINTS)
GL_POINTS)glPointSize(size): Establece el tamaño del punto que se va a dibujar. En tu código,glPointSize(10)dibuja puntos de tamaño 10 pÃxeles.glBegin(GL_POINTS)yglEnd(): Define el inicio y el final de un bloque de dibujo de puntos. Dentro de este bloque, defines los vértices para el punto conglVertex2f(x, y).
3. Transformaciones de objetos y color (con GL_QUADS)
GL_QUADS)glColor3f(r, g, b): Establece el color del objeto en función de los valoresr,gyb(rojo, verde, azul) entre 0.0 y 1.0.glVertex2f(x, y): Define las coordenadas de un vértice en el espacio 2D. Los vértices definidos porglVertex2f()forman el cuadrado.glBegin(GL_QUADS)yglEnd(): Dibuja un cuadrado con 4 vértices. Cada vértice se especifica conglVertex2f(x, y).
4. Movimiento con teclas
keyboard.is_pressed(key): Detecta si una tecla especÃfica está presionada. En tu código, se usa para mover el cuadrado con las teclas de dirección.pos_xypos_y: Son las coordenadas del cuadrado. Se actualizan según la dirección de la tecla presionada.dxydy: Son las velocidades de movimiento del cuadrado en las direcciones X e Y, respectivamente.
5. Lógica de rebote
if pos_y > 0.9 or pos_y < -0.9: Detecta si el cuadrado ha llegado al borde superior o inferior de la ventana. Si es asÃ, invierte la dirección del movimiento (dy = -dy).if pos_x > 0.9 or pos_x < -0.9: Similar al anterior, pero para los bordes izquierdo y derecho. Si el cuadrado toca el borde, invierte la dirección del movimiento (dx = -dx).
6. Intercambio de buffers
glfw.swap_buffers(window): Intercambia el buffer de la ventana para mostrar lo que se ha renderizado en el buffer trasero.
7. Eventos de la ventana
glfw.poll_events(): Procesa los eventos (como las teclas presionadas) para la ventana.
Last updated