michu-dunat / gk

Grafika Komputerowa - Laboratorium

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Computer Graphics

Python libraries used throught assignments:

  • PyOpenGL glfw
  • numpy
  • Pillow
  • glm

Lab2 – OpenGL basics, 2D graphics

Scripts that can:

  • draw a triangle with each vertex of a different color,
  • draw a rectangle at the given coordinates,
  • introduce randomness of colors and deformations in a rectangle,
  • draw a fractal - Sierpinski's rectangular carpet,
  • draw a fractal - Mandelbrot set.

Lab3 - Modeling of 3D objects

Script that can:

  • build an egg model with the help of points,
  • build an egg model with the help of a line,
  • build an egg model using triangles,
  • build an egg model using triangle strip primitive.

Lab4 - Interaction with the user, vertex transformations

Script that can:

  • rotate the object around the X axis,
  • introduce support for a second mouse button (object scaling),
  • move the camera around the model,
  • improve the movement of the camera around the model:
    • limits in the scope of zooming in / out of the camera,
    • correctness of camera transitions around the model,
    • the ability to switch between object rotation mode and camera movement mode.

Lab5 - Stage lighting

Script that can:

  • generate two light sources around egg model from Lab3,
  • enable dynamic change of color components,
  • move light sources and their visualization,
  • add normal vectors to the egg model,
  • display normal vectors and correct them.

Lab6 - Texturing objects

Script that can:

  • draw a textured square,
  • draw a textured pyramid,
  • load own textures,
  • switch loaded textures,
  • draw a textured egg from Lab3.

Lab7 - Graphical stream based on shaders (GLSL)

Scripts that can:

  • draw a colored cube,
  • draw a colored cube and each side has a different color,
  • create multiple copies of an object (on the CPU),
  • create multiple copies of an object (instance rendering mechanism),
  • deform each object.

About

Grafika Komputerowa - Laboratorium


Languages

Language:Python 100.0%