Эта статья документации для всего, что использует платформу Source. Нажмите для получения дополнительной информации.

Ru/$texturegroup: Difference between revisions

From Valve Developer Community
< Ru
Jump to navigation Jump to search
mNo edit summary
m (Multipage removal)
 
(10 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{lang|$texturegroup|$title=$texturegroup}}{{toc-right}}
{{LanguageBar|title = $texturegroup}}
{{This is a|c0|name=$texturegroup}} Она позволяет модели иметь несколько [[skin|скинов]], состоящих из одного или нескольких материалов.<br>
{{this is a|QC command|name=$texturegroup}}
{{improve|перевод ужасный. Во первых переведены команды, "name"... и т.д. которые на самом деле не должны быть переведены (так как это исходные команды и они на английском. Имеется тавтология, некоторые предложения просто смысл не имеют}}
{{toc-right}}
Она позволяет модели иметь несколько {{L|skin|скинов}}, состоящих из одного или нескольких материалов.<br>
Скины используются в моделях для добавления вариантов их внешнего вида без создания новых моделей.
Скины используются в моделях для добавления вариантов их внешнего вида без создания новых моделей.
[[File:Plasticcrate01.jpg|723x111px|frameless|left]]{{cls}}
[[File:Plasticcrate01.jpg|723x111px|frameless|left]]{{cls}}
Line 13: Line 16:


; имя
; имя
: Имя группы текстур. {{bug:ru|[[StudioMDL_(Source)/ru|StudioMDL]] требует имя, но оно никак не используется. Обычно группы текстур называют <code>skinfamilies</code>.}}
: Имя группы текстур. {{bug|{{L|StudioMDL_(Source)|StudioMDL}} требует имя, но оно никак не используется. Обычно группы текстур называют <code>skinfamilies</code>.}}
; стандартный материал
; стандартный материал
: Название [[material/ru|материала]] ([[VMT/ru|VMT]]) на референс модели.
: Название {{L|material|материала}} ({{L|VMT}}) на референс модели.
; новый материал
; новый материал
: Название [[material/ru|материала]] ([[VMT/ru|VMT]]), который будет заменять материал выше.
: Название {{L|material|материала}} ({{L|VMT}}), который будет заменять материал выше.




Line 29: Line 32:
  }
  }


[[StudioMDL_(Source)/ru|StudioMDL]] позволяет использовать до 32 уникальных материалов на модели. Этот лимит встроен в компилятор, но его ''можно'' увеличить используя пропатченный [[StudioMDL_(Source)/ru|StudioMDL]].
{{L|StudioMDL_(Source)|StudioMDL}} позволяет использовать до 32 уникальных материалов на модели. Этот лимит встроен в компилятор, но его ''можно'' увеличить используя пропатченный {{L|StudioMDL_(Source)|StudioMDL}}.
{{tip:ru|Если нужно заменить основную текстуру в скине, можно скопировать изначальный материал и изменить его название и его параметр {{ent:ru|$basetexture}}}}
{{tip|Если нужно заменить основную текстуру в скине, можно скопировать изначальный материал и изменить его название и его параметр {{ent:ru|$basetexture}}}}
{{bug:ru|Вы должны добавить пробелы между кривыми скобками <code>{}</code> и названием материала. <code>{skin_0}</code> работать не будет, в отличие от <code>{ skin_0 }</code>.}}
{{bug|Вы должны добавить пробелы между кривыми скобками <code>{}</code> и названием материала. <code>{skin_0}</code> работать не будет, в отличие от <code>{ skin_0 }</code>.}}


== Примеры ==
== Примеры ==
Line 69: Line 72:
== Использование нескольких текстурных групп ==
== Использование нескольких текстурных групп ==
Использование более, чем одной <code>$texturegroup</code> разрешено, но '''не''' рекомендуется. Поведение нескольких групп текстур как минимум неинтуитивно.
Использование более, чем одной <code>$texturegroup</code> разрешено, но '''не''' рекомендуется. Поведение нескольких групп текстур как минимум неинтуитивно.
{{bug:ru|Количество скинов определяется ''только'' первой группой текстур. Это значит, что для того, чтобы получить доступ к другим текстурным группам количество скинов должно превышать 31 (32 в [[HLMV/ru|HLMV]]).}}
{{bug|Количество скинов определяется ''только'' первой группой текстур. Это значит, что для того, чтобы получить доступ к другим текстурным группам количество скинов должно превышать 31 (32 в {{L|HLMV}}).}}
{{bug:ru|$texturegroup не воспринимаются отдельно друг от друга, группы текстур разделяются на части по 32 скина. Не более чем 32 скина могут быть использованы на текстурной группе кроме первой.}}
{{bug|$texturegroup не воспринимаются отдельно друг от друга, группы текстур разделяются на части по 32 скина. Не более чем 32 скина могут быть использованы на текстурной группе кроме первой.}}
{{bug:ru|Каждый материал, изменяемый группой текстур, должен быть указан в первом скине первой группы текстур. Получается, все группы текстур должны иметь одно количество материалов в их первом скине, чтобы материалы не перемешались.}}
{{bug|Каждый материал, изменяемый группой текстур, должен быть указан в первом скине первой группы текстур. Получается, все группы текстур должны иметь одно количество материалов в их первом скине, чтобы материалы не перемешались.}}
Из-за всех этих проблем несмотря на то, что указано в синтаксисе, использование нескольких <code>$texturegroup</code> команд на самом деле не позволит несколько состояний скина, в отличии от {{ent:ru|$bodygroup}}.
Из-за всех этих проблем несмотря на то, что указано в синтаксисе, использование нескольких <code>$texturegroup</code> команд на самом деле не позволит несколько состояний скина, в отличии от {{ent:ru|$bodygroup}}.


Line 100: Line 103:


== Больше информации ==
== Больше информации ==
* Скины также могут изменять {{ent:ru|$bumpmap}}, {{ent:ru|$surfaceprop}} и др. опции в [[VMT/ru|VMT]]. Также для оптимизации можно использовать {{ent:ru|$lod}} и [[LOD Models|LOD модели]].
* Скины также могут изменять {{ent:ru|$bumpmap}}, {{ent:ru|$surfaceprop}} и другие параметры {{L|VMT}}. Также для оптимизации можно использовать {{ent:ru|$lod}} и {{L|LOD Models|LOD модели}}.
* Все альтернативные текстуры должны иметь ту же {{ent:ru|UV map}} развёртку.
* Все альтернативные текстуры должны иметь ту же {{L|UV_Map|развёртку}}.
* Хоть [[StudioMDL_(Source)/ru|StudioMDL]] и имеет встроенный лимит в 32 уникальных материала, он технически поддерживает до 1024 скинов до тех пор, пока они состоят из 32 материалов.
* Хоть {{L|StudioMDL_(Source)|StudioMDL}} и имеет встроенный лимит в 32 уникальных материала, он технически поддерживает до 1024 скинов до тех пор, пока они состоят из 32 материалов.
* {{tf2}} Почти каждая покрашенная под цвет команды модель имеет как минимум 2 скина. Обычно первый скин для команды RED, а второй скин для команды BLU.
* {{tf2}} Почти каждая покрашенная под цвет команды модель имеет как минимум 2 скина. Обычно первый скин для команды RED, а второй скин для команды BLU.


== See Also ==
== See also ==
* [[Multiple Skins for a Single Model|Несколько скинов на одной модели]]
* {{L|Multiple Skins for a Single Model|Несколько скинов на одной модели}}
* {{ent:ru|$cdmaterials}}
* {{ent:ru|$cdmaterials}}
* {{ent:ru|$renamematerial}}
* {{ent:ru|$renamematerial}}
* {{ent:ru|$bodygroup}} - То же самое, что и {{ent:ru|$texturegroup}}, но для частей модели.
* {{ent:ru|$bodygroup}} - То же самое, что и {{ent:ru|$texturegroup}}, но для частей модели.


[[Category:QC Commands:ru|texturegroup]]
{{ACategory|QC Commands|texturegroup}}

Latest revision as of 03:52, 12 July 2024

English (en)Français (fr)Русский (ru)Translate (Translate)

$texturegroup - это QC команда(en), доступно для всех игр на движке Source Source.

Broom icon.png
This article or section needs to be cleaned up to conform to a higher standard of quality because:
перевод ужасный. Во первых переведены команды, "name"... и т.д. которые на самом деле не должны быть переведены (так как это исходные команды и они на английском. Имеется тавтология, некоторые предложения просто смысл не имеют
For help, see the VDC Editing Help and Wikipedia cleanup process. Also, remember to check for any notes left by the tagger at this article's talk page.
Она позволяет модели иметь несколько скинов(en), состоящих из одного или нескольких материалов.

Скины используются в моделях для добавления вариантов их внешнего вида без создания новых моделей.

Plasticcrate01.jpg

Синтаксис

$texturegroup <имя>
{
	{ "<стандартный материал>" } //Скин 0 (стандартный)
	{ "<новый материал>"       } //Скин 1
 	[...]
}
имя
Имя группы текстур.
Icon-Bug.pngБаг:StudioMDL(en) требует имя, но оно никак не используется. Обычно группы текстур называют skinfamilies.  [нужно проверить в ?]
стандартный материал
Название материала(en) (VMT(en)) на референс модели.
новый материал
Название материала(en) (VMT(en)), который будет заменять материал выше.


У моделей с несколькими материалами $texturegroup принимает несколько материалов за строку. При таком использовании первый скин будет указывать заменяющиеся материалы. Если какой-либо материал не указан, то его замена не произойдет, даже если его указать в следующих строках.

$texturegroup <имя>
{
	{ "<стандартный материал 1>" "<стандартный материал 2>" [...] } //Скин 0 (стандартный)
	{ "<новый материал 1>"       "<новый материал 2>"       [...] } //Скин 1
	[...]
}

StudioMDL(en) позволяет использовать до 32 уникальных материалов на модели. Этот лимит встроен в компилятор, но его можно увеличить используя пропатченный StudioMDL(en).

Tip.pngСовет:Если нужно заменить основную текстуру в скине, можно скопировать изначальный материал и изменить его название и его параметр $basetexture
Icon-Bug.pngБаг:Вы должны добавить пробелы между кривыми скобками {} и названием материала. {skin_0} работать не будет, в отличие от { skin_0 }.  [нужно проверить в ?]

Примеры

$texturegroup rockcliff_cluster01
{
	{ rockcliff02a }
	{ rockcliff02b }
	{ rockcliff02c }
}
$cdmaterials models\bots\sniper models\effects
$texturegroup skinfamilies
{
	{ sniper_bot_red  sniper_bot_head_red  }
	{ sniper_bot_blue sniper_bot_head_blue }

	{ invulnfx_red    invulnfx_red         }
	{ invulnfx_blue   invulnfx_blue        }
}
$cdmaterials models\player\hvyweapon
$texturegroup skinfamilies
{
	{ heavy_head_red        eyeball_r      eyeball_l      hvyweapon_red               hvyweapon_red_sheen               }
	{ heavy_head_blue       eyeball_r      eyeball_l      hvyweapon_blue              hvyweapon_blue_sheen              }

	{ heavy_head_red_invun  eyeball_invun  eyeball_invun  hvyweapon_red_invun         hvyweapon_red_invun               }
	{ heavy_head_blue_invun eyeball_invun  eyeball_invun  hvyweapon_blue_invun        hvyweapon_blue_invun              }

	{ heavy_head_zombie     eyeball_zombie eyeball_zombie heavy_red_zombie_alphatest  heavy_red_zombie_alphatest_sheen  }
	{ heavy_head_zombie     eyeball_zombie eyeball_zombie heavy_blue_zombie_alphatest heavy_blue_zombie_alphatest_sheen }

	{ heavy_head_red_invun  eyeball_invun  eyeball_invun  hvyweapon_red_zombie_invun  hvyweapon_red_zombie_invun        }
	{ heavy_head_blue_invun eyeball_invun  eyeball_invun  hvyweapon_blue_zombie_invun hvyweapon_blue_zombie_invun       }
}

Использование нескольких текстурных групп

Использование более, чем одной $texturegroup разрешено, но не рекомендуется. Поведение нескольких групп текстур как минимум неинтуитивно.

Icon-Bug.pngБаг:Количество скинов определяется только первой группой текстур. Это значит, что для того, чтобы получить доступ к другим текстурным группам количество скинов должно превышать 31 (32 в HLMV(en)).  [нужно проверить в ?]
Icon-Bug.pngБаг:$texturegroup не воспринимаются отдельно друг от друга, группы текстур разделяются на части по 32 скина. Не более чем 32 скина могут быть использованы на текстурной группе кроме первой.  [нужно проверить в ?]
Icon-Bug.pngБаг:Каждый материал, изменяемый группой текстур, должен быть указан в первом скине первой группы текстур. Получается, все группы текстур должны иметь одно количество материалов в их первом скине, чтобы материалы не перемешались.  [нужно проверить в ?]

Из-за всех этих проблем несмотря на то, что указано в синтаксисе, использование нескольких $texturegroup команд на самом деле не позволит несколько состояний скина, в отличии от $bodygroup.

Если модель требует несколько состояний текстур, то они должны быть сделаны настройкой скинов в подобной манере:

$texturegroup skinfamilies
{
	{ <состояние 1> <подсостояние 1> }
	{ <состояние 1> <подсостояние 2> }
	{ <состояние 2> <подсостояние 1> }
	{ <состояние 2> <подсостояние 2> }
	[...]
}

Замена материала материалом с таким же именем в другой папке

.. выводит путь поиска материала на директорию выше, тем самым позволяя вам использовать материалы из другой папки, как $popd.
В таком случае добавление новых строк $cdmaterials не требуется.
Если Вы просто хотите использовать другой материал, не имеющий то же самое имя, Вы можете просто использовать ещё одну строку $cdmaterials.

Пример из Left 4 Dead 2 Left 4 Dead 2:

$cdmaterials "models\c2m5_helicopter_extraction\"
$texturegroup "skinfamilies"
{
	{ "helicopter_news_adj"                "helicopter_news2"                } //helicopter_news2 из models\c2m5_helicopter_extraction\
	{ "..\hybridPhysx\helicopter_news_adj" "..\hybridPhysx\helicopter_news2" } //helicopter_news2 из models/hybridPhysx
	{ "..\hybridPhysx\helicopter_army"     "..\hybridPhysx\helicopter_army2" } //Можно было просто использовать ещё одну строку $cdmaterials и использовать "helicopter_army2"
}

Больше информации

  • Скины также могут изменять $bumpmap, $surfaceprop и другие параметры VMT(en). Также для оптимизации можно использовать $lod и LOD модели(en).
  • Все альтернативные текстуры должны иметь ту же развёртку(en).
  • Хоть StudioMDL(en) и имеет встроенный лимит в 32 уникальных материала, он технически поддерживает до 1024 скинов до тех пор, пока они состоят из 32 материалов.
  • Team Fortress 2 Почти каждая покрашенная под цвет команды модель имеет как минимум 2 скина. Обычно первый скин для команды RED, а второй скин для команды BLU.

See also