Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
SpriteBase3D
Hérite de : GeometryInstance3D < VisualInstance3D < Node3D < Node < Object
Hérité par : AnimatedSprite3D, Sprite3D
Nœud sprite 2D dans l’environnement 3D.
Description
Un nœud qui affiche des informations de texture 2D dans un environnement 3D. Voir aussi Sprite3D où de nombreuses autres propriétés sont définies.
Propriétés
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
Méthodes
generate_triangle_mesh() const |
|
get_draw_flag(flag: DrawFlags) const |
|
get_item_rect() const |
|
void |
set_draw_flag(flag: DrawFlags, enabled: bool) |
Énumérations
enum DrawFlags: 🔗
DrawFlags FLAG_TRANSPARENT = 0
Si elle est définie, la transparence de la texture et l'opacité sont utilisées pour rendre invisibles ces parties du sprite.
DrawFlags FLAG_SHADED = 1
Si définies, les lumières dans l'environnement affecte le sprite.
DrawFlags FLAG_DOUBLE_SIDED = 2
Si défini, le texture sera aussi visible de derrière. Sinon, la texture sera invisible en regardant par derrière.
DrawFlags FLAG_DISABLE_DEPTH_TEST = 3
Désactive le test de profondeur, de sorte que cet objet sera dessiné devant tous les autres. Cependant, les objets dessinés après lui dans l'ordre d'affichage peuvent être devant.
DrawFlags FLAG_FIXED_SIZE = 4
L'étiquette est mise à l'échelle suivant la distance pour qu'elle apparaisse toujours à la même taille à l'écran.
DrawFlags FLAG_MAX = 5
Représente la taille de l'énumération DrawFlags.
enum AlphaCutMode: 🔗
AlphaCutMode ALPHA_CUT_DISABLED = 0
Ce mode réalise un mélange l'opacité standard. Il peut afficher des zones translucides, mais des problèmes de tri selon la transparence peuvent être visibles lorsque plusieurs matériaux transparents se chevauchent.
AlphaCutMode ALPHA_CUT_DISCARD = 1
Ce mode n'autorise uniquement que les pixels entièrement transparents ou entièrement opaques. Des bords nets seront visibles à moins qu'une certaine forme d'anti-crénelage dans l'espace-écran ne soit activée (voir ProjectSettings.rendering/anti_aliasing/quality/screen_space_aa). Ce mode a cependant l'avantage de ne pas souffrir de problèmes de tri de transparence lorsque plusieurs matériaux transparents se chevauchent. Ce mode est également connu sous le nom d'alpha testing ou 1-bit transparency.
AlphaCutMode ALPHA_CUT_OPAQUE_PREPASS = 2
Ce mode dessine des pixels entièrement opaques lors de la pré-passe de profondeur. Ceci est plus lent que ALPHA_CUT_DISABLED ou ALPHA_CUT_DISCARD, mais il permet d'afficher des zones translucides et des bords lisses tout en utilisant un tri approprié.
AlphaCutMode ALPHA_CUT_HASH = 3
Ce mode coupe toutes les valeurs en dessous d'un seuil dépendant de la position, le reste restera opaque.
Descriptions des propriétés
float alpha_antialiasing_edge = 0.0 🔗
Le seuil à partir duquel l'anticrénalage sera appliqué sur le canal alpha.
AlphaAntiAliasing alpha_antialiasing_mode = 0 🔗
void set_alpha_antialiasing(value: AlphaAntiAliasing)
AlphaAntiAliasing get_alpha_antialiasing()
Le type d’anticrénelage alpha à appliquer.
AlphaCutMode alpha_cut = 0 🔗
void set_alpha_cut_mode(value: AlphaCutMode)
AlphaCutMode get_alpha_cut_mode()
The alpha cutting mode to use for the sprite.
float alpha_hash_scale = 1.0 🔗
L'échelle de hachage pour Alpha Hash. Valeurs recommandées entre 0 et 2.
float alpha_scissor_threshold = 0.5 🔗
Le seuil à partir duquel le ciseau alpha ignorera les valeurs.
La direction que pointe la face avant de cette texture.
BillboardMode billboard = 0 🔗
void set_billboard_mode(value: BillboardMode)
BillboardMode get_billboard_mode()
Le mode de billboard à utiliser pour le sprite.
Note : Lorsque la mode de billboard est activé et que le matériau projette également des ombres, les billboards feront face à la caméra dans la scène lors du rendu des ombres. Dans les scènes avec plusieurs caméras, l'ombre prévue ne peut pas être déterminée et cela résultera en un comportement indéfini. Voir la Pull Request GitHub #72638 pour plus de détails.
Si true, la texture sera centrée.
Si true, la texture est aussi affichée de dos, si false, elle est invisible de dos.
Si true, la texture est rendue à la même taille indépendamment de la distance. La taille de la texture à l'écran est la même que si la caméra était à 1.0 unités de l'origine de la texture, peu importe la distance réelle à la caméra. Le champ de vision de la Camera3D (ou Camera3D.size en mode orthogonal/frustum) affecte toujours la taille à laquelle le sprite est dessiné.
Si true, la texture est inversée horizontalement.
Si true, la texture est inversée verticalement.
Color modulate = Color(1, 1, 1, 1) 🔗
Une valeur de couleur utilisée pour multiplier les couleurs de la texture. Peut être utilisé pour la coloration d'ambiance ou pour simuler la couleur de la lumière ambiante.
Note : Contrairement à CanvasItem.modulate pour 2D, les couleurs avec des valeurs supérieures à 1.0 (overbright) ne sont pas supportées.
Note : Si un GeometryInstance3D.material_override est défini sur le SpriteBase3D, la redéfinition du matériau doit être configurée pour prendre en compte les couleurs des sommets pour l'albédo. Sinon, la couleur définie dans modulate sera ignorée. Pour un BaseMaterial3D, BaseMaterial3D.vertex_color_use_as_albedo doit valoir true. Pour un ShaderMaterial, ALBEDO *= COLOR.rgb; doit être inséré dans la fonction fragment() du shader.
Si true, les tests de profondeur sont désactivés et l'objet sera dessiné suivant son ordre de rendu et non suivant sa distance.
Vector2 offset = Vector2(0, 0) 🔗
Le décalage du dessin de la texture.
Note : Lorsque vous augmentez offset.y dans Sprite3D, le sprite se déplace vers le haut dans l'espace global (c.-à-d. +Y est le haut).
La taille d'un des pixels de la sprite pour définir sa taille en 3D.
Définit la priorité de rendu pour le texte. Les objets plus prioritaires seront affichés par-dessus les objets les moins prioritaites.
Note : Cela ne s'applique que si alpha_cut est défini à ALPHA_CUT_DISABLED (c'est la valeur par défaut).
Note : Cela ne s'applique qu'au tri des objets transparents. Cela n'affectera pas la façon dont les objets transparents sont triés par rapport aux objets opaques. C'est parce que les objets opaques ne sont pas triés, alors que les objets transparents sont triés de l'arrière vers l'avant (et suivant leur priorité).
Si true, la Light3D dans l'Environment a un effet sur le sprite.
TextureFilter texture_filter = 3 🔗
void set_texture_filter(value: TextureFilter)
TextureFilter get_texture_filter()
Drapeaux de filtrage pour la texture.
Note : Le filtrage linéaire peut provoquer des artéfacts autour des bords, qui sont particulièrement visibles sur les textures opaques. Pour éviter cela, utilisez des textures avec des couleurs transparentes ou identiques autour des bords.
Si true, la transparence et l'opacité des textures sont utilisées pour rendre invisibles ces parties du sprite.
Descriptions des méthodes
TriangleMesh generate_triangle_mesh() const 🔗
Renvoie un TriangleMesh avec les sommets du sprite suivant sa configuration actuelle (comme axis et pixel_size).
bool get_draw_flag(flag: DrawFlags) const 🔗
Renvoie la valeur de l'option donnée.
Renvoie le rectangle représentant ce sprite.
void set_draw_flag(flag: DrawFlags, enabled: bool) 🔗
Si true, le drapeau spécifié sera activé.