项目简介
本项目是基于SFML和ImGui库构建的图形应用程序,主要处理UVBSP算法。可对UV纹理进行二进制分割分区,将纹理岛分割成不同片段,为每个片段分配索引,设置独特颜色或参数。还支持导出着色器代码,用于Unreal引擎等环境的光照贴图计算。
项目的主要特性和功能
- UV纹理分割:将纹理的UV岛分割成多个片段并分配独立索引。
- 参数设置:为分割后的片段设置单独颜色或其他参数。
- 着色器代码导出:支持导出GLSL、HLSL或Unreal格式的着色器代码,复制到剪贴板并打印到控制台。
- 图形界面操作:利用ImGui库创建友好图形用户界面,含菜单、按钮等。
- 文件操作:支持项目的保存与打开,保存分割结果到特定文件格式,也可加载已有项目。
- 实时渲染展示:实时更新并渲染UVBSP树,展示分割结果。
- 艺术绘制与导出:允许用户进行艺术绘制并将结果导出到ShaderToy。
安装使用步骤
环境准备
安装SFML库和ImGui库,正确配置环境变量。
项目获取
已从代码仓库下载本项目的源码文件。
编译项目
使用合适的C++编译器(如Visual Studio、GCC等)编译源代码。
运行项目
运行编译后生成的可执行文件,打开应用程序界面。
具体操作
- UV分割:对纹理的UV岛进行分割,尽量使树的左右分支数量相近。
- 导出代码:按Ctrl + Shift + E,再按G(GLSL)、H(HLSL)或U(Unreal)导出相应格式的着色器代码。
- 保存与打开项目:按Ctrl + S保存项目,按Ctrl + O打开已保存的项目文件。
- 艺术绘制与导出:进行艺术绘制,完成后将结果导出到ShaderToy。
注意:项目依赖SFML和ImGui库,编译和运行前需确保正确配置这些库的路径和依赖关系。同时,GPU常量寄存器大小会限制分割数量。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】