当前位置: 首页 > news >正文

虚幻5.6插件添加自定义shader

 主要是对官方文档的一个补充:虚幻引擎插件中的 Shader | 虚幻引擎 5.6 文档 | Epic Developer Community

添加虚拟源文件路径

查看代码
void FYKComputeModule::StartupModule()
{// 查找插件TSharedPtr<IPlugin> Plugin = IPluginManager::Get().FindPlugin("YKCompute");if (!Plugin.IsValid()){UE_LOG(LogTemp, Error, TEXT("YKCompute plugin not found!"));// 列出所有可用插件以调试TArray<TSharedRef<IPlugin>> AllPlugins = IPluginManager::Get().GetDiscoveredPlugins();for (const TSharedRef<IPlugin>& AvailablePlugin : AllPlugins){UE_LOG(LogTemp, Warning, TEXT("Available plugin: %s"), *AvailablePlugin->GetName());}return;}// 获取基础目录FString PluginBaseDir = Plugin->GetBaseDir();// 检查基础目录是否存在if (!FPaths::DirectoryExists(PluginBaseDir)){UE_LOG(LogTemp, Error, TEXT("Plugin base directory does not exist: %s"), *PluginBaseDir);return;}// 组合路径FString PluginShaderDir = FPaths::Combine(PluginBaseDir, TEXT("Shaders"),TEXT("Private"));// 检查着色器目录是否存在if (!FPaths::DirectoryExists(PluginShaderDir)){UE_LOG(LogTemp, Error, TEXT("Shader directory does not exist: %s"), *PluginShaderDir);return;}// 映射着色器目录AddShaderSourceDirectoryMapping("/Plugin/YKCompute/Shaders/Private", PluginShaderDir);
}

这里有个注意的点,从添加映射器目录的内部可以知道目录是没什么用的,只是使用的时候要用对应的路径比如我把第一个参数设置为"ABC"。

IMPLEMENT_SHADER_TYPE(,FCompute, TEXT("/ABC/Compute.usf"), TEXT("CSMain"), SF_Compute);

导入的时候也用ABC一样是可以用的,这里不是说可以乱填,而是不必那么严谨,被这个玩意儿坑了点时间。

http://www.hskmm.com/?act=detail&tid=21454

相关文章:

  • 在线考试小程序管理系统:一站式智能考试解决方案,助力多场景高效考核
  • 快微商城小程序管理系统:助力商家搭建高效便捷的新零售平台
  • 2025最新布袋包装厂家推荐排行榜:布袋包装,布袋,手提袋,帆布袋定制,无纺布袋,布袋生产,云南布袋包装,茶叶布袋生产商优选指南
  • KTV 娱乐小程序管理系统:数字化运营新选择,助力行业高效经营
  • 城市电商小程序管理系统:助力商家搭建全渠道数字化经营体系
  • oppoR9m刷Linux系统: ColorOS系统OTA卡刷降级系统版本
  • 深入解析:[免费]基于Python的在线音乐网站系统(后端Django)【论文+源码+SQL脚本】
  • 勒索软件速度危机:AI驱动下的网络安全新挑战
  • 2025沈阳标识标牌厂家推荐排行榜:聚焦行业产能与技术实力,精选沈阳标识标牌优质企业供订做参考
  • Oracle故障分析:数据库不能open下查看undo段的名字
  • 实用指南:智慧外贸平台|基于Java+vue的智慧外贸平台系统(源码+数据库+文档)
  • L04_新建springboot项目与新建helloword(菜鸟版)
  • Implicit Neural Representations with Periodic Activation Functions
  • 故障处理:Oracle一体机更换磁盘控制器后部分磁盘状态异常的案例处理
  • 34
  • ObservableCollection子项属性字段值变化的监听处理
  • 阿里云 CDN 多条件源站配置实战:跨地域环境分流
  • 2025年破碎机厂家最新权威推荐榜:破碎机实力厂商技术服务全景评测及选购指南
  • 什么关系?就是ajax与jQuery
  • 2025标志牌生产厂家最新推荐排行榜:权威筛选优质标志牌品牌,助您精准选对交通标志牌,反光标志牌,道路标志牌供应商!
  • 2025 年脚手架厂家最新推荐榜:铝合金 / 盘扣 / 快装 / 移动式等多类型产品优选及国内实力企业排行指南
  • 2025年沈阳标识标牌厂家最新推荐榜单:涵盖订做标识标牌,广告标识标牌,安全出口标识标牌、不锈钢等多类型标识,全面解读企业产能与技术实力
  • 实用指南:部署 Jenkins 服务器
  • This is my First Blog -BIGBASIS
  • 【光照】[PBR][法线分布]为何不选Beckmann
  • 180课时吃透Go语言游戏后端开发2:Go语言中的变量 - 实践
  • 2025“钉耙编程”中国大学生算法设计暑期联赛(4)
  • qdg
  • 别再迷信甘特图了!90%的项目用它都错了
  • ZyperWin++使用教程!让Windows更丝滑!c盘飘红一键搞定!ZyperWin++解决系统优化、Office安装和系统激活