快速导航:   教程资源  | 经典范例  | 友情链接  | 联系我们  | 官方微博
登陆 | 注册

 flash 3d 研究所
flash3d 研究所 pv3d 教程 研究所小贴士: 站在5米外看10米高的楼,和100米外看10米的楼能一样高吗? 三维世界和二维世界的尺寸本来就不一样,不要钻牛角尖啦 ~










最近更新:
● wan925446570阁下在讨论区里 回复“怎么配置away3d 4.0运行环境啊?...”(15:12:45)
● wan925446570阁下在讨论区里 回复“怎么配置away3d 4.0运行环境啊?...”(10:01:38)
● DDM君阁下在讨论区里 回复“怎么配置away3d 4.0运行环境啊?...”(19:07:43)
浏览主题:sphere內部貼圖求助

sphere內部貼圖求助
fur3 (2009-12-02 14:14:53)

剛開始自學 AS3跟pv3d

現在正在嘗試在一個sphere裡面貼圖並可以365旋轉.


之前在一個網站學用wireframe做的時候完全沒問題 當我試著貼圖上去後問題就來了


我用test movie 就只能看到一個紅點 之前這個紅點在wireframe測試的時候是會跟著我著我的滑鼠跑的


跑到哪 鏡頭也會跟著跑到哪 但現在就動都不動 跟著我放小sphere後 看到那張圖結果是貼在sphere的外部


但還是無法用滑鼠移動


有人可以幫忙看看嗎

這是那個網站

http://pv3d.org/2009/01/05/looking-around-the-inside-of-a-sphere/


package
{
     import flash.events.Event;
     import flash.ui.Mouse;
     
     import org.papervision3d.core.proto.MaterialObject3D;
     import org.papervision3d.core.utils.Mouse3D;
     import org.papervision3d.materials.ColorMaterial;
     import org.papervision3d.materials.special.CompositeMaterial;
     import org.papervision3d.materials.BitmapFileMaterial;
     import org.papervision3d.materials.utils.MaterialsList;
     import org.papervision3d.objects.DisplayObject3D;
     import org.papervision3d.objects.primitives.Plane;
     import org.papervision3d.objects.primitives.Sphere;
     import org.papervision3d.view.BasicView;
     import org.papervision3d.view.layer.ViewportLayer;
     import org.papervision3d.view.layer.util.ViewportLayerSortMode;
     
     public class space extends BasicView
     {
           private var lookAtMe;DisplayObject3D;
           private var sphere:Sphere;
           private var mouse3D:Mouse3D;
           private var plane:Plane;

     
           public function space ()
           {
                 viewport.interactive = true;
                 mouse3D = viewport.interactiveSceneManager.mouse3D;
                 Mouse3D.enabled = true;
                 
                 lookAtMe = new DisplayObject3D();
                                         
                 var bitmapFileMaterial:CompositeMaterial = new CompositeMaterial();
                 bitmapFileMaterial.interactive = true;
                 bitmapFileMaterial.doubleSided = true;
                                                     
                 sphere = new Sphere(new BitmapFileMaterial('sky2.jpg'), 500, 12, 12);
                                   
                 var planeMaterial:MaterialObject3D = new ColorMaterial(0xcc0000);
                 planeMaterial.doubleSided = true;
                 plane = new Plane(planeMaterial, 30, 30);
                 
                 var viewportLayer:ViewportLayer = new ViewportLayer(viewport, plane);
                 viewportLayer.layerIndex = 1;
                 
                 viewport.containerSprite.sortMode = ViewportLayerSortMode.INDEX_SORT;
                 viewport.containerSprite.addLayer(viewportLayer);
                 
                 scene.addChild(plane);
                 
                 camera.z = -300;
                 camera.target = lookAtMe;
                 
                 scene.addChild(sphere);
                 
                 startRendering();
                 
                 Mouse.hide();
                 
           }
           
           override protected function onRenderTick(event:Event=null):void
           {
                 lookAtMe.x += (mouse3D.x - lookAtMe.x) * .009;
                 lookAtMe.y += (mouse3D.y - lookAtMe.y) * .009;
                 
                 plane.copyTransform(mouse3D);
                 
                 super.onRenderTick(event);
}            
}
}





flash 3d 研究所 DDM君
(2009-12-02 16:51:38)
图方便的话, scale=-1 之类的复数即可将法线反转,但注意上下左右的颠倒。


flash 3d 研究所
(2009-12-02 23:37:58)
感謝D君

我馬上來試試看

真的很感謝你們提供這個網站 再次多謝


flash 3d 研究所
(2009-12-03 03:18:44)
不好意思 又是我

我是著改過了幾個參數都不行

接著我又試著加了一句

sphere.scale = -1

還是不行

我想這個問題應該很白癡 請各位在幫幫忙 scale = -1應該怎麼加


flash 3d 研究所
(2009-12-03 05:55:31)
挖哈哈哈 不好意思 原來是我自己搞白吃

sphere = new Sphere(new BitmapFileMaterial('sky2.jpg'), 500, 12, 12);

這裡只要用spherematerial代替就好了 真是不好意思浪費你的時間

不過還是要在問一下 我轉動的時候 會看到一些色塊好像來不及跑 會先是黑色之後在變回圖片

這是正常的嗎? 該如何解決? 感謝 ^___________^




flash 3d 研究所 DDM君
(2009-12-03 17:10:50)
呵呵,解决了就好。
先变黑在出现图片,应该是读取速度的问题,可能是贴图比较大或用于网络读取的时候会出现。


评论人:
邮   箱: (填入邮箱,博客地址均可)

内   容: (广告和垃圾内容可能会被删除,望理解)
链接地址

验证码:(为防止机器人骚扰,请麻烦输入验证码^_^)
  

(目前需登陆方可发表)


不想添加了