{lang: 'de'}
Flashhilfe.de - Flash Community

Material drehen in Cube oder Box [Flash 10]

 


AntwortenRegistrieren Seite1  

Jakob Ulrich#1
Benutzerbild von Jakob Ulrich
Beiträge: 30
Registriert: Dec 2002

19.11.2009, 00:45

Seid gegrüßt,

ich beschäftige mich gerade mit Sandy3D.

Bezogen auf dieses Tutorial frage ich mich, ob man das Material einer Seite des Würfels drehen kann.

Hier das Script:
ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
package {
   import flash.display.*;
   import flash.net.URLRequest;
   
   import flash.events.*;
   import flash.ui.*;
   import sandy.core.Scene3D;
   import sandy.core.data.*;
   import sandy.core.scenegraph.*;
   import sandy.materials.*;
   import sandy.materials.attributes.*;
   import sandy.primitive.*;
   import sandy.util.*;
   import sandy.events.*;
   
   public class Ex10 extends Sprite {
      private var scene:Scene3D;
      private var camera:Camera3D;
      private var box:Box;
      private var queue:LoaderQueue;
      
      public function Ex10():void {
         queue = new LoaderQueue();
         queue.add("test", new URLRequest("main.swf"));
         queue.add("test2", new URLRequest("main2.swf"));
         queue.addEventListener(SandyEvent.QUEUE_COMPLETE, loadComplete);
         queue.start();
      }
      
      public function loadComplete(e:QueueEvent) {
         camera = new Camera3D(550, 400);
         camera.z = -400;
         
         var root:Group = createScene();
         
         scene = new Scene3D("scene", this, camera, root);
         
         addEventListener(Event.ENTER_FRAME, enterFrameHandler);
      }
      
      private function createScene():Group {
         var g:Group = new Group();
         
         box = new Box("box", 100, 100, 100, "quad");
         
         box.rotateX = 0;
         box.rotateY = 0;
         box.x = 0;
         
         //simple color Material
         var materialAttr:MaterialAttributes = new MaterialAttributes(
                  new LineAttributes(0, 0xD7D79D, 0),
                  new LightAttributes(true, 0.1)
                  );
         
         var material:Material = new ColorMaterial(0xD7D79D, 1, materialAttr);
         material.lightingEnable = true;
         var app:Appearance = new Appearance(material);
         
         var material01:MovieMaterial = new MovieMaterial(
                  queue.data["test"], 40);
         material01.lightingEnable = true;
         var app01:Appearance = new Appearance(material01);
         
         var material02:MovieMaterial = new MovieMaterial(
                  queue.data["test2"], 40);
         material02.lightingEnable = true;
         var app02:Appearance = new Appearance(material02);
         
         box.appearance = app;
         box.aPolygons[3].appearance = app01;
         box.aPolygons[5].appearance = app02;
         g.addChild(box);
         
         return g;
      }
      
      private function enterFrameHandler(e:Event):void {
         box.tilt -= 0.25;
         box.pan += 0.25;
         scene.render();
      }
   }
}

Ist das irgendwie möglich? Ich habe bereits danach im Forum gesucht und in der online-Doku von Sandy geschaut, aber nichts gefunden.

Ist es vielelicht unter PaperVision3D möglich, dann weiche ich darauf aus.

Besten Dank für eure Hilfe.
Schlagwörter: Box, Cube, drehen, Material, Sandy3D, Würfel
coarsy#2
Benutzerbild von coarsy
Beiträge: 272
Wohnort: Frankfurt
Registriert: Nov 2005

27.11.2009, 12:33

Servus Jakob,

ich weiß, dasses in Papervision möglich ist, da ich erst kürzlich sowas gebaut und gebraucht habe.

Viele Grüße,

Chris
Jakob Ulrich#3
Benutzerbild von Jakob Ulrich
Beiträge: 30
Registriert: Dec 2002

Themenautor/in

27.11.2009, 13:14

Besten Dank coarsy für die Antwort. Endlich ;)

Ich hatte mir im Vorfeld keine besonderen Gedanken gemacht, aber gibt es einen konkreten Grund, warum ich Sandy3D oder Papervision benutzen sollte?  Also was kann die eine Engine, was die andere nicht kann.

Kannst du mir da einen Ansatz für einen Papervision-Umsteiger geben?! ;)
coarsy#4
Benutzerbild von coarsy
Beiträge: 272
Wohnort: Frankfurt
Registriert: Nov 2005

27.11.2009, 13:21

Hi, kann ich Dir leider nicht konkret sagen, worin denn die konkreten Unterschiede liegen.
Außerdem werden ständig Fehler ausgemerzt und die Engines weiterentwickelt. Ich würde
wohl in Zukunft auch Sandy3D verwenden, da die Clippingfehler angeblich bei weitem nicht
so massiv sind, wie bei Papervision. Obwohl es hierfür auch nette "Workarounds" gibt. Man
stösst halt irgendwo dann bestimmt an die Grenzen das Machbaren. Wäre allerdings dann
an dem letzten Projekt gescheitert, wenn man die Würfelflächen nicht rotieren könnte...

Muss mir Sandy auf jeden Fall mal ansehen...

Den Artikel fand ich zum Beispiel sehr interessant:

Artikel

Viele Grüße,

Chris
Geändert von coarsy am 27.11.09 um 14:15 Uhr

AntwortenRegistrieren Seite1  

Schnellantwort

Du musst registriert sein, um diese Funktion nutzen zu können.

 
Ähnliche Beiträge zum Thema
Partner Webseiten: art-and-law.de  Mediengestalter.info   phpwelt.de   Scubacube.de  
Haftungsausschluss   Datenschutzerklärung   Impressum
© 1999-2024 Sebastian Wichmann - Flashhilfe.de