自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 资源 (4)
  • 收藏
  • 关注

原创 Vulkan学习笔记(8):绘制三角形之交换链重建

交换链重建机制 本文详细介绍了Vulkan中交换链重建的必要性和实现方法。当窗口尺寸改变或交换链与表面不兼容时,需要重建交换链及相关对象。核心内容包括: 创建recreateSwapChain函数集中处理交换链、图像视图和帧缓冲区的重建 分离清理逻辑到cleanupSwapChain函数 通过VK_ERROR_OUT_OF_DATE_KHR和VK_SUBOPTIMAL_KHR识别交换链状态变化 修复了栅栏死锁问题,调整栅栏重置时机 添加显式窗口尺寸变化处理机制 该机制确保应用程序能正确处理窗口调整大小等场景

2026-02-10 08:20:41 854

原创 Vulkan学习笔记(7):绘制三角形之绘制

摘要 本文介绍了Vulkan中帧缓冲区和命令缓冲区的创建过程。帧缓冲区通过绑定图像视图作为附件与渲染通道配合使用,需要为交换链中的每个图像创建单独的帧缓冲区。命令缓冲区则用于记录和执行绘图指令,需要先创建命令池来管理内存分配。文章详细说明了创建帧缓冲区数组和命令缓冲区的步骤,包括相关参数配置和资源清理。这些组件是实现Vulkan渲染管线的基础,为后续绘制操作做好准备。

2026-02-09 21:18:58 867

原创 Vulkan学习笔记(6):绘制三角形之图形管线基础

本文介绍了Vulkan图形渲染管线的基本流程,重点讲解了顶点着色器和片段着色器的实现方法。渲染管线包括输入装配、顶点处理、光栅化、片段处理等阶段,其中可编程阶段允许开发者自定义着色器代码。文章通过绘制彩色三角形的示例,详细说明了GLSL着色器语言的编写要点,包括顶点位置处理、颜色输出等核心功能,并解释了SPIR-V字节码格式的优势。最后展示了如何通过修改着色器实现从单色到渐变色的视觉效果提升。

2026-02-09 20:36:41 1058

原创 Vulkan学习笔记(5):绘制三角形之展示

由于Vulkan是与平台无关的API,它无法直接与窗口系统进行交互。为了建立Vulkan与窗口系统之间的连接,从而将渲染结果展示在屏幕上,我们需要使用WSI(窗口系统集成)扩展。在本章中,我们将讨论第一个扩展——。该扩展提供了一个对象,它代表一种抽象的展示表面,用于展示渲染后的图像。在我们的程序中,这个表面将由先前通过GLFW创建的窗口提供支持。是一个实例层扩展,实际上我们已经启用了它,因为它包含在函数返回的列表中。该列表还包含了其他一些我们将在后续章节中使用的WSI扩展。

2026-02-08 09:06:41 928

原创 Vulkan学习笔记(4):绘制三角形之Vulkan初始化

选择了要使用的物理设备后,我们需要设置一个逻辑设备来与之交互。逻辑设备的创建过程与实例创建过程类似,需要描述我们想要使用的功能。既然我们已经查询了可用的队列族,现在还需要指定要创建哪些队列。如果您有不同的需求,甚至可以从同一个物理设备创建多个逻辑设备。首先添加一个新的类成员来存储逻辑设备句柄。接下来,添加一个从initVulkan调用的函数。

2026-02-06 10:33:24 723

原创 Vulkan学习笔记(3):搭建开发环境

本文介绍了配置Vulkan开发环境的完整流程。首先需要安装Vulkan SDK并验证显卡支持,然后通过CMake和vcpkg工具链搭建跨平台开发环境。具体步骤包括:安装Git和CMake工具、建立项目目录、使用vcpkg安装GLFW和GLM库、创建CMake项目文件,最后生成Visual Studio构建系统并运行测试程序。文中提供了详细的配置说明和代码示例,重点展示了如何通过CMake集成Vulkan SDK和第三方库,为后续Vulkan应用程序开发奠定基础。整个配置过程支持Windows、Linux和M

2026-02-05 11:37:27 1020

原创 Vulkan学习笔记(2):Vulkan介绍

Vulkan是为现代图形架构设计的跨平台GPU抽象层,解决了传统API的多线程支持不足、驱动开销大等问题。绘制三角形需要8个核心步骤:从实例创建到主循环渲染,涉及逻辑设备、交换链、图形管线等关键组件。Vulkan API采用结构化设计,函数和类型有统一前缀规范,并支持验证层进行开发调试。该教程将从简入手,后续章节将逐步展开每个步骤的详细实现。

2026-02-04 18:18:23 643

原创 Vulkan学习笔记(1):教程介绍

本教程介绍Vulkan图形API的基础知识,这是Khronos组织推出的新一代跨平台图形接口,相比OpenGL和Direct3D能提供更高性能和更低驱动开销,但需要开发者自行处理更多底层细节。教程面向具备C++17和3D图形基础的开发者,从环境配置到渲染第一个三角形的完整流程逐步讲解,涵盖Vulkan的核心概念和API使用方法。教程提供电子书版本和完整代码示例,采用CC BY-SA 4.0许可协议,鼓励社区贡献。Vulkan适合追求极致性能的图形开发者,而游戏开发者可继续使用更高级的引擎或API。

2026-02-04 17:45:40 854

原创 我为什么从.NET转向Java

我为什么从.NET转向Java自从开始学习计算机以来,所接触的软件基本上都是Microsoft的产品,记得最开始使用的操作系统是MS-DOS 3.1,开发工具是基本DOS的Turbo Pascal、Turbo C、MASM、Borland C++等,进入Windows和.NET平台后,便是清一色的Microsoft工具:Visual Basic和Visual C++,直到现在最新的Visual

2007-04-04 18:27:00 2229

原创 学习OpenGL - 1

我想开发一个2D行业矢量图形编辑程序,从资料上了解到OpenGL比较适合开发类似于CAD的图形软件,就准备用VS 2005 + OpenGL写。以前没有学过Computer Graphics,于是就买了《Interactive Computer Graphics》、《曲线与曲面的数学》、《CAGD曲线与曲面》慢慢啃。看了一个多星期,了解了一些Spline、Bezier、B-Spline、Non-U

2006-12-14 09:11:00 1197

原创 COM学习-1

今天又拿起了讲COM的书,记得开始学习COM是好多年以前的事情了,那时看过《COM技术内幕》和MSDN上的一些文章,脑子里就一个感觉:乱!又没这方面的项目可做,看了一段就放下了。最近感觉还是比较闲,又拿起来,准备重温一下。基本概念以前也基本知道,感觉除了COM的线程模型不太好理解,在看过了《》之后感觉清醒了一些,总算能明白一点了。 但要用COM做东西,感觉要差一些。今天看看了《COM原理与应用

2006-09-22 20:27:00 855

ieee 830-1998

IEEE标准软件需求规格说明文档编写指导资料,英文原版.

2009-04-15

思科数据中心和灾备中心解决方案

思科公司提供的数据中心和灾备解决方案,非常有价值!

2010-08-30

一个国外的需求规格说明书范例

《软件需求》中的范例,包括需求规格说明,项目前景与范围文档

2008-11-16

SASL基本说明文档

SASL基本说明文档,简要介绍SASL的基本原理以及与其他相关协议配合使用的说明。

2011-02-10

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除