Nur sichtbares Rendern

Status
Nicht offen für weitere Antworten.

dergrüne

Aktives Mitglied
Servus,

ich hätte mal eine Frage zu canvas3D und zwar folgendes:

Ich habe eine rotierende Kugel erstellt, welche ich aber gewollt unten links in die Ecke stelle, so dass man nur einen Teil der Kugel sieht.

Jetzt stellt sich mir die Frage ob ich das was an der Performance drehen kann, es gibt zwar keine Probleme aber es wäre evt. mal hilfreich zu wissen. Und zwar wenn man ja richtig drüber nachdenkt, müsste ja der Teil der nicht sichtbar ist, also neben dem Monitor und auch die Rückseite der Kugel nicht gerendert werden, oder?

Kann man das canvas3D irgendwie sagen, dass es nur sichtbare Sachen rendern soll?

Wäre super wenn jemand helfen könnte.

mfg
Der Grüne
 
A

Andre Schaaf

Gast
Tach,

also wenn man mal von einem allgemeinen Modell ausgeht dann gibt es immer ein sogenanntes FOV (Field of View). Dies gibt an in welchem Sichtbereich gerendert werden soll. Nun weis ich nicht genau wie das bei Java3D ist, aber ich schätze mal das der 3D Canvas so eine Funktionalität besitzt. Aber in allen anderen Fällen gibt es die sogenannte Clipping distanz welche du einstellen kannst, Diese besagt das in einem bestimmten bereich vor und nach der "Kamera" gerendert werden soll. Diese kannst du auch von Hand festlegen. Es gibt da
Code:
this.simpleUniverse.getViewer().getView().setBackClipDistance(5000);
this.simpleUniverse.getViewer().getView().setFrontClipDistance(0);
In dem Bereich zwischen Front und Backclip werden dann alle Objekte angezeigt und gerendert. Das erfolgt meines wissens nach in einer Kugel (oder nach Einstellung).

Für den Fall das etwas nicht 100%ig sein sollte korrigiert mich bitte.

MFG Andre
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen


Oben