In diesem Beispiel geht es um das Manuelle zuordnen von Materialien auf Modelle.
Einem 3D Modell kann bei seiner Erstellung Oberflächen zugeordnet werden, im Collada.dae werden diese unter dem Knoten

< library_images>

zugeordnet. Das muss aber nicht sein, man kann einem Modell, wenn es die Dae.as Klasse benutzt, Materialien „manuel“ zuweisen.
Das geht mit der dae Methode setChildMaterialByName, und erwartet 2 Parameter.

dae.setChildMaterialByName("Zylinder", bitmapMaterial_bump);
  • Der erste Parameter stellt die ID des geometrischen Elements dar, und ist im XML Dokument sehr gut in der Visual Scene zu sehen, es wiederholt sich bei Material, Geometrie, Effekt, Images, also in allen relevanten Elementen eines Modells. In meinem Modell ist die Bezeichnung „Zylinder“. Eine sinnvolle Namensgebung beim Erstellen des Modells im jeweiligen 3D Programm erleichtert die Arbeit. Hier ein Auszug aus der Visual Scenen:
    < library_visual_scenes>
    	< visual_scene id="VisualSceneNode" name="Scene">
    		< node id="Zylinder" name="Zylinder" type="NODE">

    Im debugg Modus traced Papervision dieses folgendermaßen:

    INFO: DisplayObject3D: COLLADA_Scene 
    INFO: DisplayObject3D: Zylinder 

    COLLADA_Scene bezieht sich auf das ganze Modell, Zylinder auf die Geometrie im Modell.

  • Der zweite Parameter ist das Bitmap Material als BitmapData
    Im Beispiel kann man mit dem Button den Skin für das komplette Modell wechseln.

  • Leave a Reply

    XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

     
    Get Adobe Flash player