menu

Forum

05. Februar 2012, 20:41:45 *

 
Willkommen Gast. Bitte einloggen oder registrieren.

Einloggen mit Benutzername, Passwort und Sitzungslänge
 
 


  Seiten: 1
  Drucken  
NaN
Newbie
*
Beiträge: 28

Biont3D.dcr in eigenes Projekt einbetten
am: 29. April 2008, 15:05:47
 
Ich versuche gerade eine 3D-Welt mit Hilfe von Biont3D darzustellen.
Allerdings ist das nur ein Teil des Projektes.
Ich würde Biont3D ganz gerne in mein Director-Projekt einbetten.
Als externe Verknüfung sozusagen, sodass Biont3D quasi ein "Menüpunkt" in meinem Director-File ist.
Bei einer Webseite ist das ja weniger das Problem.
Da legt man in seiner Seite einen Link an, der auf eine Unterseite veweist, wo dann eben die Biont3D.dcr in das HTML-Dokument eingebettet ist.
Den Rest erledigt der Shockwave-Player.
Ich möchte aber nicht einfach nur eine HTML-Seite erstellen, in der unter anderem der Link zur 3D-Welt enthalten ist, sondern eben eine eigene DCR-Datei, die ich dann einfach nur in eine HTML-Seite integriere bzw. als Standalone exportieren kann.
Der Verweis auf die 3D-Szene bzw. das Einbetten soll in diesem DCR-File enthalten sein, nicht in der Webseite.
(Ich hoffe mir kann jemand folgen)

Allerdings gibt es da immer wieder Probleme, wenn ich mein Projekt veröffentliche.
Er meldet mir ständig, dass HavokExtra oder MoveCursor-Plugin nicht installiert seien.
Zum Einen habe ich zumindest Havok installiert (auch wenn ich damit nicht umgehen kann, aber das ist eine andere Geschichte) und zum anderen dachte ich, dass diese Dinge bereits in der Biont3D.dcr enthalten und "kompiliert" seien.

Unnötig, zu erwähnen, dass das veröffentlichte Dokument dann natürlich nicht funktioniert.
Er meldet mir auch da diese Fehler und öffnet mir anschließend den Browser und zeigt mir dort den Inhalt des Ordners an, in dem sich die DCR-Datei bzw. die Projektor-Datei befindet.

Möglicherweise hat mein Problem nicht direkt mit Biont3D zu tun, aber mit anderen (weniger komplexen) externen Verknüpfungen (allerdings ohne Havok bzw. MoveCursor) habe ich keine Probleme.

Mein veröffentlichtes Dokument liegt auch im selben Ordner wie die Biont3D.dcr und der Ordner Map mit all seinen Unterordnern ist da.
Daran kann es aber doch nicht liegen. Das dient doch nur dazu, die 3D-Daten in Biont3D.dcr zu impoertieren.

Muss ich etwa all die Plugins, die bei Biont3D verwendet werden ebenfalls für meine Director-Datei installiert haben, wenn ich Biont3D einbetten will?
 
Lutz
Administrator
Full Member
*****
Beiträge: 218

Re: Biont3D.dcr in eigenes Projekt einbetten
Antworten #1 am: 02. Mai 2008, 10:30:55
Das ist eine interessante Frage. Ich hab es hier auch noch nicht hinbekommen, die *.dcr in einen Projektor einzubetten. Warum das nicht funktioniert bzw. an welchen Stellen die Fehler genau auftreten ist mir noch unklar.

Was du aber machen kannst ist, die *.dcr Datei als Miaw über deinem Projektor zu öffnen. Dabei sollte die *.dcr als "#tool" window geöffnet werden um immer vor der Bühne zu sein. Dieses Fenster kannst du dann auch zusammen mit der Bühne verschieben.

Ich hab das mal als Demo zusammengebastelt:
http://www.biont3d.com/download/biont3d_miaw.zip

Mehr kann ich im Moment noch nicht anbieten und ich hoffe du kommst damit für den Anfang klar. Noch ich es nicht Möglich die Bühne in den Dimensionen zu verändern, da sonst die Maussteuerung nicht mehr richtig funktioniert. Ich habe in der Demo die dcr Datei auf 800x450 Pixel gekappt, so das unten das Menü nicht zu sehen ist.

Die Xtras müssen aber dennoch alle im Projektor enthalten sein, in der *.dir Datei kannst du sehen, welche das alle sind. Wenn was nicht klappt, bitte beischeid geben, ich hatte noch keine Zeit das alles genauer zu testen.

Grüsse!

« Letzte Änderung: 06. Mai 2008, 01:31:46 von Lutz »
NaN
Newbie
*
Beiträge: 28

Re: Biont3D.dcr in eigenes Projekt einbetten
Antworten #2 am: 06. Mai 2008, 01:13:13
 
Gut zu wissen, dass ich da nicht der Einzige bin, der das nicht versteht.
Aber Danke für das Beispiel.
Das ist in etwa genau das, was ich gesucht habe.
 
NaN
Newbie
*
Beiträge: 28

Re: Biont3D.dcr in eigenes Projekt einbetten
Antworten #3 am: 06. Mai 2008, 13:27:15
 
Noch eine Frage, die bestimmt nicht unbedingt nur auf biont3d zutrifft:
Kann man bei diesem Beispiel eigentlich auf die Darsteller der externen *.dcr Anwendung zugreifen?
Ich möchte z.B. die Sache mit den Hyperlinks etwas anders lösen.
Da bei der Standalone-Version die Hyperlinks nicht funktionieren, will ich bestimmte Objekte in der 3d-Szene von meiner Director-Datei aus ansteuern.
Es soll sich dann in meinem Projektor ein "Fenster" öffnen mit irgendwelchen Infos zu diesen Objekten.
Die Frage ist nur, kann man überhaupt über diesem Weg auf die w3d-Datei und deren Objekte zugreifen? Quasi von meinem Director-File über die externe biont3d.dcr auf die wiederum externe w3d-Datei.
Wenn ja, wie heißt der 3d-Darsteller in der biont3d.dcr? (ich schätze den Namen werde ich für das Script dann brauchen)

Eigentlich brauche ich Biont3d nur wegen der Kollisionsabfrage.
Ich habe schon versucht mit Hilfe von ModelsUnderRay eigene Scripte dazu zu schreiben. Allerdings bin ich mit dem Ergebnis nicht sehr zufrieden und würde daher die Kollision lieber auf Basis einer Physikengine realisieren.
Ich bin jedoch noch recht neu auf diesem Gebiet und bin daher froh, dass es sowas wie Biont3d gibt. Da kann man sich getrost aufs Modellieren und die Oberfläche konzentrieren. Jedoch scheint es mir schwierig, mit Biont3d alle anderen Interaktionen in der 3d-Szene selbst zu realisieren.
 
Lutz
Administrator
Full Member
*****
Beiträge: 218

Re: Biont3D.dcr in eigenes Projekt einbetten
Antworten #4 am: 06. Mai 2008, 17:18:04
Ok, ich hab da eben noch ein kleines Update eingebaut, so das du jetzt Events auf Modelle legen kannst. Ist die gleiche Vorgehensweise wie bei Hyperlinks, nur die schreibweise ist etwas anders.

Anstelle von "link" muss man jetzt "event" verwenden:

also Nullobjekt so benennen:
event_01|meinevent

In deinem Directorprojekt muss dann noch ein Sprite auf der Bühne sein, dass einen Handler besitzt der "meinevent" heisst. Du kannst da mal in der Datei gucken, ist ein beispiel mit drin.

also lingo wäre dann:

on meinevent me, rayinfo
put rayinfo
end

Du erhälst dann die Information des ModelsunderLoc Befehls zurück. Das ist eine Propertyliste. Mir ist im Moment keine bessere Lösung eingefallen, wenn du da fragen oder Verbesserungsvorschläge hast, bitte bescheid geben!

Die nächste Version wird eine kleine API haben, damit man auch befehle an die engine schicken kann. Ist aber noch nicht so weit. Ach ja, in den Download ist eine neuere Version der Biont3D.dcr, das ganze wird also nicht mit der bisherigen Version funktionieren.

Hier nun aber der Download:
http://www.biont3d.com/download/biont3d_miaw_event.zip

Vielleicht bringt dich das ein bisschen weiter, ich hoffe auch das alles soweit funktioniert, hatte eben leider keine Zeit das vollständig zu testen. Aber die Idee die Engine als Miaw-Tool zu verwenden finde ich doch sehr gut. Mal sehen was man in der Richtung noch alles machen kann...

Grüsse!
NaN
Newbie
*
Beiträge: 28

Re: Biont3D.dcr in eigenes Projekt einbetten
Antworten #5 am: 07. Mai 2008, 23:56:05
 
Besten Dank.
Damit würde ich schon einganzes Stück weiter kommen.
Allerdings habe ich das Problem, wenn ich mein Projekt dann veröffentlichen will, dass ich die Xtras brauche, die bei Biont3d verwendet werden. (sonst kommen oben genannte Fehlermeldungen und nix geht)
Das blöde ist, ich finde nicht alle Xtras zum Download.
Da ist man durch das Internet mit der ganzen Welt verbunden und findet nix dazu... :(

Folgende Xtras werden beim Export immer bemängelt:

Havok
Multiusr.x32
MoveCursor.x32 (Fehlt mir noch)
ScrnXtra.x32 (fehlt auch)
SharpExport.x32
FileXtra4.x32 (find ich leider auch nicht)
budapi.x32

Gibt es die überhaupt zum Download?
Oder sind das Eigenentwicklungen?

Regards,
NaN.
 
Lutz
Administrator
Full Member
*****
Beiträge: 218

Re: Biont3D.dcr in eigenes Projekt einbetten
Antworten #6 am: 08. Mai 2008, 01:30:35
Ok, ich hab die Xtras mal zusammengepackt.
http://www.biont3d.com/download/biont_xtras.zip

Falls du die Xtras selber im Internet zusammensuchen willst:

Kurze Linkliste zu den Xtras:
SharpExport.x32
http://www.sharp-software.com/products/index.htm

budapi.x32
http://www.mods.com.au/budapi/download.htm

FileXtra4.x32
http://homepage.mac.com/klkersten/xtras/FileXtra4/index.html

ScrnXtra.x32
http://staff.dasdeck.de/valentin/xtras/scrnxtra_image/

MoveCursor.x32
http://andradearts.com/
(ist da gerade nicht mehr offline, das xtra wird aber in zukunft in biont3d durch ein anderes ersetzt)

Multiusr.x32
http://www.adobe.com/support/director/multiuser.html

Da sollte jetzt eigentlich nix mehr fehlen, ich hoffe jetzt klappt es auch beim Veröffentlichen.

Grüsse!
NaN
Newbie
*
Beiträge: 28

Re: Biont3D.dcr in eigenes Projekt einbetten
Antworten #7 am: 08. Mai 2008, 19:58:56
 
Erstmal Danke für die schnelle Antwort.


Aber die Idee die Engine als Miaw-Tool zu verwenden finde ich doch sehr gut. Mal sehen was man in der Richtung noch alles machen kann...


Dadurch kann man Biont3D meiner Meinung nach wesentlich flexibler einsetzen. Es wird quasi etwas modularer.
Mit einer eigenen API wäre es dann wirklich eine gelungene Engine.
Ich bin mir momentan auch nicht sicher, ob mein Vorhaben mit Biont3d so umsetzbar ist, wie ich mir das vorstelle.
Biont3d als Miaw-Tool einzubetten ist zumindest eine Möglichkeit, mit der man um Biont3d herum eine eigene Benutzeroberfläche mit Director oder Flash basteln könnte.
Zum besseren Verständnis habe ich mal ein Bild mit einem Schema angehängt, wie meine Anwendung zumindest theoretisch aufgebaut sein soll.

Mit "Externen Daten" sind in diesem Schema die Informationen gemeint, die man zu jedem Objekt in der 3D-Szene erhalten kann. Diese Daten können Texte, Bilder oder andere Dateien sein, deren Dateinamen auf den Namen des Objektes abgestimmt sind.
(am liebsten wäre mir eine Datenbankanbindung - 3D Content Management *träum*)

Ich möchte hier jetzt nicht, dass mir jemand sagt wie man das tatsächlich umsetzt (schön wär's), aber vielleicht kann mir die ein oder andere Erfahrung dabei helfen, im Vorfeld zu klären inwiefern man da auf Biont3d bauen kann.
Ein für mich wesentlicher Punkt ist z.B. auch die Größe der Bühne. Es wäre toll, wenn man zumindest zwischen Vollbild- und Fensteransicht wechseln könnte.

Ich werde jetzt erstmal mit Hilfe Deiner Beispiele versuchen, eine Mini-Version nach meinem Schema aufzubauen

Regards,
NaN.
 
NaN
Newbie
*
Beiträge: 28

Re: Biont3D.dcr in eigenes Projekt einbetten
Antworten #8 am: 08. Mai 2008, 21:49:59
 

Du erhälst dann die Information des ModelsunderLoc Befehls zurück. Das ist eine Propertyliste. Mir ist im Moment keine bessere Lösung eingefallen, wenn du da fragen oder Verbesserungsvorschläge hast, bitte bescheid geben!


Property-Liste klingt doch schonmal ganz gut.
Kommt man darüber auch an den Namen des Objektes ran?
Ich bräuchte den Namen, um die entsprechenden "Externen Daten" für dieses Objekt zu laden.
 
Lutz
Administrator
Full Member
*****
Beiträge: 218

Re: Biont3D.dcr in eigenes Projekt einbetten
Antworten #9 am: 09. Mai 2008, 03:53:59
Zitat
Kommt man darüber auch an den Namen des Objektes ran?
Ich bräuchte den Namen, um die entsprechenden "Externen Daten" für dieses Objekt zu laden.

Ja klar!
Also die Propertyliste die da geschickt wird, enthält den Namen des Modelles und noch einige andere Informationen. Wenn du in Director in der Hilfedatei unter "modelsunderloc" nachsiehst, kannst du sehen welchen anderen Daten in der Liste enthalten sind.

Die Liste wird immer nur dann geschickt, wenn ein Modell gefunden ist. Sie enthält immer nur ein Modell.

also mit:
put raylist[1].model

-- model("+|cube")

oder:
put raylist[1].model.name

-- "+|cube"


kannst du an das Modell bzw. dessen Namen kommen.

In der Demodatei wird über den Befehl der Shader des Modelles beeinflusst (emmisive=rgb(255,0,0)) und es leuchtet Rot. Das Behavior-Script in dem das passiert heisst "sprite_handler" und liegt auf dem weissen Rahmen.

Du kannst dir also beliebige externe Daten anlegen und dir Scripte bauen mit denen diese dann angezeigt werden wenn bestimmte Modelle angeklickt werden.

Zitat
Ich möchte hier jetzt nicht, dass mir jemand sagt wie man das tatsächlich umsetzt (schön wär's), aber vielleicht kann mir die ein oder andere Erfahrung dabei helfen, im Vorfeld zu klären inwiefern man da auf Biont3d bauen kann.

Du müsstest in jedem Fall über Scripte prüfen, welche Modelle angeklickt worden sind, und festlegen, was dann geschehen soll. Die Verknüpfungen zu den den externen Dateien kann man beispielsweise in ein XML Dokument oder eine Textdatei speichern.
Mit oder ohne Biont3D müsstest du dir etwas überlegen, wie du die Zuordnungen anlegst und welche Aktionen ausgelöst werden sollen.

Zitat
Ein für mich wesentlicher Punkt ist z.B. auch die Größe der Bühne. Es wäre toll, wenn man zumindest zwischen Vollbild- und Fensteransicht wechseln könnte.

Kommt in der nächsten Version.

Gruss!
  Seiten: 1
  Drucken