Hello, J_Kalva
I understand your need to find which materials are using specific Material nodes in Unreal Engine, similar to the “Find in Blueprints” tool. Unfortunately, Unreal Engine doesn’t have a built-in tool for this exact purpose. However, here are some approaches you can consider:
Manual Search:
You can manually search for materials by opening each material and checking for the specific nodes. This is time-consuming but straightforward.
Python Scripting:
While the Python API doesn’t directly support this, you can write a custom script to help. Here’s an example to get you started import unreal
def find_material_node_usage(node_name):
asset_registry = unreal.AssetRegistryHelpers.get_asset_registry()
all_assets = asset_registry.get_all_assets()
for asset in all_assets:
if asset.asset_class == 'Material' or asset.asset_class == 'MaterialInstance':
material = unreal.EditorAssetLibrary.load_asset(asset.object_path)
if material:
nodes = material.get_editor_property('expressions')
for node in nodes:
if node.get_name() == node_name:
print(f"Node {node_name} found in {material.get_name()}")
find_material_node_usage(‘TextureSample’)
Community Plugins:
Check the Unreal Engine Marketplace or community forums for plugins that might offer this functionality. Other developers might have created tools that can help with specific needs like this.