CopyEntity - Surface
Übersicht![](/themes/Standard/arrow.png)
![](/themes/Standard/arrow.png)
![]() |
FuchsiBetreff: CopyEntity - Surface |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo,
Simple Frage, wird beim Aufruf des Befehls "CopyEntity" ein neues Surface erstellt ? |
||
![]() |
Shodan |
![]() Antworten mit Zitat ![]() |
---|---|---|
simple Antwort: NEIN! | ||
www.selfmadegames.de |
BIG BUG |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Jein.
In Blitz3D hast Du nur ein Surface, die Grafikkarte wickelt diese aber getrennt ab(Nur von Interesse falls Du eine SingleSurface-Engine schreiben willst) |
||
B3D-Exporter für Cinema4D!(V1.4)
MD2-Exporter für Cinema4D!(final) |
klepto2 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Um eins klarzustellen: Auch wenn ich kein B3D habe, weiß ich wie B3D arbeitet und ich versichere dir B3D verwendet mehrere Surfaces. Ansonsten könntest du nicht eine Scene mit mehr als 65535 Vertices erstellen.
Eine surface ist nix weiter als eine Klasse wo die verschiedenen Vertexattribute gespeichert werden. Bei Copyentity wird ein neues Entity erstellt, die Zeiger der surfaces jedoch auf die des originals gelenkt. Darum ein klares Nein!. |
||
Matrix Screensaver
Console Modul für BlitzMax KLPacker Modul für BlitzMax HomePage : http://www.brsoftware.de.vu |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
CopyEntity erzeugt ein neues Set an Entity Eigenschaften (scale, position, rotation, color und 1-2 andere Dinge).
Alle kopierten entities teilen jedoch das drunter liegende "mesh" CopyEntity macht von daher nichts anderes als dir ein neues Set von Transformationsdaten zu liefern um das gleiche Mesh noch einmal zu nutzen ohne weiteren RAM zu verheizen. DX7 hat kein Geometry Instancing insofern wird für jedes entity im endeffekt ein eigenes mesh an die Grafikkarte gesendet wird. Aber im System RAM ist es nur einmal vorhanden, damit kannst du 1 mesh ändern und duzende haben die änderung. (wo das sinn macht muss jeder selbst wissen. bei einem RTS zb um alle einheiten eines teams zu erzeugen und so gleich die texturen etc zu haben für alle) |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
Fuchsi |
![]() Antworten mit Zitat ![]() |
---|---|---|
Mein Problem war folgendes: Ich benötige viele kleine Objekte, die zwar alle gleich aussehen ( Größe, Textur, ... ) jedoch unterschiedlich gedreht werden.
Deshalb muss ich jetzt entscheiden, was ich benutze. SingleSurface ohne die Möglichkeit der seperaten Rotation für jedes Objekt, oder CopyEntity, wo ich diese Einschränkung nicht habe. Da noch viel mehr dazukommen wird geht es mir deshalb vorwiegend um die Geschwindigkeit. |
||
![]() |
aMulSieger des Minimalist Compo 01/13 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wieso kannst du die einzelnen Objekte mit SingleSurface nicht drehen?
Also meine Sprite-Engine kann das... |
||
Panic Pong - ultimate action mashup of Pong and Breakout <= aktives Spiele-Projekt, Downloads mit vielen bunten Farben!
advASCIIdraw - the advanced ASCII art program <= aktives nicht-Spiele-Projekt, must-have für ASCII/roguelike/dungeon-crawler fans! Alter BB-Kram: ThroughTheAsteroidBelt - mit Quelltext! | RGB-Palette in 32²-Textur / Farbige Beleuchtung mit Dot3 | Stereoskopie in Blitz3D | Teleport-Animation Screensaver |
![]() |
Fuchsi |
![]() Antworten mit Zitat ![]() |
---|---|---|
![]() Also die SingleSurface - Sprites lassen sich ja auch drehen, aber die Textur bleibt doch trotzdem gerade, oder ? |
||
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Nein, da die UV-Koordinaten an das Mesh gebunden sind, wird die Textur mit dem Mesh gedreht. Allerdings wird so ein Spritesystem kaum schneller bzw. sogar langsamer sein, als reines 2D von BlitzBasic (wenn man mal vom Spritesystem und den zugekommenen Möglichkeiten absieht).
Ohne immer wieder Werbung machen zu müssen, kannst du dir mal meine Draw3D ansehen (siehe Signaturlink). Diese ist Singlesurface und ermöglicht nahezu alles, was man so braucht. Also Dinge wie Rotation, Skalierung, Imagealpha, eigenes einfärben und Alpha, eigenes grabben von Teilbildern, Frames, Imagelines, und sonstige native Befehle wie Plot, Line, Rect, Oval ... das alles natürlich in Echtzeit und so einfach wie nur möglich zu bediehnen ausgelegt. |
||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
![]() |
Fuchsi |
![]() Antworten mit Zitat ![]() |
---|---|---|
![]() Danke fürs Angebot, allerdings liegt der besondere Reiz für mich darin sowas selbst zu schreiben. Ich werd dann noch ein bisschen herumtüfteln, mal schauen. MfG |
||
Übersicht
![](/themes/Standard/arrow.png)
![](/themes/Standard/arrow.png)
Powered by phpBB © 2001 - 2006, phpBB Group