mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Sa 20.04.2024 04:03 Benutzername: Passwort: Auto-Login

Thema: 3D Planet in Flash vom 13.09.2006


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Allgemeines - Nonprint -> 3D Planet in Flash
Autor Nachricht
schluff81
Threadersteller

Dabei seit: 13.09.2006
Ort: -
Alter: -
Geschlecht: -
Verfasst Mi 13.09.2006 22:08
Titel

3D Planet in Flash

Antworten mit Zitat Zum Seitenanfang

Hallo zusammen!

Habe versucht einene 3d Planet in Flash zu erzeugen, indem ich einfach eine Textur über eine "Displacement Kugel" laufen lasse... ich habe den Quellcode für diese Kugel aber ich schaffe es bei Leibe nicht das Ding so umzuschreiben, dass anstelle von generiertem Text "Bilder" deformiert werden :(

Kennt sich damit jemand aus? Meine Actionscriptfähigkeiten sind beileibe zu schlecht :(

Danke schonmal, schluff



import flash.filters.DisplacementMapFilter;
import flash.display.BitmapData;
import flash.geom.Point;
import flash.geom.Matrix;
import flash.geom.ColorTransform;

var mapBitmap:BitmapData = createGradientBitmap(300, 80, 0xFF000000, "radial");

var mapPoint:Point = new Point(-30, -30);
var componentX:Number = 1;
var componentY:Number = 1;
var scaleX:Number = 10;
var scaleY:Number = 10;
var mode:String = "wrap";
var color:Number = 0x000000;
var alpha:Number = 0x000000;

var filter:DisplacementMapFilter = new DisplacementMapFilter(mapBitmap, mapPoint, componentX, componentY, scaleX, scaleY, mode, color, alpha);

var txtBlock:MovieClip = createTextBlock();
txtBlock._x = 30;
txtBlock._y = 30;

txtBlock.filters = new Array(filter);

function createGradientBitmap(w:Number, h:Number, bgColor:Number, type:String, hide:Boolean):BitmapData {
var mc:MovieClip = this.createEmptyMovieClip("mc", 1);
var matrix:Matrix = new Matrix();
matrix.createGradientBox(w, h, 0, 0, 0);

mc.beginGradientFill(type, [0xFF0000, 0x0000FF], [100, 100], [0x55, 0x99], matrix, "pad");
mc.lineTo(w, 0);
mc.lineTo(w, h);
mc.lineTo(0, h);
mc.lineTo(0, 0);
mc.endFill();
(hide == true) ? mc._alpha = 0 : mc._alpha = 100;

var bmp:BitmapData = new BitmapData(w, h, true, bgColor);
bmp.draw(mc, new Matrix(), new ColorTransform(), "normal", bmp.rectangle, true);
mc.attachBitmap(bmp, this.getNextHighestDepth());

return bmp;
}

function createTextBlock():MovieClip {
var txtBlock:MovieClip = this.createEmptyMovieClip("txtBlock", this.getNextHighestDepth());
txtBlock.createTextField("txt", this.getNextHighestDepth(), 0, 0, 300, 80);
txtBlock.txt.text = "watch the text bend with the displacement map";
return txtBlock;
}


Zuletzt bearbeitet von schluff81 am Mi 13.09.2006 22:09, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
Anti78

Dabei seit: 16.09.2003
Ort: Tbb/Mz/M
Alter: 46
Geschlecht: Männlich
Verfasst Mi 13.09.2006 22:17
Titel

Antworten mit Zitat Zum Seitenanfang

Wenns dir hilft. Machs doch in 3D und importiere es in Flash.
  View user's profile Private Nachricht senden
Anzeige
Anzeige
schluff81
Threadersteller

Dabei seit: 13.09.2006
Ort: -
Alter: -
Geschlecht: -
Verfasst Mi 13.09.2006 22:29
Titel

wenns so einfach wäre

Antworten mit Zitat Zum Seitenanfang

Hab ich auch überlegt, allerdings würde ich dann super viele einzelne frames brauchen um den Planeten einmal um die eigene Achse drehen zu lassen - zumindest wenn es halbwegs smooth rüberkommen soll... *Schnief* Es würde einfach viel zu groß werden... * Ich geb auf... *

Zuletzt bearbeitet von schluff81 am Mi 13.09.2006 22:29, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
xitrix

Dabei seit: 04.10.2005
Ort: Detmold
Alter: 101
Geschlecht: Männlich
Verfasst Do 14.09.2006 08:35
Titel

Antworten mit Zitat Zum Seitenanfang

ich kann dir bei deinem action script problem leider auch nicht weiterhelfen, habe aber evtl. eine andere lösung für dich, und zwar nimmst du einfach eine weltkarte, welche "ausgerollt" ist. die legst du einmal in eine ebene und einmal die gleiche karte auf eine ebene da drunter. da drüber platzierst du ne maske in form eines kreises (halt die weltkugel).
die obere ebene lässt du einfach nach links rausfahren und die untere nach rechts. du musst es timing genau nur so abstimmen, dass die obere wieder da anfängt, wo die untere aufhört. so bekommst du eine wunderbare durchsichtige, sich drehende 3d weltkugel.


Zuletzt bearbeitet von xitrix am Do 14.09.2006 08:36, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
 
Ähnliche Themen [Flash,Swish] von Flash aus eine bestimmte Scene,Frame Laden
Flash verlinken, aber kein flash mehr drauf
Flash: Welcher Skill-Level für folgende Flash-Datei...
Flash-Animationen OHNE Macromedia Flash-Player abspielen
reine Flash-Seite oder lieber nur mit Flash-Elementen
[flash] Mausposition außerhalb des Flash-Films [solved]
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Allgemeines - Nonprint


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.