Frage von GreenSkyP, 30

Mit Python in Blender Games das Licht level auslesen?

Ich mache in Blender ein Spiel und würde gern dort ein Skript schreiben mit Python wo ich die aktuelle stärke des Lichts auslesen kann. Also in einem Raum oder so nicht in der Lampe selber. Ich freu mich auf jede Antwort . Mit vielen Grüßen Green

Antwort
von Voltiment555, 16

Um an einem bestimmten Punkt die Lichtstärke zu messen geht das mit Python leider nicht, da keine einzelnen Lichtpartikel berechnet werden (oder so... weiß nicht genau). Da müsste man an der Software was ändern.

Was du machen kannst wäre in einem bestimmten Umkreis (z. B. 3 Meter) die Lampen zu erfassen und den Durchschnitt von deren Licht-Level zu berechnen. Das könntest du mit einem Near-Sensor machen.

Parente dazu einfach einen Würfel an die Lampe(n) [also pro Lampe einen Würfel an die Lichtquelle] - unter den Physik-Einstellungen Actor einschalten!

Dann verbindest du einen Near-Sensor mit einem Python-Controller. Dann lässt du per Python alle Objekte in der Umgebung (hier 3m), welche den Namen "Lamp" oder was auch immer beinhalten (Die Würfel müssen erkannt werden, da Lampen nicht von Sensoren erfasst werden können!)

Dann von jedem Cube das Parent-Objekt (also die Lampe) ausfindig machen, mit object.parent. Dann die Anzahl der erfassten Objekte erfassen und eben alle addierten Lichtlevel durch die Anzahl der Objekte teilen.

Ich denke nicht, dass ich dir damit wirklich helfen konnte, aber das war einfach mal so eine Idee wie du das machen könntest :)

Das Licht-Level auslesen würde nach meinem Wissen nach nicht gehen. Aber vielleicht kannst du ja mit meiner Idee was anfange :D

Grüße, Daniel

PS: Nur so aus Interesse, wofür brauchst du das Licht-Level? :D

Kommentar von GreenSkyP ,

Danke die Idee ist super. Ich brauche das dar ich ein Horror Spiel mache in Blender und ich wollte das der gegener die Hauptfigur nur unter bestimmtem Lichtbedingungen

Kommentar von Voltiment555 ,

Du kannst ja für die Räume einzeln einstellen wo der Gegner erscheinen/da sein darf oder nicht. Das ist viel einfacher als mit so einem Skript. Oder mach ein Paar unsichtbare Cubes als Kollision wo der Gegner eben nicht lang darf. Ich fände das einfacher als mit so einem komplizierten Skript. :)

Ich mache übrigens auch ein Horror-Game :D

Kommentar von GreenSkyP ,

Nja es soll ebend so sein das du sich die Licht Verhältnisse oft ändern durch Flackernden Lampen aber mit den Collisions Boxen werde ich im hinter Kopf behalten. ; )

Kommentar von Voltiment555 ,

Ja mach das :) schreib mir wenn du noch weiter Hilfe brauchst. :)

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten