首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PaperVision3D和闪存CS4

PaperVision3D和闪存CS4
EN

Stack Overflow用户
提问于 2010-06-26 13:57:06
回答 1查看 192关注 0票数 1

我需要开发一个包含10个小立方体的立方体,并像object..Somebody一样操纵每个人,对于在PaperVision3d和闪存CS4..Thanks上做这件事有任何想法或一些教程!

EN

回答 1

Stack Overflow用户

发布于 2010-06-26 20:09:43

我认为你真正想要的是Papervision3d,因为我不知道什么叫"PaperViewer“。如果是这样的话,请更新你的问题。

这应该会给你一个如何开始的想法。它创建10个立方体,并将它们存储在一个数组中。您可以使用boxes[index]访问它们,以更改它们的比例、位置和旋转。

代码语言:javascript
复制
package
{
import flash.display.Sprite;
import flash.events.Event;

import org.papervision3d.cameras.Camera3D;
import org.papervision3d.materials.ColorMaterial;
import org.papervision3d.materials.utils.MaterialsList;
import org.papervision3d.objects.primitives.Cube;
import org.papervision3d.view.BasicView;

public class Boxes3d extends Sprite
{
    private static const NUM_BOXES:int = 10;

    private var world:BasicView;

    private var boxes:Array;

    public function Boxes3d()
    {
        addEventListener(Event.ADDED_TO_STAGE, addedToStage);
    }

    private function addedToStage(event:Event):void
    {
        // create the world and add it to the stage
        world = new BasicView();
        addChild(world);

        // create a set of boxes
        boxes = [];
        var box:Cube;
        var materials:MaterialsList;
        for(var boxIndex:int = 0; boxIndex < NUM_BOXES; boxIndex++)
        {
            // create a material to cover the cube
            materials = new MaterialsList({
                all: new ColorMaterial(Math.random()*0xFFFFFF) });
            // make a cube
            box = new Cube(materials, 100, 100, 100);
            // spread it out in space
            box.x = Math.random()*500 - 250;
            box.y = Math.random()*500 - 250;
            box.z = Math.random()*500 - 250;
            // add it to the scene
            world.scene.addChild(box);
        }

        // get the world to render each frame
        world.startRendering();

        addEventListener(Event.ENTER_FRAME, positionCamera);
    }

    private function positionCamera(event:Event):void
    {
        var camera:Camera3D = world.cameraAsCamera3D;
        camera.x = -(stage.width/2 - mouseX) * 2;
        camera.y = (stage.height/2 - mouseY) * 2;
    }
}

}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3122896

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档