Qt prf 之 hlsl编译
来源:互联网 发布:mysql ip数据库 编辑:程序博客网 时间:2024/06/04 23:29
- 前言
- Qt的prf文件
- 位置
- 存在的意义
- 我们用它干什么
- hlsl文件解析
- hlsl文件内容
- Qt pro文件中添加
- 总结
前言
这是这篇文档(qtd3d12window)的说明,一篇国外哥们写的。
Qt的prf文件
位置
*.prf文件要放到$$QTDIR/mkspecs/features下。
我尝试过放到别的地方,都失败了。如果你成功了。告诉我一下,不胜感激。
存在的意义
和pri文件类似,该文件也是要被包含进pro文件的。
只是:它更隐蔽
你经常和它打交道,可能却一直视而不见
eg:
CONFIG+=QT
当我们在CONFIG中指定一个东西时,qmake就会尝试去加载相应的feature文件。
在Qt的 manual中你可以看看官方的说明。
这一段中主要参考的这里。
我们用它干什么
移植windows截屏的demo到Qt中。
发现总是编译不过,因为缺少了.h文件。相应的.h文件是通过.hlsl文件生成的。
就是在真正编译之前执行一个命令,将DX的shader语言文件生成相应的.h文件。
其他方法:
1,直接在cpp文件中使用(有相应的函数读取编译)。
缺点:要改这个demo的代码。
2,在Qt工程的编译步骤哪里,添加一个新的步骤。
缺点:如果关掉QtCreator就要重现添加的这个步骤了。
hlsl文件解析
hlsl文件内容
hlsl.prf
for (SHADER, HLSL_SHADERS) { INPUT = $$eval($${SHADER}.input) fxc_$${SHADER}.input = $$INPUT fxc_$${SHADER}.commands = fxc.exe /nologo /E $$eval($${SHADER}.entry) /T $$eval($${SHADER}.type) /Fh ${QMAKE_FILE_OUT} ${QMAKE_FILE_NAME} fxc_$${SHADER}.output = $$eval($${SHADER}.header) fxc_$${SHADER}.dependency_type = TYPE_C fxc_$${SHADER}.variable_out = HEADERS fxc_$${SHADER}.CONFIG += target_predeps QMAKE_EXTRA_COMPILERS += fxc_$${SHADER}}
Qt pro文件中添加
LIBS += d3d11.lib \ dxgi.lib#这里加载了一个hlsl的feature,这里需要在Qt的安装目录下复制一个hlsl.prf。这里先这样,后面再弄VS = $$PWD/win/d3d11ScreenCapture/VertexShader.hlslPS = $$PWD/win/d3d11ScreenCapture/PixelShader.hlslvshader.input = VSvshader.header = VertexShader.hvshader.entry = VSvshader.type = vs_5_0pshader.input = PSpshader.header = PixelShader.hpshader.entry = PSpshader.type = ps_5_0HLSL_SHADERS = vshader pshaderload(hlsl) #用这种方法需要将hlsl.prf文件放到Qt的安装目录中去
总结
如果能找到 hlsl.prf文件不用发到Qt安装目录下就好了。不然别人从代码库中把代码拉下来还要复制这个文件。
阅读全文
0 0
- Qt prf 之 hlsl编译
- Qt-pro、pri、prf、prl文件学习
- 编译HLSL着色器
- DirectX 3D_基础之HLSL(高级着色语言) HLSL着色器程序的编制 HSLS变量 HLSL入口函数 HLSL程序编译 变量常量类型 设置方法 前缀 关键字 类型 语句 类型转换
- qt 之静态编译
- qt之VS2008编译
- HLSL编译出错的问题~
- Hlsl Shader 编译运行成功
- HLSL编译工具—FXC
- Qt pro文件详解及pri,prl,prf简介
- Qt中pro文件以及pri,prf,prl文件
- Qt介绍2---.pro .pri .prf .prl文件
- HLSL
- HLSL
- HLSL 研究学习 之二
- HLSL研究学习之三
- HLSL 研究学习之四
- HLSL 研究学习之五章二节
- python子进程模块subprocess详解与应用实例 之三
- 免费下载 mybatis-generator-core-1.3.5.zip 网址
- Home Work
- web前端知识基础回顾
- C++虚继承的内存模型
- Qt prf 之 hlsl编译
- keystone获取token代码分析
- JS闭包的形象解释
- HDFS文件系统Shell命令
- 一位算法工程师对自己工作的反思,写得挺实在的
- 从写项目到部署linux服务器全过程-linux下tomcat的集群配置篇
- OTT与IPTV区别
- js 笔记
- 【开源】python画赛道程序