3D Software Rendering Graphics Pipeline

Ғылым және технология

This video goes over the stages of the graphics pipeline I like to use in my 3D software rendering projects.
One of the first things game programming students read in most graphics books is the famous "Graphics Pipeline."
Surprisingly, the term confuses some programmers, especially because most books already present more complex pipelines used by OpenGL, Direct3D, and Vulkan. That's why I decided to take some time to sit down and talk to you about some of the most important stages of a simpler rendering pipeline.
The rendering pipeline I discuss here is mostly focusing on "software rendering", and does not include all the stages of modern graphics APIs and GPUs.
Links:
Complete 3D Software Renderer Course: pikuma.com/courses
Chapters:
00:00 Intro
00:35 An Overview
02:00 The Stages of a Simple Pipeline
02:12 Local Space
03:30 World Space
05:24 Camera Space
06:53 Backface Culling
07:43 Perspective Projection
09:48 Clipping Space
11:38 Image Space & NDC
13:36 Screen Space & Rasterization
12:32 Modern Graphics Pipelines & GPUs
16:32 Conclusion & Next Steps
In computer graphics, a computer graphics pipeline (or rendering pipeline), is a conceptual model that describes what steps a graphics system needs to perform to render a 3D scene to a 2D screen.
Once a 3D model has been created, for instance in a video game or any other 3D computer animation, the graphics pipeline is the process of turning that 3D model into what the computer shows to the user using pixels.
There is no universal graphics pipeline suitable for all cases. However, graphics APIs - such as Direct3D or OpenGL - were created to unify similar steps and to control the graphics pipeline of a given hardware accelerator. These APIs abstract the underlying hardware and keep the programmer away from writing code to manipulate the graphics hardware accelerators (AMD/Intel/NVIDIA etc.).
For comprehensive courses on computer science, programming, and mathematics, visit:
www.pikuma.com
Don't forget to subscribe to receive updates and news about new courses and tutorials:
/ @pikuma
Enjoy!

Пікірлер: 20

  • @SoCalWildman
    @SoCalWildman2 жыл бұрын

    The 3D Graphics Programming course is by far one of the best online courses I have ever completed. Highly recommended!

  • @KarlPhillipBuhr

    @KarlPhillipBuhr

    2 жыл бұрын

    Agreed 100%

  • @rodolfoc.nascimento6301

    @rodolfoc.nascimento6301

    5 ай бұрын

    I can say that this video is the most completely rendering pipeline explanation I've seen in my whole life. thanks to pikuma

  • @aidenmichael5852
    @aidenmichael585210 күн бұрын

    Thanks for the high quality course : )

  • @clehpton
    @clehpton Жыл бұрын

    Great content Gustavo, very good explanation, you deserves more by your work

  • @Denisfutbol
    @Denisfutbol2 жыл бұрын

    great explanation!! thanks :)

  • @PabloSanchez-th5em
    @PabloSanchez-th5em2 жыл бұрын

    Pikuma its my place to learn!

  • @xasyo9638
    @xasyo96386 ай бұрын

    Thanks for the vídeo!

  • @gabriel64880
    @gabriel648804 ай бұрын

    Excellent video, a shame I didn’t find it sooner

  • @joaquimjesus6134
    @joaquimjesus6134 Жыл бұрын

    can i use DIB's for work with image\pixel... or theres another win32 method?(i know the DirectX\OpenGL, but i'm trying avoid them) correct me: speaking on 3D Lines: is only necessary(for don't use too much CPU) just projecting the Start and End points... or all line points?

  • @fernandojavierbianchi431
    @fernandojavierbianchi431 Жыл бұрын

    quiero el cursoo

  • @manuelfuertes6295
    @manuelfuertes62954 ай бұрын

    @pikuma Another quick question: Do UI libraries like CoreGraphics on macOS, use GDI on Windows use a different kind of pipeline? I would guess that UI graphics libraries require only Screen-space coordinates since there's not need for projections

  • @manuelfuertes6295
    @manuelfuertes62954 ай бұрын

    I thought Perspective divide is a result of applying a perspective projection matrix. is you could either manually divide all the vertices by their z components, or you could simply multiply them by the matrix. Do you also do a perspective divide when using an orthographic projection matrix? Great video. I'd really appreciate an answer to my question. Thank you very much in advance

  • @pikuma

    @pikuma

    4 ай бұрын

    No, orthographic projection does not have a perspective divide. And I understand. It's not common to think of perspective divide to be something separate from the perspective projection matrix, but it is. The division by z (or w in this case) happens *after* the perspective projection matrix.

  • @manuelfuertes6295

    @manuelfuertes6295

    4 ай бұрын

    @@pikuma Thanks for the response.

  • @tseringdhoundup2624
    @tseringdhoundup26242 жыл бұрын

    need more

  • @nekoreee
    @nekoreee4 ай бұрын

    Halo yang bsok test grafkom 👋

  • @zany3238
    @zany32382 жыл бұрын

    Qi

  • @dclxviclan
    @dclxviclan Жыл бұрын

    Edward Northon

  • @dclxviclan
    @dclxviclan Жыл бұрын

    Main tittle in video how main tittle film "Fight club"

Келесі