Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Learn OpenGL with Python for Graphics and Games
Rating: 4.8 out of 5(340 ratings)
4,564 students

Learn OpenGL with Python for Graphics and Games

Develop a superior knowledge of vertex shader hardware rendering of 3D graphics.
Last updated 8/2023
English

What you'll learn

  • Understand the fundamental concepts required to render a scene with OpenGL.
  • Write vertex shader code to render points, wireframes, lit solid objects and textured meshes.
  • Identify the steps in the OpenGL render pipeline and discuss purpose of each.
  • Complete the development of a generalised 3D graphics engine in Python.

Course content

14 sections96 lectures13h 59m total length
  • Welcome4:25

    In this lecture, Penny will welcome you to the course and provide and overview of the content and her motivation behind creating it.

  • Join the H3D Student Community1:26

    This video will give you all the information you need to get in touch with the Holistic3D student community.

  • Contacting H3D0:01

    How to contact us

  • Three Dimensions, Vectors and Cartesian Coordinates8:47

    This video provides a revision of the concepts of vectors and the Cartesian plane.

  • Representing Colour3:21

    This video provides an overview of colour and how it is used in computer graphics.  It focusses on how colours are mixed and stored in memory.

  • FAQs0:15

    Important Reading on Common Issues students have and how to ask for help.

Requirements

  • A working knowledge of a procedural or object-orientated language.
  • A healthy respect for vectors and trigonometry.

Description

Why should you learn OpenGL?  (a) It's one of the original graphics libraries developed  to be implemented mostly (or entirely) on hardware. (b) A knowledge about OpenGL will reveal to you what goes on in the background of other graphic and game engines giving you superior problem-solving and trouble-shooting skills in other applications (c) It will improve your understanding of 3D mathematics, and (d) It brings vertex shader programming to the forefront of developing computer graphics applications delivering you a higher level of skill in creating fast GPU-based parallel-processed 2D and 3D graphics.

Designed for INTERMEDIATE level students with a working knowledge of programming, the content in this course will take you step-by-step through the setup of Python, Pygame, and PyOpenG and the development of a generalised 3D graphics engine designed on the fly (as the course progresses), to focus on adding the required functionality as each fundamental concept in computer graphics generation, mathematics, and rendering is revealed.

You will learn about:

  • The Pycharm Development Environment.

  • The Pygame API, which is an interface for OpenGL.

  • PyOpenGL, a python wrapper for the OpenGL API.

  • Coordinate systems in orthogonal, perspective, screen space, and camera space.

  • Moving a virtual camera.

  • Constructing 3D graphics using vertex shaders.

  • Vertex Colouring.

  • Lighting.

  • Essential mathematics for working with 3D space and positioning vertices with a variety of 4x4 viewing matrices.

  • Working with 3D OBJ model files.

  • UV mapping and texturing of meshes.

What people are saying about Penny's courses:

  • Once again Penny delivers a powerful, clear, and worthy course. I believe this material will be very helpful in understanding the underlying workings of many game engines. It is also something a bit different that will allow me to work on my python skills having some fun by making games. She is very clear in her instruction, very knowledgeable and of course delivers easy to follow and understand information that you can easily pick up and learn.

  • Allow me to say how hugely important this is for a person who is interested in certain types of game design. Creating games where you can create AI behaviors that support emergent situations.

  • I honestly love Holistic's teaching approach and I've never learned so much within a few hours about coding effectively with such detailed explanations!

This course focuses on providing students with hands-on experience coding a general 3D graphics engine using PyOpenGL, while also providing an easy introduction to Python for the intermediate programmer.

Who this course is for:

  • Intermediate game programmers interested in learning OpenGL
  • Python programmers interested in expanding their skillset to draw 3D graphics.