Material
Beschreibung
Diese Komponente erzeugt ein Material auf einem Objekt mit Geometrie.
Eigenschaften
Eigenschaft | Typ | Standard | Beschreibung |
---|---|---|---|
r | Nummer | 0 | Wert des roten Kanals des Materials [0...255] |
g | Nummer | 0 | Grüner Kanalwert des Materials [0...255] |
b | Nummer | 0 | Wert des blauen Kanals des Materials [0...255] |
textureSrc | String | "" | Die Quelle der Farbkarte, moduliert nach Farbe (falls eingestellt) |
Rauheit | Nummer | 0 | Wie rau das Material erscheint [0...1] |
roughnessMap | String | "" | Grüner Kanal dieser Texturkarte Ressource die Rauheit, multipliziert mit der Rauheitszahl. |
Metallizität | Nummer | 0 | Wie metallisch das Material erscheint [0...1] |
metalnessMap | String | "" | Der blaue Kanal dieser Texturressource beeinflusst, wie metallisch das Material erscheint. |
normalScale | Nummer | 0 | Wie stark die Normal Map (falls eingestellt) das Material beeinflusst [0...1] |
normalMap | String | "" | Quelle der Normal Map der Textur. |
Opazität | Nummer | 0 | Gesamt-Alpha/Transparenz des Materials [0...1] |
opacityMap | String | "" | Alpha/Transparenz, die über eine Texturressource abgebildet wird. |
emissiveIntensität | Nummer | 0 | Gesamtintensität der emittierenden Karte [0...1] |
emissiveMap | String | "" | Die Emissionsstärke wird als Texturressource abgebildet. Moduliert durch Farbe und Intensität der Emission. |
emittierendR | Nummer | 0 | Rotkanal-Emissionsfarbe des Materials [0...255] |
emittierendG | Nummer | 0 | Emissionsfarbe des grünen Kanals des Materials [0...255] |
emittierendB | Nummer | 0 | Blaukanal-Emissionsfarbe des Materials [0...255] |
Seite | String | "" | Welche Seiten von Flächen gerendert werden. Wählen Sie zwischen Vorderseite, Rückseite oder doppelt. |
Mischen | String | "" | Überblendung, die bei der Anzeige von Objekten mit diesem Material verwendet werden soll. Wählen Sie aus: keine, normal, additiv, subtraktiv und multiplizieren. |
WiederholungX | Nummer | 0 | Wie oft eine Textur auf der X-Achse in einem Material wiederholt wird. |
WiederholungY | Nummer | 0 | Wie oft eine Textur auf der Y-Achse in einem Material wiederholt wird. |
offsetX | Nummer | 0 | Wie stark eine Textur über ein Material auf der X-Achse versetzt ist. |
offsetY | Nummer | 0 | Wie stark eine Textur über ein Material auf der Y-Achse versetzt ist. |
depthTest | boolean | true | ob beim Rendern dieses Materials die Tiefe getestet werden soll |
depthWrite | boolean | true | ob sich das Rendern dieses Materials auf den Tiefenpuffer auswirkt |
Drahtgitter | boolean | false | Geometrie als Drahtmodell rendern. |
Funktionen
Get
Returns a read-only reference.
Example
ecs.Material.get(world, component.eid)
Set
Ensures the component exists on the entity, then assigns the (optional) data to the component.
Example
ecs.Material.set(world, component.eid, {
r: 255,
g: 0,
b: 0
})
Mutate
Perform an update to the component within a callback function. Return true
to indicate no changes made.
Example
ecs.Material.mutate(world, component.eid, (cursor) => {
cursor.roughness = 0.8;
cursor.wireframe = true;
return false;
})
Remove
Removes the component from the entity.
Example
ecs.Material.remove(world, component.eid)
Has
Returns true
if the component is present on the entity.
Example
ecs.Material.has(world, component.eid)
Reset
Adds, or resets the component to its default state.
Example
ecs.Material.reset(world, component.eid)
Advanced Functions
Cursor
Returns a mutable reference. Cursors are reused so only one cursor for each component can exist at a time.
Example
ecs.Material.cursor(world, component.eid)
Acquire
Same behavior as cursor, but commit must be called after the cursor is done being used.
Example
ecs.Material.acquire(world, component.eid)
Commit
Called after acquire. An optional third argument determines whether the cursor was mutated or not.
Example
ecs.Material.commit(world, component.eid)
ecs.Material.commit(world, component.eid, false)
Dirty
Mark the entity as having been mutated. Only needed in a specific case where systems are mutating data.
Example
ecs.Material.dirty(world, component.eid)