Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Lesson 10, grab a pen

Open
#144 0 comments 1 reaction 1 assignee View on GitHub

@gpx1000 is already working on this.

Since Aug 11, 2025.

Assessment

This issue has not been assessed yet.

Description

The line:

vk::Viewport{ 0.0f, 0.0f, static_cast<float>(swapChainExtent.width), static_cast<float>(swapChainExtent.height), 0.0f, 1.0f };

Isn't used in the code. Also text uses WIDTH and HEIGHT. There are other example lines not used in the code. Would be nice if the tutorial first showed you what to do, and the then showed you options you might use while emphasizing that you don't need to worry about them to complete the tutorial. Noobs like me don't know what a scissor is, even after the picture demonstrating. On a general note, I learned 3D graphics programming from scratch, no API, and I'm probably not the only one. So I know the graphics concepts but not the API/GPU pipeline concepts. I started learning Vulkan because OpenGL's hidden global state thing is confusing. So maybe more little asides for people like me would help. You can have "Noob Notes", little text boxes explaining GPU concepts here and there and how they service the graphics rendering process.

Remember, we're trying to drink from a fire hose.

Rasterizer

There are a lot of ...CreateInfo objects created in this lesson that aren't used, they're just defined but not passed to any creator function. Are they there for a future lesson?

Also the text here is very much for the C API but the code isn't, so it's pretty confusing. Also once again it starts off with a "we could do this or this but then this also" before getting to the part we're actually supposed to follow along with. I'd put all these optional parts at the end or in a text box "Top Tips" or something. It also finishes with similar stuff. Like before I have to look at the code to find out what I'm actually supposed to be doing for this lesson. And like before it becomes a "copy code over" exercise, rather than feeling like I'm following along with the explanations because they're so broken up and outdated.

Also does lineWidth matter if we're drawing filled polygons?

Can you believe that at this point in writing this issue I went out to get groceries and then was in a crash that totaled my car? Not my fault either.

ANYWAY.

I'll have to finish this later when my entire life no longer revolves around car shopping.

Dominant language
C++
Stars
424
Forks
127
Avg merge
2d 22h
Merged PRs (30d)
7

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from KhronosGroup/Vulkan-Tutorial

All issues in KhronosGroup/Vulkan-Tutorial

Similar issues

More C++ issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.