{Where Am I}

Overview

With the release of JavaScript in 1995, we had a way to write some logical program that could be run on the browser. It ended the era of static webpages that were merely used to display information no real time interaction, no client side logic.

This was a major leap in web development. However, as websites became more complex, developers started feeling the need of graphics such as dynamic charts, graphs, and custom drawings, but at that time, HTML had no native way to draw graphics programmatically.
Then in 2004 Apple released the canvas tag for Safari, which had the capability to draw 2D CPU rasterized graphics on the webpages. It was soon adapted by other browsers and the support for 2D CPU graphics was widely available on browsers.

Still, GPU-rasterized CG was largely limited to native applications written in C/C++ using OpenGL. Then, in 2011, WebGL was released, finally providing access to the GPU from within the browser.

Now enough of trash talking : ) , we will discuss about the evolution of WebGL some other day let's dive straight into it.

What is WebGL?

From a beginners perspective, WebGL can be seen as a way to make dynamic 2D/3D scenes in the web browser, I don't want to scare you away by saying heavy words like WebGL is a low-level, JavaScript API that provides direct, programmable access to the GPU inside the browser for rendering real-time 2D and 3D graphics. Oops! I said it ; )

Why learn WebGL?

  1. WebGL is a good starting point for leaning CG as it is lot more simpler than any other API like Vulkan or DirectX.
  2. You need nothing more than a simple text editor, a web browser.
  3. Easy to share and host. You can host it like any other website and share the link.
  4. You can use other HTML elements along with the graphics, with this you can make your stunning 3D portfolio.

What do you need to proceed further?

  1. A decent PC.
  2. A Text editor and a browser.
  3. A little bit of maths (addition, subtraction, multiplication and division), anything other than these will be discussed on the spot.
  4. A little bit of HTML and JS.
  5. No prior CG experience needed