Version: 5.3 (switch to 5.4b)
ЯзыкEnglish
  • C#
  • JS

Язык программирования

Выберите подходящий для вас язык программирования. Все примеры кода будут представлены на выбранном языке.

AssetDatabase.FindAssets

Предложить изменения

Успех!

Благодарим вас за то, что вы помогаете нам улучшить качество документации по Unity. Однако, мы не можем принять любой перевод. Мы проверяем каждый предложенный вами вариант перевода и принимаем его только если он соответствует оригиналу.

Закрыть

Ошибка внесения изменений

По определённым причинам предложенный вами перевод не может быть принят. Пожалуйста <a>попробуйте снова</a> через пару минут. И выражаем вам свою благодарность за то, что вы уделяете время, чтобы улучшить документацию по Unity.

Закрыть

Отменить

Руководство
public static function FindAssets(filter: string): string[];
public static string[] FindAssets(string filter);
public static function FindAssets(filter: string, searchInFolders: string[]): string[];
public static string[] FindAssets(string filter, string[] searchInFolders);

Параметры

filter @param filter Параметры для фильтра могут содержать данные поиска для: имён, меток ресурсов и типов (Названия классов). Подробности смотрите в описании.
searchInFolders @param searchInFolders Задание одной или более папок будет ограничивать поиск в этих папках и их дочерних папках (и ускорит поиск всех ассетов).

Возврат значений

string[] Array of matching asset GUIDs.

Описание

Ищите assetdatabase с помощью строки searchfilter.

You can search for names, lables and types (classnames).


'name': filter assets by their filename (without extension). Words separated by whitespace are treated as separate name searches. Use quotes for grouping multiple words into a single search.


'labels': Use the keyword 'l'. Filtering by more than one label will return assets if just one asset label is matched (OR'ed)


Типы могут быть либо встроенными, например 'Texture2D', либо именами классов пользовательских скриптов. Если требуются все ассеты: используйте 'Object', поскольку все ассеты происходят из Object.

Поиск не чувствителен к регистру

Используйте AssetDatabase.GUIDToAssetPath для получения пути к ресурсам, а так же AssetDatabase.LoadAssetAtPath для загрузки ресурса.

@MenuItem("Test/FindAssetsUsingSearchFilter")
static function FindAssetsUsingSearchFilter ()
{
	// Find all assets labelled with 'concrete' :
	var guids = AssetDatabase.FindAssets ("l:concrete", null);
	for (var guid in guids)
		Debug.Log (AssetDatabase.GUIDToAssetPath(guid));

// Find all Texture2Ds that have 'co' in their filename, that are labelled with 'concrete' or 'architecture' and are placed in 'MyAwesomeProps' folder var guids2 = AssetDatabase.FindAssets ("co l:concrete l:architecture t:texture2D", ["Assets/MyAwesomeProps"]); for (var guid in guids2) Debug.Log (AssetDatabase.GUIDToAssetPath(guid)); }
using UnityEngine;
using UnityEditor;

public class Example {

[MenuItem("Test/FindAssetsUsingSearchFilter")] static void FindAssetsUsingSearchFilter() { // Find all assets labelled with 'concrete' : string[] guids = AssetDatabase.FindAssets ("l:concrete");

foreach (string guid in guids) { Debug.Log (AssetDatabase.GUIDToAssetPath(guid)); }

// Find all Texture2Ds that have 'co' in their filename, that are labelled with 'concrete' or 'architecture' and are placed in 'MyAwesomeProps' folder string[] lookFor = new string[] {"Assets/MyAwesomeProps"}; string[] guids2 = AssetDatabase.FindAssets ("co l:concrete l:architecture t:texture2D", lookFor);

foreach (string guid in guids2) { Debug.Log (AssetDatabase.GUIDToAssetPath(guid)); } } }