Papervision3d はじめの三歩 テクスチャ(3)
Base64 + ということでしたが、.drawがうまくいかないようなので、
wonderFulに張り付けるのをあきらめ、今回はふつーにテクスチャーを貼り付けたいと思います。
もうタイトル関係ないですね。

BitmapMaterialの引数にBitMapDataを指定してやるのがみそですねえ。
bmm.smoothをtrueにすると回転などでおこる画像のぎざぎざがスムーズになるらしいです。
たぶんこの方法より、BitmapFileMaterialを使った方が外部画像を使用する場合はお得かと思います。
wonderFulに張り付けるのをあきらめ、今回はふつーにテクスチャーを貼り付けたいと思います。

BitmapMaterialの引数にBitMapDataを指定してやるのがみそですねえ。
bmm.smoothをtrueにすると回転などでおこる画像のぎざぎざがスムーズになるらしいです。
var bmm:BitmapMaterial = new BitmapMaterial(bmp); bmm.doubleSided = true; bmm.smooth = true; _plane = new Plane(bmm, 100, 100, 3, 3);
たぶんこの方法より、BitmapFileMaterialを使った方が外部画像を使用する場合はお得かと思います。
package myproject { import flash.display.Bitmap; import flash.display.BitmapData; import flash.display.Loader; import flash.display.Sprite; import flash.events.Event; import flash.net.URLRequest; import org.papervision3d.materials.BitmapMaterial; import org.papervision3d.objects.primitives.Plane; import org.papervision3d.view.BasicView; public class Index extends Sprite { private var _plane:Plane public function Index():void { var loader:Loader = new Loader(); var urlReq:URLRequest = new URLRequest("img/ramen1.JPG"); if (stage != null) { loader.load(urlReq); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler); } } private function completeHandler(e:Event):void { e.target.removeEventListener(Event.COMPLETE, completeHandler); this.addChild(e.target.loader); var bmp:BitmapData = new BitmapData(100, 100); bmp.draw(e.target.loader); var bm:Bitmap = new Bitmap(bmp); bm.x = 100; bm.y = 100; addChild(bm); var bmm:BitmapMaterial = new BitmapMaterial(bmp); bmm.doubleSided = true; bmm.smooth = true; _plane = new Plane(bmm, 100, 100, 3, 3); var basicview:BasicView = new BasicView(); basicview.scene.addChild(_plane); basicview.startRendering(); addEventListener(Event.ENTER_FRAME, enterFrameHandler); addChild(basicview); } private function enterFrameHandler(e:Event):void { _plane.rotationX += 2; } } }
