Part of the Khronos Group
OpenGL.org

The Industry's Foundation for High Performance Graphics

from games to virtual reality, mobile phones to supercomputers

Results 1 to 7 of 7

Thread: [Education] Proposal for the advanced graphics course

  1. #1
    Senior Member OpenGL Pro Aleksandar's Avatar
    Join Date
    Jul 2009
    Posts
    1,072

    [Education] Proposal for the advanced graphics course

    Hi All,

    I'm planning a new course for the last year of the undergraduate studies and need suggestions from the community in order to make it better. It would be a "journey through the 3D graphics pipeline" with all details needed to program advanced applications using OpenGL and GLSL. The theoretical part will be broader, but the implementation will focus on GLSL. It should be one semester course at the end of the undergraduate studies. The preliminary plan of the course (and the text-book) is as follows:

    3D Graphics Pipeline


    1. Modern GPU Architectures (short history, NV Kepler, AMD Cayman)
    2. GPU Programming (shaders vs. kernels, GLSL, OpenCL, CUDA)
    3. 3D Pipeline (programable and FF stages)
    4. CPU/GPU Communication (buffer objects, attributes, uniforms, VAO, ...)
    5. Vertex Processing
    6. Transform Feedback
    7. Tessellation
    8. Geometry Processing
    9. Clipping and Rasterization (this topic should cover other FF)
    10. Fragment Processing
    11. Fetching Fragments (FF, Z-bufer, FBO, render to texture )
    12. Non-graphical calculation
    13. Synchronization and Interoperability (multithreading, multicontext execution, sync objects, GL-D3D Interop., GL-OpenCL Interop, GL-CUDA Interop)
    14. Debugging and Profiling


    The number of topics should be from 12 to 14 (corresponding the number of weeks the course will last).

    I need advices for the following:
    - What is the most appropriate name for the course?
    - What topics are not covered but are important in your opinion?
    - Do you have a similar course and what are yours experience in teaching such a course?

    Thank you in advance!
    Aleksandar

  2. #2
    Senior Member OpenGL Pro
    Join Date
    Jan 2012
    Location
    Australia
    Posts
    1,105
    Are you looking at compute shaders or is that too new?

  3. #3
    Senior Member OpenGL Pro Aleksandar's Avatar
    Join Date
    Jul 2009
    Posts
    1,072
    The chapter/topic 12 is devoted to CS/CL/CUDA, but I have to take a deeper look at CS. Also topics 2 and 13 will cover the basics of CL/CUDA.
    There should be no "too new" features.
    Last edited by Aleksandar; 09-20-2012 at 12:06 PM.

  4. #4
    Junior Member Newbie
    Join Date
    Sep 2012
    Posts
    9
    where is this course presented? Any possibility of an outsider taking this course online?

  5. #5
    Senior Member OpenGL Pro
    Join Date
    Apr 2010
    Location
    Germany
    Posts
    1,099
    Aleksandar: I'd switch points 2 and 3. The rationale is that you introduce the pipeline before you introduce shaders influence the output of the pipeline stages.

    The course could be titled like your usual tutorial since it's the simple truth: Graphics programming using modern OpenGL.

    I don't know if your title should get more crazy and I know that most beginning students don't have any clue about OpenGL anyway.

  6. #6
    Senior Member OpenGL Pro Aleksandar's Avatar
    Join Date
    Jul 2009
    Posts
    1,072
    Quote Originally Posted by siddharth.cmdz View Post
    where is this course presented? Any possibility of an outsider taking this course online?
    The course is not presented yet. I need to make a proposal for the course. It should pass accreditation first, and then it needs popularity among students in order to be held as a regular course at the university. It is too early to speak about online version, but the material will be accessible through our CMS certainly.

    Quote Originally Posted by thokra View Post
    Aleksandar: I'd switch points 2 and 3. The rationale is that you introduce the pipeline before you introduce shaders influence the output of the pipeline stages.
    The topic 2 is an introductory one. I'm planning to talk about APIs and some abstract concepts needed to program GPUs. Yes, it is obvious that the pipeline stages must be mentioned in the topic 2, but just for the purpose of understanding concepts. Topic 3 will give a complete overview of the pipeline and will be the introduction of the next topics.


    Quote Originally Posted by thokra View Post
    The course could be titled like your usual tutorial since it's the simple truth: Graphics programming using modern OpenGL.
    Although sounds reasonable, mentioning a concrete API in the title of the university course is not a wise decision. Of course, more than 80% of the course will use OpenGL exclusively, but I wouldn't expose that in the title. Maybe I'll turn to D3D some day. Just kidding! 3D Graphics Programming, or 3D Graphics Pipeline Programming, or ... Can you see why I need your help? Thanks for the suggestion!

    Quote Originally Posted by thokra View Post
    I don't know if your title should get more crazy and I know that most beginning students don't have any clue about OpenGL anyway.
    My students do know what OpenGL means. A fixed functionality (legacy) OpenGL is well covered in the course named Computer Graphics. This course will come after Computer Graphics.

  7. #7
    Member Regular Contributor malexander's Avatar
    Join Date
    Aug 2009
    Location
    Ontario
    Posts
    303
    Introduction to Realtime Graphics, perhaps?

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •