lima-city: Webhosting, Domains und Cloud
2 Pluspunkte 0 Minuspunkte

Ich habe 2 Kameras, eine rendert alle Objekte auf Layer 1 und die andere rendert alle Objekte auf Layer 2. Wie kann ich den Layer von einem Object in der _ready Funktion ändern so das er für remote Player sichtbar ist aber nicht für mich selbst?

get_tree().root.get_node("Main/Boxes/Box1/MeshInstance3D").layers = 3

Wenn ich den Layer auf 3 setze dann scheint es zwar das der Cube anders gerendert wird weil er im Raum herum fliegt aber er sollte ja eigentlich garnicht sichtbar sein.

von  

2 Antworten

2 Pluspunkte 0 Minuspunkte

In Godot 4 gibt es zwei relevante Eigenschaften, um Layer zu filtern:

  • cull_mask: Bitmask die bestimmt, welche Layer von der Kamera gerendert werden. 
  • layers: Bitmask die bestimmt auf welchem Layer ein Objekt gerendert wird.

Eine Bitmask ist eine Zahl, bei der jedes Bit (einzelne Position in der Binärdarstellung) für eine spezifische Eigenschaft oder einen Zustand steht. In Bezug auf Layers bedeutet das, dass jedes Bit angibt, ob ein bestimmter Layer aktiv ist (1) oder nicht (0).

  • Layer 1 (Bit 0) aktiv: 0000 0000 0000 0000 0001 (dezimal: 1) 
  • Layer 2 (Bit 1) aktiv: 0000 0000 0000 0000 0010 (dezimal: 2) 
  • Layer 3 (Bit 2) aktiv: 0000 0000 0000 0000 0100 (dezimal: 4) 
  • Layer 4 (Bit 3) aktiv: 0000 0000 0000 0000 1000 (dezimal: 8)

Wenn du mehrere Layers aktivieren möchtest, kombinierst du sie mit einer bitweisen ODER (|) Operation.

mesh.layers = (1 << 0) | (1 << 3)

Um ein Layer zu deaktivieren, nutzt du eine bitweise UND Operation (&) mit der negierten Maske (~)

mesh_instance.layers &= ~(1 << 1)

von (718 Punkte)  
0 Pluspunkte 0 Minuspunkte
Wenn du den Layer auf 3 setzt werden Layer 1 und Layer 2 gerendert. Nicht Layer 3. Um Layer 3 zu rendern müsstest du den Layer auf 4 setzen.
von (493 Punkte)  
Diese Community basiert auf dem Prinzip der Selbstregulierung. Beiträge werden von Nutzern erstellt, bewertet und verbessert – ganz ohne zentrale Moderation.

Wer hilfreiche Fragen stellt oder gute Antworten gibt, sammelt Punkte. Mit steigender Punktzahl erhalten Mitglieder automatisch mehr Rechte, zum Beispiel

  • Kommentare verfassen
  • Fragen und Antworten bewerten
  • Themen von Fragen bearbeiten
  • Fragen, Antworten und Kommentare bearbeiten
  • Inhalte ausblenden

So entsteht eine Plattform, auf der sich Qualität durchsetzt – getragen von einer engagierten Gemeinschaft.

2.3k Fragen

2.8k Antworten

261 Kommentare

13 Nutzer