Gerendert ? -SingleSurface

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

ToeB

Betreff: Gerendert ? -SingleSurface

BeitragDi, Jun 17, 2008 15:29
Antworten mit Zitat
Benutzer-Profile anzeigen
Also, ich hab mir eine SigleSurfaceEngine gecodet, und ich wollte nicht gerenderte Triangles wieder entfernen.

Also ...
  • Wie kann ich prüfen, ob etwas mit RenderWorld gerender wurde und was nicht...
  • Wie kann ich einzenle Triangle oder Vertices, die nicht gerendert worden sind, herausfinden ?
  • Wie kann ich Kollisionsporüfung der einzellen Paticle realisieren ? (Ich löschen jeden schleifen durchgang und mal dann neu)


Ich wäre seh Dankebar wenn mir das jemand erklären könnte...

mfg ToeB
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!

hectic

Sieger des IS Talentwettbewerb 2006

BeitragDi, Jun 17, 2008 17:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Zu 1 und 2 (erscheint mir ein und die selbe Frage)
Ist ein Triangle von der Kamera aus gesehen links oder rechts herum gezeichnet? Ist es rechts herrum gezeichnet, wird es gerendert. Jedoh weiß man immer noch nicht, ob das Triangle durch weitere übermalt/überdeckt wird. Für Partikelengines sollte man solche manuelle Berechnungen tunlichst vermeiden, da jede Grafikkarte sowas 1000mal schneller erledigt.

Zu 3
Du kannst jedem Partikel ein Pivot zuweisen, oder besser umgekehrt, jedem Pivot ein Triangle oder Quad zuweise. Diesem Pivot kannst du dann ein EntityRadius zuweisen, welcher auf der Umgebung kolidiert. Allerdings sollte man vermeiden, jedem Partikel einer Kollisionsprüfung zu unterziehen, da es doch sehr lahm ist. Stattdessen sollte man sich andere Möglichkeiten ausdenken, die zum einen nicht so sehr auffallen und zum anderen trotzdem gut aussehen. Als erstes Beispiel fällt mir das Freewarespiel Levitar 3D ein, welches eine sehr resourcenschonende Partikeleffektmethode benutzt. So etwas muß dann eben jedem selbst einfallen.
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D

ToeB

BeitragDi, Jun 17, 2008 17:51
Antworten mit Zitat
Benutzer-Profile anzeigen
Zu 1 und 2 (hast recht, sind die gleichen Fragen) :
Aber ich will ja die Teile löschen, wen sie nicht gebraucht werden... Oder kann ich das dann auch mit dem Pivot aus 3 machen ?

Zu 3 :
Danke !

mfg ToeB
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!

hectic

Sieger des IS Talentwettbewerb 2006

BeitragDi, Jun 17, 2008 18:10
Antworten mit Zitat
Benutzer-Profile anzeigen
Mit Blitz3D kannst du leider nicht einzelne Vertices oder Trinagles aus einem Objekt löschen. Dazu musst du das ganze Surface löschen (ClearSurface) und anschliessend die restlichen wieder einzeichnen.

Tipp: Das löschen und anschliessende neuzeichnen ist kaum langsamer als nur das verschieben bestehender Vertices eines Objektes.

Die Pivots (solltest du es tatsächlich so machen) müssen natürlich auch extra verwaltet werden. Achte darauf, dass nicht mehr als 200 bis 400 Partikel mit Pivots so rumschwirren. Sonst wird es echt lahm. Nur Partikel gehen locker (je nach Zielgruppe) 2000 - 4000.
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D

Nibor

BeitragDo, Jun 19, 2008 20:14
Antworten mit Zitat
Benutzer-Profile anzeigen
Immer wenn du alles neu erstellst kannst du mit https://www.blitzforum.de/help/EntityInView abfragen,
ob die Pivots in Sichtbereich sind.
Wenn sie das sind erstellst du die Vertices und Triangles des Partikels,
ansonsten lässt du es.
http://www.blitzforum.de/showcase/203/

hectic

Sieger des IS Talentwettbewerb 2006

BeitragDo, Jun 19, 2008 22:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Im Idealfall hast du aber bei Singlesurface nur ein Entity welches ...InView ist oder nicht.

Edit1: Noch was, du musst nicht erst mühsam den Befehl aus der Hilfe raus suchen. Es reicht wenn du in doppelten ekigen Klammern den Befehl schreibst. Also EntityInView.
  • Zuletzt bearbeitet von hectic am Do, Jun 19, 2008 22:44, insgesamt 2-mal bearbeitet
 

Dreamora

BeitragDo, Jun 19, 2008 22:44
Antworten mit Zitat
Benutzer-Profile anzeigen
3) das geht auch erheblich sinnvoller als XX00 pivots mit kollisionsradius (da kannst du nämlich das single surface gleich sparen, die kollision wirds eh komplett vernichten).
1. 1 Pivot. Das wird für InView berechnungen und TForm genutzt (für partikel zur cam ausrichtung)
2. LinePick das letzte partikelposition und nächste position nimmt (-> sehr sehr kurzer linepick)
Das sollte einige bis mehrere welten schneller sein als Blitz3d mit kollision pivots zuzupumpen was garantiert den kollaps bringt wegen n^2 (n = anzahl partikel) kollisionschecks.
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

hectic

Sieger des IS Talentwettbewerb 2006

BeitragDo, Jun 19, 2008 22:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Ist denn LinePick wirklich schneller als EntityRadius? Das müsste ich mal ausprobieren...
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D
 

Dreamora

BeitragDo, Jun 19, 2008 23:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich nutze für projektile nur linepick, da man das auf polygon ebene nutzen kann ohne das Blitz3D total zusammenbricht wenn man nur altepos -> neuepos linepicks macht die ja sinnvollerweise nahezu 0 sind. Damit muss auch gegen fast nichts getestet werden.
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group