Skip to content

This repository includes various projects that will help you understand the basic concepts of computer graphics such as transformations, animations, texturing, model-view matrix and much more.

Notifications You must be signed in to change notification settings

jawad3838/Basics-of-Computer-Graphics

Repository files navigation

Basics-of-Computer-Graphics

This repository includes various projects that will help you understand the basic concepts of computer graphics such as transformations, animations, texturing, model-view matrix and more.

Pre-requisites

We will be using WebGL graphics pipeline to create these programs. An overview of the pipeline is shown below:

WebGL Pipelinegit

The lib folder must be included in the root folder as it contains the necessary libraries needed for all programs to work. Include that in the parent directory where all the individual programs are placed.

Projects

Dots on screen using mouse Event

This program tell us the basics of the WebGL pipeline such as passing values to the vertex and fragment shaders and handling mouse events.

Single Dot Multiple Dots

Draw Quad/Triangle with colors

This program tells us the basics of passing colors to fragments that make up a particular shape.

Rotating objects

This program covers the basics of using the model-view matrix and basic transformations (such as translation, rotation)

Rotating Multiple Objects Together

This program tells us how to use the model-view matrix stack in order to perform multiple transformation operations at once.

Getting Started with Animations - Projections

This program tell us how to move the direction of the camera and view moving objects from different angles.

Standard View Point (Viewing Out of Screeen) Moving Out of Screen
Moving Along X-axis Moving Along Y-axis

Viewing Objects at Different Distances from Camera - Projections_Advanced

This program tells us how to implement parallel projection for two objects that are at different distances from the camera. The concept of perceiving depth is explained here.

Standard View Point Shift in X and Y
Shift in X and Z Shift in Y and Z

How to work with Lights in a Scene - 3DScene_With_CameraControl

This program tells us how to introduce lights in our 3D scene and how to manipulate them with changing environments. You can control the camera in this program using the arrow keys.

Default View Effect of Changing Light Conditions on all 3 cubes

About

This repository includes various projects that will help you understand the basic concepts of computer graphics such as transformations, animations, texturing, model-view matrix and much more.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published