تخطَّ إلى المحتوى

Material properties

هذا المحتوى غير متوفر بلغتك بعد.

A Glow toggle's Properties rows with 1 the renderer, 2 the property, 3 On value, 4 Set a value when off, 5 Off value.12345
  1. The row's renderer: the mesh whose materials the row changes.
  2. The property, by the name the shader gives it.
  3. On value, here a colour.
  4. Set a value when off.
  5. Off value.

The second row changes a number with a range, so its On value is a slider.

Use the Properties section to change one value of the materials a mesh already has: a tint, an emission colour that makes a part glow, a smoothness, a dissolve amount, a hue shift.

  • To put a whole other material on the mesh, use Material slots.
  • To move the value with a dial, add the row to a radial, which gives it Min and Max.

A toggle, a radial and a trigger have this section. A trigger in Flip mode has no effects of its own, so it has none. The section shows once it has a row. Add it with + Add effect.

Shown in: Simple and Advanced, once it has a row · Default: no rows · Choices: a renderer and a shader property

The list of property rows. + Add adds an empty row. On a narrow inspector, a row's controls wrap onto more lines, and the × that removes the row stays at its top right. Sliders and colour fields sit on a line of their own.

Shown in: Simple and Advanced · Default: empty · Choices: a mesh of this avatar

The mesh whose materials the row changes. Drag it from the Hierarchy onto the field, or press the small circle at its right end and pick it from the avatar's meshes.

The row changes the property on every material of that mesh that has it, in every slot.

Shown in: Simple and Advanced · Default: Pick property · Choices: the colours, numbers and vectors the mesh's shaders list

The button opens a list with a search field. Other... comes first, then the shaders' properties grouped by their first letter, or by groups of letters for a shader with more than 40. The list shows the name the shader gives each property, which can be short, such as Color, with the property's own name, such as _EmissionColor, beside it when the two differ. The search finds a property by either name.

Once a property is picked, the button shows its name. Hold the pointer over the button to read the property's own name. Picking a property copies the material's current value into the row, so the first change starts from what you see.

Textures are not in the list. Neither is a property the shader hides from the material's inspector: press Other... and type its name.

Shown in: Simple and Advanced

Opens a field where you can type any property name, such as _DissolveAmount. AvatarDoc reads the property's type from the materials. When no material of the mesh has it, the row keeps its type and a warning says the property is missing.

Shown in: Simple and Advanced, while the row's property is not one the shaders list · Default: Float · Choices: Float, Colour, Vector

The kind of value the property holds. The row asks for it only when AvatarDoc cannot tell from the shader, such as before a property is picked. Once you pick a property from the list, the choice goes away.

Shown in: Simple and Advanced, on a toggle and a trigger · Default: the material's current value once a property is picked · Choices: a number, a colour or four numbers, as the property needs

The value the property has while the toggle is on, or while the trigger fires. A number with a range shows a slider, a plain number a number field, a colour a colour field with brightness for glow, and a vector four number fields.

Shown in: Simple and Advanced, on a toggle and a trigger · Default: Off · Choices: On, Off

Off: while the toggle is off, the property goes back to the material's own value. On: an Off value field appears, and the toggle writes that value instead. A toggle holds it the whole time it is off. A trigger sets it when the avatar loads and every time its effect ends, unless another layer owns the property, and then leaves the property to whatever else moves it; on an avatar with Write Defaults on, a Hold trigger holds it the whole time it rests. The field starts at the material's current value, so nothing changes until you edit it. See Off values.

Shown in: Simple and Advanced, while Set a value when off is on · Default: the material's current value · Choices: the same kind of value as On value

The value the property has while the toggle is off.

Shown in: Simple and Advanced, on a radial · Default: 0, or black for a colour · Choices: the same kind of value as Max

The value at the lowest point of the dial.

Shown in: Simple and Advanced, on a radial · Default: the material's current value once a property is picked · Choices: a number, a colour or four numbers, as the property needs

The value at the highest point of the dial. The dial blends between Min and Max.

Shown in: Advanced · Default: Off · Choices: On, Off

Right-click a row and choose Pick by hand when copying for the object of the row's renderer. When you copy the menu to another avatar, the window then has you pick the object to use on the other version instead of looking at the same place, for an object a world drop holds, for example. The component lists every marked object under Pick by hand.

While a toggle is off, the property takes the value of the first material of the mesh that has it, and AvatarDoc writes that value to every material of the mesh. When the materials of one mesh hold different values for the property, a warning says that they all get the first one while the toggle is off. Edit the materials first, or tick Set a value when off. One exception: a Poiyomi material that marks the property Renamed (when locked) keeps its own value in the game while the toggle is off, under the property's new name, so the warning leaves it out.

When no material of the mesh has the property, the row is skipped with a warning. One case works anyway: the same toggle swaps in a material that has the property, in its Materials section. AvatarDoc then reads the value from that material, as a dissolve effect needs. A locked Poiyomi material that renamed the property has it under its new name, and AvatarDoc reads the value from there, also where the locked material keeps an unused copy under the old name.

The property's values go into the entry's own layer in the avatar's FX animator, like its blend shapes.

Poiyomi locks its materials at upload, and a locked material keeps every property at its value unless the property is marked as animated. AvatarDoc knows a Poiyomi material by its shader's name and reads the marks the material keeps. It reads the mesh's own materials, every material an AvatarDoc control or trigger of the avatar swaps onto the mesh, and the material a swap that is on by default replaces, since Poiyomi locks those at upload too. A material variant is read through the material it is made from, which is the one Poiyomi locks:

  • Animated (when locked): the value is written under the property's own name.
  • Renamed (when locked): the value is written twice, under the property's own name, which works while the material is not locked, and under the name Poiyomi gives the property when it locks the material. A locked material keeps the new name it was locked with, also after you rename or copy it. A property you picked from a locked material already has the new name: it is written under that name and, while the material is unlocked, under its own name too, unless another material of the mesh still changes the property under its own name in the game.
  • Not marked: the change would do nothing in the game, so a warning says so. Its button Mark as animated marks the property Animated (when locked) on those materials, in one Undo step. A locked component refuses it. A material that is already locked gets a warning without a button: unlock it, mark the property, then lock it again.

The scene preview writes the value under the name each material draws with. Material swaps made outside AvatarDoc's own material rows, such as your own animations, a custom animation of an entry, Modular Avatar's Material Swap or VRCFury, are not checked: mark the property on the materials they swap in yourself. Other shaders that lock their materials are not checked either: mark the property as animated in their own inspector before they lock.

Docs for AvatarDoc 0.7.1