1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
| package
{
import flash.display.*;
import flash.events.*;
import caurina.transitions.Tweener;
import org.papervision3d.view.BasicView;
import org.papervision3d.core.proto.*;
import org.papervision3d.core.math.*;
import org.papervision3d.objects.DisplayObject3D;
import org.papervision3d.objects.primitives.*;
import org.papervision3d.materials.*;
[SWF(backgroundColor=0x000000)]
public class uv_change_test extends BasicView
{
private var planes:DisplayObject3D;
public function uv_change_test()
{
stage.frameRate = 60;
stage.align = StageAlign.TOP_LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.quality = StageQuality.MEDIUM;
//viewportの定義とカメラタイプ定義
super (0,0,true,true,"Target");
//カメラ設定
camera.x = 0;
camera.y = 0;
camera.z = -1400;
camera.fov = 30;
planes = new DisplayObject3D();
scene.addChild(planes);
buildPlane();
//レンダリング開始
startRendering();
}
override protected function onRenderTick(event:Event=null):void
{
planes.yaw(-1);
super.onRenderTick(event);
}
private function buildPlane():void
{
//マテリアル設定
var bitMat:BitmapFileMaterial = new BitmapFileMaterial( "asset/finder.jpg" );
bitMat.doubleSided = true;
//Plane生成(左下)
var objPlane:Plane = new Plane( bitMat, 100, 100 );
planes.addChild(objPlane);
objPlane.x = -60;
objPlane.y = -60;
objPlane.z = 0;
objPlane.geometry.faces[0].uv = [new NumberUV(0,0),new NumberUV(0.5,0),new NumberUV(0,0.5)];
objPlane.geometry.faces[1].uv = [new NumberUV(0.5,0.5),new NumberUV(0,0.5),new NumberUV(0.5,0)];
//Plane生成(右下)
var objPlane2:Plane = new Plane( bitMat, 100, 100 );
planes.addChild(objPlane2);
objPlane2.x = 60;
objPlane2.y = -60;
objPlane2.z = 0;
objPlane2.geometry.faces[0].uv = [new NumberUV(0.5,0),new NumberUV(1,0),new NumberUV(0.5,0.5)];
objPlane2.geometry.faces[1].uv = [new NumberUV(1,0.5),new NumberUV(0.5,0.5),new NumberUV(1,0)];
//Plane生成(左上)
var objPlane3:Plane = new Plane( bitMat, 100, 100 );
planes.addChild(objPlane3);
objPlane3.x = -60;
objPlane3.y = 60;
objPlane3.z = 0;
objPlane3.geometry.faces[0].uv = [new NumberUV(0,0.5),new NumberUV(0.5,0.5),new NumberUV(0,1)];
objPlane3.geometry.faces[1].uv = [new NumberUV(0.5,1),new NumberUV(0,1),new NumberUV(0.5,0.5)];
//Plane生成(右上)
var objPlane4:Plane = new Plane( bitMat, 100, 100 );
planes.addChild(objPlane4);
objPlane4.x = 60;
objPlane4.y = 60;
objPlane4.z = 0;
objPlane4.geometry.faces[0].uv = [new NumberUV(0.5,0.5),new NumberUV(1,0.5),new NumberUV(0.5,1)];
objPlane4.geometry.faces[1].uv = [new NumberUV(1,1),new NumberUV(0.5,1),new NumberUV(1,0.5)];
}
}
} |