10_Polygons, Planes, Spheres, and Cylinders
In this lesson, we add more tools to our geometry toolset with the introduction of a polygon geometry class and a parametric geometry class. Then, we use t...
This is the homepage for the 5th-year Software Engineering Lab course in the Department of Science and Technology at International College of Technology (ICT), Kanazawa.
Software Engineering is a practice-oriented discipline. This course provides students with hands-on experiences for efficiently developing object-oriented software products using software engineering techniques. In addition, students will have an opportunity to develop the necessary teamwork skills including leadership, collaboration, sharing responsibilities through roles, and continuous learning in a team-based computer graphics software project.
Students will have an opportunity to practice the software engineering techniques they learned in previous years and apply them to the domain of computer graphics. The course begins with teaching the basics of computer graphics through hands-on exercises that build a computer graphics framework with Python and OpenGL. The students will then use their computer graphics frameworks to create a software application in a team development project.
This website provides notes from the instructor in the form of Posts. Each post is dated and made available in chronological order.
The contents follow the textbook “Developing Graphics Frameworks with Python and OpenGL” which is available for purchase or from open access. The authors also have a video playlist of all the chapter contents on YouTube.
In this lesson, we add more tools to our geometry toolset with the introduction of a polygon geometry class and a parametric geometry class. Then, we use t...
In this lesson, we implement the classes Geometry and Material for handling all the attributes, vertices, shader programs, uniform data, and rendering settin...
This lesson explains the scene graph which is a useful structure for 3D scenes that contain many objects and relationships. In the 3D Objects section we int...
In this lesson, we apply what we learned about calculating geometric transformations to build a Matrix class and integrate it with our CG framework.
This lesson explains the mathematical concepts behind matrix calculations for common transformations in computer graphics including scaling, rotation, transl...
In this lesson we review the mathematical foundations that make geometric transformations possible in computer graphics: vectors and matrices.
In this lesson, we introduce uniform data for use in animations and keyboard events for greater interaction with the application.
In this lesson, we add a class to our framework to simplify the use of vertex buffers and then use the class to draw shapes with multiple vertices and colors.
This lesson introduces the basic framework components for creating an application window and rendering a point on the screen.
OpenGL programming in Python requires a little effort to set up the development environment. This post tells you how.