shader转spv小程序

每次将shader转为spv都需要通过命令行执行指令,真是太麻烦了,因此顺手写了一个小程序,使用非常简单,将要转换的着色器文件拖动到小程序上就可以了。

源码如下:

#include <iostream>
#include <list>
#include <set>

int main(int argc, char** argv)
{
	std::set<std::string> setExtensions = {
		".vert",
		".frag",
		".comp",
		".tesc",
		".tesc"
	};

    std::cout << "begin ************************************************\n";
	if (argc <=1) 
	{
		goto end;
	}

	for (int i = 1; i < argc; i++)
	{
		std::string src(argv[i]);

		size_t idx = src.find_last_of(".");
		std::string strExtension = src.substr(idx);
		if (setExtensions.count(strExtension) == 0)
		{
			std::cout << "can not process extension " << strExtension << std::endl;
			continue;
		}

		std::string dst = src + ".spv";
		std::string cmd = "glslangvalidator -V \"" + src + "\" -o \"" + dst + "\"";
		system(cmd.c_str());
	}

end:
    std::cout << "end   ************************************************\n";
	system("pause");
}

小程序下载地址:shader转spv,将着色器文件转为spv文件-其他文档类资源-CSDN下载

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值