前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >UE4 微笔记 之 调整网格材质参数

UE4 微笔记 之 调整网格材质参数

作者头像
用户2615200
发布2021-12-06 11:21:43
6350
发布2021-12-06 11:21:43
举报
文章被收录于专栏:tkokof 的技术,小趣及杂念

简单记录一下调整网格(Mesh)材质参数的方法

修改网格材质参数一般有以下几个步骤:

  • 首先创建材质参数(这里有较详细的说明)
  • 创建动态材质实例(UMaterialInstanceDynamic)
  • 设置动态材质参数(通过 SetVectorParameterValue 等方法)

以下是一段简单的代码示例:

代码语言:javascript
复制
void SetMeshMaterial(UMeshComponent* MeshComponent, int MaterialIndex)
{
	if (MeshComponent)
	{
		auto Material = MeshComponent->GetMaterial(MaterialIndex);
		if (!Material)
		{
		    // create material if needed
		    Material = LoadObject(nullptr, TEXT("/Game/TemplateMaterial"));
		}
		
		if (Material)
		{
		    // check if material is already dynamic
			auto MaterialInstance = Cast<UMaterialInstanceDynamic>(Material);
			if (!MaterialInstance)
			{
				// create dynamic material if needed
				MaterialInstance = UMaterialInstanceDynamic::Create(Material, nullptr);
				// set mesh material
				MeshComponent->SetMaterial(MaterialIndex, MaterialInstance);
			}
			
			// now we can set material params by SetVectorParameterValue etc.
	        //MaterialInstance->SetVectorParameterValue(TEXT("BaseColor"), FLinearColor::White);
		}
	}
}
更多资料
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/12/03 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 更多资料
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档