Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Naming convention for semaphores

未关闭
#343 2 条评论 0 个 reaction 已指派 1 人 在 GitHub 查看

@spencer-lunarg 已经在做这个了。

开始于 2026年6月29日。

评估

这个 Issue 还没有评估数据。

描述

I was reading this article https://docs.vulkan.org/guide/latest/swapchain_semaphore_reuse.html and thought it was very helpful, but I think understanding it is harder than it needs to be due to a naming convention issue.

The problem is that semaphores are primitives that are signalled at the end of one operation and waited on before another operation starts. But in the current naming convention all semaphores are named after the operation that signals them. For example, submit_semaphore is signalled by vkQueueSubmit but from its name it's not clear whether it's waited by vkQueueSubmit or is signalled by it, and it's also not clear who waits for that semaphore.

I think it could be made much easier to understand if each semaphore was following a naming convention where both the operation that signals it and the operation that waits for it are in its name, for example submit_semaphore becomes submit_to_present and acquire_semaphore becomes acquire_to_submit. Following this convention, it's immediately obvious that acquire does not have a semaphore it's waiting for, that acquire_to_submit separates it from submission, that submit_to_present separates submission to presenting and that presenting does not signal anything, because there's no semaphore named present_to_something.

Note that the same naming convention has proven to work much better for matrices, when object_to_world is used instead of object_matrix, it also works much better for functions, barriers and other entities that in some sense mediate two other entities but that's another story.

主要语言
Makefile
星标
2.3k
派生
199
PR 合并指标
30 天内没有已合并 PR

环境准备

  • 没有 Dockerfile 或 Docker Compose 文件
  • 没有 Pull Request 模板
  • 阅读贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

KhronosGroup/Vulkan-Guide 的其他 Issue

查看 KhronosGroup/Vulkan-Guide 的全部 Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。