第一个PV3D的测试文件:
这个实例是根据一个网站视频教程里学着做的,用来测试PV3D的环境,我在做完之后查了帮助文档,加上一些注释:
教程的网址是:http://www.gotoandlearn.com/
测试文档的源文件如下:
需要在库中加上一个(位图)元件并右击创建"链接名"为Icon才可以调试
//-----------------------------------------------------------------------------------------------------------------
//导入PV3D包
import org.papervision3d.cameras.*;//导入PV3D的3D相机 (Camera3D)
import org.papervision3d.objects.*;//导入PV3D对象包是 (Plane)
import org.papervision3d.scenes.*;//导入PV3D场景包 (Scene3D)
import org.papervision3d.materials.*;//导入PV3D材质包 (BitmapAssetMaterial 位图材质)
//------------------------------------------
var container:Sprite=new Sprite();//定义一个容器
container.x=stage.stageWidth*0.5;
container.y=stage.stageHeight*0.5;
addChild(container);//加入成为显示对像
//定义容器的位置以便把他加入到3D场景中
var sence:Scene3D=new Scene3D(container);//把容器转换成为3D场景
//------------帮助文件-----------------:
//The Scene3D class lets you create a scene where all objects are rendered in the same container.
//Scene3D类让你可以创建一个所在对像都可以演示的容器
//--------------------------------------------------------------------
var camera:Camera3D=new Camera3D();//定议一个3D相机
//------------帮助文件-----------------:
//The Camera3D class creates a camera that views the area around a target object.
//Camera3D类用来创建一个观看范围围绕目标对象的相机
//--------------------------------------------------------------------
camera.zoom=5;
//------------帮助文件-----------------:
//This value specifies the scale at which the 3D objects are rendered.
//用来设定目标对象的显示比例
//-------------------------------------------------------------------
var bam:BitmapAssetMaterial=new BitmapAssetMaterial("img");
//------------帮助文件-----------------:
//The BitmapAssetMaterial class creates a texture from a Bitmap library symbol.
//这个类根据位图库里的位图元件来创建一个材质
//-------------------------------------------------------------------
bam. oneSide = false;
//------------帮助文件-----------------:
//A Boolean value that indicates whether the faces are single sided
//定义是一个多面材质还是单面的
//-------------------------------------------------------------------
bam.smooth=true;
//------------帮助文件-----------------:
//A Boolean value that determines whether the BitmapData texture is smoothed when rendered.
//是否平滑
//-------------------------------------------------------------------
for (var i:uint=0; i<50; i++) {
var p:Plane=new Plane(bam,234,236,2,2);
//------------帮助文件-----------------:
//The Plane class lets you create and display flat rectangle objects.
//创建一个平面长方形
//参数:
//Plane () constructor
//public function Plane(material:MaterialObject3D = null,(材质)
//width:Number = 0, height:Number = 0,
//segmentsW:Number = 0(水平方向节点数),segmentsH:Number = 0(垂直方向节点数), initObject:Object = null)
//initObject参数不知道什么意思:
//An object that contains user defined properties with which to populate the newly created GeometryObject3D.
//-------------------------------------------------------------------
sence.addChild(p);//把平面添加到显示对像中
p.x=Math.random()*1000-50;
p.y=Math.random()*1000-50;
p.z=Math.random()*1000-50;
p.rotati.random()*360;
//------------帮助文件-----------------
//Specifies the rotation around the Y axis from its original orientation.
//定议围绕Y转旋转的角度
//-------------------------------------------------------------------
}
this.addEventListener(Event.ENTER_FRAME,domc);
function domc(e:Event):void
{
camera.x+=stage.mouseX-(stage.stageWidth*0.5);
//------------帮助文件-----------------
//An Number that sets the X coordinate of a object relative to the origin of its parent.
//定议相对于目标的X转的旋转角度(好像是这样)
//-------------------------------------------------------------------
camera.y+=stage.mouseY-(stage.stageHeight*0.5);
//------------帮助文件-----------------
//An Number that sets the Y coordinate of a object relative to the origin of its parent.
//定议相对于目标的Y转的旋转角度(好像是这样)
//-------------------------------------------------------------------
sence.renderCamera(camera);
//------------帮助文件-----------------
//Generates an image from the camera's point of view and the visible models of the scene.
//根据照相机拍到的场景中的可见模型部生图像
//-------------------------------------------------------------------
}
FLEX中应用有几个地方需要改动:
1.在flex project(AIR)中,由于主场景不是sprite而是WindowedApplication,所以不能使用addChild(sprite),必需把上面的var container:Sprite=new Sprite();//定义一个容器 改成 var container:UIComp UIComponent();//
其它的不变
2.在flex 里头,没有库元件这么一说(好像没有),所以在贴图的地方不能用BitmapAssetMaterial类,需要改成
BitmapFileMaterial(imgURL)
就是把原来调用库链接的方法直接调用外部文件的URL;
分享到:
相关推荐
然后,你可以创建一个`Scene3D`对象作为3D场景的基础,接着可以添加`Camera3D`来控制视角,使用`View3D`来显示场景。接下来,可以创建`Object3D`实例代表3D模型,并通过`Material`和`Light`来调整视觉效果。最后,...
1. PV3D介绍:PV3D是一个开源的AS3库,它允许开发人员在Adobe Flash Player中创建复杂的3D场景和应用。它利用了Stage3D API,提供硬件加速的3D图形渲染,提高了性能和视觉效果。PV3D包含了一系列类和组件,如Camera...
PV3D,全称为Papervision3D,是一个开源的Flash 3D图形渲染引擎,它允许开发者在Adobe Flash Player环境中构建复杂的三维交互式应用程序。PV3D为Web开发者提供了一个强大的工具,使他们能够利用Flash平台创建具有...
1. **DAE文件格式**:DAE(Digital Asset Exchange)是Autodesk 3Dmax等多款3D软件支持的一种通用文件格式,用于跨平台交换3D资产。它包含了模型的几何信息、材质、纹理、骨骼动画等数据,便于不同工具之间的协同...
1. **PV3D基础**:首先,你需要了解PV3D的基本架构,包括渲染器、摄像机、场景、对象和材质等基本元素。PV3D使用ActionScript 3作为编程语言,因此熟悉AS3语法是必要的。 2. **3D坐标系统**:PV3D使用右手坐标系统...
"pv3d最新资源包"是一个集合了PV3D(Player3D)最新开发资源的压缩文件,这个包是在09版本的基础上进行了更新,确保所有内容都是最新的。PV3D是一种基于Adobe Flash Platform的3D图形编程库,它允许开发者在Flash ...
【PV3D第一次接触】 PV3D,全称为Papervision3D,是一个开源的、基于ActionScript 3.0的三维图形渲染库,它允许开发者在Adobe Flash环境中创建富有交互性的三维(3D)应用程序。这个技术的出现极大地拓宽了Flash在...
**PV3D中文手册**是针对PV3D(Pervasive 3D)技术的一份详细文档,旨在帮助用户理解并有效地使用这个强大的3D图形编程库。PV3D是基于ActionScript 3的,因此它与Adobe Flash Player和Adobe AIR平台紧密集成,允许...
打开这个文件,你会看到如何初始化PV3D引擎,创建一个场景,并在其中添加对象。例如,可能包含了`Pv3d`类的导入,`Stage3D`的使用,以及`Scene3D`和`View3D`的创建,这些都是PV3D的基本元素。 "test01.fla"是Flash ...
在本文中,我们将深入探讨`pv3d`类库,它是Adobe Flex中用于3D图形渲染的一个强大工具。`pv3d`全称为 Papervision3D,它为ActionScript 3 (AS3) 提供了强大的3D场景构建、模型加载和动画处理功能。在“pv3d类和3D...
PV3D(Papervision3D)是ActionScript 3(AS3)平台上的一个开源三维(3D)图形引擎,它为Flash开发者提供了在Web上创建复杂3D场景的能力。PV3D的出现极大地扩展了Flash的视觉表现力,使得游戏开发、互动媒体设计...
1. **PV3D库**:Papervision3D是AS3中的一个强大工具,它为开发人员提供了一个在Flash中创建3D图形的平台。PV3D允许开发者使用面向对象的编程方式来处理3D模型、纹理、光照和相机等元素,从而实现复杂的3D场景和动画...
《开源3D引擎PV3D在AS3.0中的应用详解》 PV3D,全称为Papervision3D,是一款基于ActionScript ...PV3D不仅是一个强大的工具,也是一个学习3D编程的优秀平台,无论你是初学者还是经验丰富的开发者,都能从中获益匪浅。
1. **场景(Scene)**:在PV3D中,所有的3D对象都位于一个或多个场景中。场景是3D世界的基础容器,包含了摄像机、光源、对象等元素。 2. **摄像机(Camera)**:摄像机决定了用户观察3D世界的视角。通过调整摄像机...
在IT行业中,Adobe Flex是一种基于ActionScript和MXML的开源框架,主要用于构建富互联网应用程序...PV3D组件包是Flex开发者探索3D世界的一个宝贵资源,通过深入研究和实践,可以掌握在Flash中构建3D应用程序的技巧。
pv3D 导入DAE模型 有原文件pv3D 导入DAE模型 有原文件pv3D 导入DAE模型 有原文件pv3D 导入DAE模型 有原文件pv3D 导入DAE模型 有原文件pv3D 导入DAE模型 有原文件pv3D 导入DAE模型 有原文件
PV3D全称为Papervision3D,是一个基于Adobe Flash平台的开源三维(3D)图形库。这个技术允许开发者在网页上创建丰富的、交互式的3D场景,为用户提供一种超越传统2D体验的新颖视觉效果。PV3D在Flash Player的支持下...
1. **渲染引擎**:PV3D使用一个基于OpenGL技术的渲染器,它将3D模型转换为2D像素,然后在Flash Player的舞台上显示。渲染引擎支持光照、纹理、深度缓冲等功能,使3D物体看起来更加真实。 2. **场景管理**:PV3D提供...
通过对这些文件的分析,学习者可以更深入地理解PV3D的工作原理,如何组织项目结构,以及如何将不同的组件组合起来创建一个完整的3D应用。 学习PV3D通常涉及以下几个关键知识点: 1. **3D几何**:理解3D坐标系、...