Falcor

Falcor

高性能实时渲染框架,支持DirectX 12和Vulkan

Falcor是一个实时渲染框架,旨在提高研究和原型项目的开发效率。它支持DirectX 12和Vulkan,提供常见图形操作的抽象,包括光线追踪、Python脚本支持和渲染图系统。Falcor集成了DLSS、RTXDI和NRD等RTX SDK,实现了后处理效果和无偏路径追踪等渲染技术。该框架支持Windows 10和Ubuntu 22.04系统,需要具备DirectX光线追踪功能的GPU。

Falcor实时渲染DirectX 12Vulkan光线追踪Github开源项目

Falcor

Falcor是一个支持DirectX 12和Vulkan的实时渲染框架。它旨在提高研究和原型项目的生产力。

功能包括:

  • 抽象许多常见的图形操作,如着色器编译、模型加载和场景渲染
  • 光线追踪支持
  • Python脚本支持
  • 渲染图系统,用于构建模块化渲染器
  • 常见的渲染技术,如后处理效果
  • 无偏路径追踪器
  • 集成各种RTX SDK,如DLSS、RTXDI和NRD

先决条件

可选:

  • Windows 10图形工具。要启用调试层运行DirectX 12应用程序,您必须安装此工具。安装方法有两种:
    • 点击Windows按钮并输入可选功能,在打开的窗口中点击添加功能并选择图形工具
    • 此处下载离线安装包。选择与您使用的操作系统版本匹配的ZIP文件(不是用于构建Falcor的SDK版本)。ZIP文件包含一个说明如何安装图形工具的文档。
  • NVAPI、CUDA、OptiX(见下文)

构建Falcor

Falcor使用CMake构建系统。有关如何使用CMake的Falcor的更多信息,请参阅CMake开发文档页面。

Visual Studio

如果您使用Visual Studio 2022,可以在克隆此存储库后运行setup_vs2022.bat来设置原生Visual Studio解决方案。解决方案文件将写入build/windows-vs2022,二进制输出位于build/windows-vs2022/bin

Visual Studio Code

如果您使用Visual Studio Code,请在克隆此存储库后运行setup.bat。这将在.vscode文件夹中设置一个具有合理默认值的VS Code工作区(仅当.vscode尚不存在时)。在VS Code中打开项目文件夹时,它会提示安装推荐的扩展。我们建议您这样做,但至少确保安装了_CMake Tools_。要构建Falcor,您可以通过执行_CMake: Select Configure Preset_操作(Ctrl+Shift+P)来选择配置预设。选择_Windows Ninja/MSVC_预设。然后只需点击_Build_(或按F7)即可构建项目。二进制输出位于build/windows-ninja-msvc/bin

警告:请勿从_Git Bash_启动VS Code,它会将PATH环境变量修改为不兼容的格式,导致CMake出现问题。

Linux

Falcor对Ubuntu 22.04有实验性支持。要在Linux上构建Falcor,请在克隆此存储库后运行setup.sh。您还需要使用以下命令安装一些系统库头文件:

sudo apt install xorg-dev libgtk-3-dev

您可以使用与上述_Visual Studio Code_部分相同的说明来构建Falcor,只需选择_Linux/GCC_预设即可。

配置预设

Falcor使用存储在CMakePresets.json中的_CMake预设_提供一组常用的构建配置。您可以运行cmake --list-presets获取可用配置预设的完整列表:

$ cmake --list-presets
Available configure presets:

  "windows-vs2022"           - Windows VS2022
  "windows-ninja-msvc"       - Windows Ninja/MSVC
  "linux-clang"              - Linux Ninja/Clang
  "linux-gcc"                - Linux Ninja/GCC

使用cmake --preset <预设名称>为给定预设生成构建树。构建树将写入build/<预设名称>文件夹,二进制输出文件位于build/<预设名称>/bin

可以使用cmake --build build/<预设名称>编译现有的构建树。

Python中的Falcor

有关如何将Falcor作为Python模块使用的更多信息,请参阅Python中的Falcor

Microsoft DirectX 12 Agility SDK

Falcor使用Microsoft DirectX 12 Agility SDK来访问最新的DirectX 12功能。应用程序可以通过在主.cpp文件中放置FALCOR_EXPORT_D3D12_AGILITY_SDK来启用Agility SDK。MogwaiFalcorTestRenderGraphEditor默认启用了Agility SDK。

NVAPI

要启用NVAPI支持,请前往https://developer.nvidia.com/nvapi 并下载最新版本的NVAPI(此构建已针对R535版本进行测试)。 将zip文件的内容提取到external/packman/,并将R535-developer重命名为nvapi

NSight Aftermath

要启用NSight Aftermath支持,请前往https://developer.nvidia.com/nsight-aftermath 并下载最新版本的Aftermath(此构建已针对2023.1版本进行测试)。 将zip文件的内容提取到external/packman/aftermath

CUDA

要启用CUDA支持,请下载并安装CUDA 11.6.2或更高版本,然后重新配置构建。

有关如何使用CUDA的示例,请参见位于Source/Samples/CudaInteropCudaInterop示例应用程序。

OptiX

如果您想使用Falcor的OptiX功能(特别是OptixDenoiser渲染通道),请下载OptiX SDK(Falcor目前针对OptiX 7.3版本进行测试)。运行安装程序后,将OptiX SDK文件夹链接或复制到external/packman/optix(即,文件external/packman/optix/include/optix.h应存在)。

注意:要编译OptixDenoiser渲染通道,您还需要安装CUDA,详情请参见上文。

NVIDIA RTX SDK

Falcor附带以下NVIDIA RTX SDK:

请注意,这些SDK的许可证与Falcor不同,详情请参见LICENSE.md

资源

引用

如果您在导致发表的研究项目中使用Falcor,请引用该项目。 BibTex条目为:

@Misc{Kallweit22, author = {Simon Kallweit and Petrik Clarberg and Craig Kolb and Tom{'a}{\v s} Davidovi{\v c} and Kai-Hwa Yao and Theresa Foley and Yong He and Lifan Wu and Lucy Chen and Tomas Akenine-M{\"o}ller and Chris Wyman and Cyril Crassin and Nir Benty}, title = {The {Falcor} Rendering Framework}, year = {2022}, month = {8}, url = {https://github.com/NVIDIAGameWorks/Falcor}, note = {\url{https://github.com/NVIDIAGameWorks/Falcor}} }

编辑推荐精选

音述AI

音述AI

全球首个AI音乐社区

音述AI是全球首个AI音乐社区,致力让每个人都能用音乐表达自我。音述AI提供零门槛AI创作工具,独创GETI法则帮助用户精准定义音乐风格,AI润色功能支持自动优化作品质感。音述AI支持交流讨论、二次创作与价值变现。针对中文用户的语言习惯与文化背景进行专门优化,支持国风融合、C-pop等本土音乐标签,让技术更好地承载人文表达。

QoderWork

QoderWork

阿里Qoder团队推出的桌面端AI智能体

QoderWork 是阿里推出的本地优先桌面 AI 智能体,适配 macOS14+/Windows10+,以自然语言交互实现文件管理、数据分析、AI 视觉生成、浏览器自动化等办公任务,自主拆解执行复杂工作流,数据本地运行零上传,技能市场可无限扩展,是高效的 Agentic 生产力办公助手。

lynote.ai

lynote.ai

一站式搞定所有学习需求

不再被海量信息淹没,开始真正理解知识。Lynote 可摘要 YouTube 视频、PDF、文章等内容。即时创建笔记,检测 AI 内容并下载资料,将您的学习效率提升 10 倍。

AniShort

AniShort

为AI短剧协作而生

专为AI短剧协作而生的AniShort正式发布,深度重构AI短剧全流程生产模式,整合创意策划、制作执行、实时协作、在线审片、资产复用等全链路功能,独创无限画布、双轨并行工业化工作流与Ani智能体助手,集成多款主流AI大模型,破解素材零散、版本混乱、沟通低效等行业痛点,助力3人团队效率提升800%,打造标准化、可追溯的AI短剧量产体系,是AI短剧团队协同创作、提升制作效率的核心工具。

seedancetwo2.0

seedancetwo2.0

能听懂你表达的视频模型

Seedance two是基于seedance2.0的中国大模型,支持图像、视频、音频、文本四种模态输入,表达方式更丰富,生成也更可控。

nano-banana纳米香蕉中文站

nano-banana纳米香蕉中文站

国内直接访问,限时3折

输入简单文字,生成想要的图片,纳米香蕉中文站基于 Google 模型的 AI 图片生成网站,支持文字生图、图生图。官网价格限时3折活动

扣子-AI办公

扣子-AI办公

职场AI,就用扣子

AI办公助手,复杂任务高效处理。办公效率低?扣子空间AI助手支持播客生成、PPT制作、网页开发及报告写作,覆盖科研、商业、舆情等领域的专家Agent 7x24小时响应,生活工作无缝切换,提升50%效率!

堆友

堆友

多风格AI绘画神器

堆友平台由阿里巴巴设计团队创建,作为一款AI驱动的设计工具,专为设计师提供一站式增长服务。功能覆盖海量3D素材、AI绘画、实时渲染以及专业抠图,显著提升设计品质和效率。平台不仅提供工具,还是一个促进创意交流和个人发展的空间,界面友好,适合所有级别的设计师和创意工作者。

图像生成热门AI工具AI图像AI反应堆AI工具箱AI绘画GOAI艺术字堆友相机
码上飞

码上飞

零代码AI应用开发平台

零代码AI应用开发平台,用户只需一句话简单描述需求,AI能自动生成小程序、APP或H5网页应用,无需编写代码。

Vora

Vora

免费创建高清无水印Sora视频

Vora是一个免费创建高清无水印Sora视频的AI工具

下拉加载更多