2010-03-09 2 views
1

Je suis un mec actionscript - je travaille sur un jeu de papervision.Papervision rendant PNGs avec la transparence c'est à l'intérieur d'un movieclip

J'ai un actif de 127 pngs dans une séquence pour une animation. Je peux heureusement projeter ceci sur mon plan de papervision. Le problème est, il n'y a pas de transparence. Je ne peux pas utiliser un bitmapFileMaterial car j'ai beaucoup de pngs -

quelqu'un peut suggérer comment faire ceci.

Très très reconnaissant -

Répondre

0

lecture sur google - Il semble y avoir un bug -

private var movieMat:MovieMaterial = new MovieMaterial(textureMC, true, true) 

ensemble à

private var movieMat:MovieMaterial = new MovieMaterial(textureMC, false, true) 

et la mise plus tard

movieMat.movieTransparent = true; 

semble fonctionner.


Uber merci pour votre aide m'a indiqué dans la bonne direction.

0

myMaterial.transparent = true

Ou quelque chose comme ça, consultez la documentation si cela ne fonctionne pas.

+0

n'existe pas pour les films – Glycerine

+0

Avez-vous regardé dans les documents? essayez myMc.movieTransparent = true; –

+0

J'ai essayé, j'ai peut-être mal implémenté mais ça ne marche pas - j'ai vu sur papervision 3d d'autres personnes ont eu des problèmes avec ça aussi. – Glycerine

0

c'est mon code jusqu'ici. Une version simplifiée modifier - Papervision 2.0.0

package com.strangemother.gameObjects 
{ 

    import org.papervision3d.materials.MovieMaterial; 
    import org.papervision3d.objects.DisplayObject3D; 
    import org.papervision3d.objects.primitives.Plane; 

    public class Biorod extends DisplayObject3D 
    { 
     /* 
     My flash movieclip with 127 pngs in sequence 
     */ 
     private var textureMC:BiorodTexture  = new BiorodTexture(); 
     private var movieMat:MovieMaterial  = new MovieMaterial(textureMC, true, true) 

     var plane:Plane = new Plane(movieMat, 300,300,1,1); 


     public function Biorod() 
     { 
      textureMC.id    = 'biorod'; 
      movieMat.animated  = true; 
      movieMat.doubleSided  = true; 
     // movieMat.interactive  = true; 
      movieMat.smooth    = true; 
      movieMat.movieTransparent = true; 

      this.addChild(plane); 
     } 


    } 
}