Creating a Papervision BaseTemplate (by FlashDevelop)

FD3 (Flash Develop 3 RC2)를 사용하여, Papervision 3D 프로젝트를 만들기 위해서 처음으로 해야할 일에
대해 알아보자.
1> 일단 FlashDevelop을 키고 시작페이지에서  “New:Project… “을 누른다.
사용자 삽입 이미지
New Project창에서 Actionscript 3.0항목에 있는 Empty Project를 선택하여 Name 입력부에 프로젝트 이름을 적어준다. (이때 Create Directory for Project항목을 체크한다.)
사용자 삽입 이미지
OK를 누른후 Project 패널에 source파일을 추가해야하는데, 일단 Papervision Source를 푸가해보자
메뉴상단에 Project > Preference.. 를 선택하고, 해당 대화창의 Classpaths탭을 누르고, Add ClassPath를 
클릭한다.
사용자 삽입 이미지
이렇게 추가한후 Project패널에 프로젝트를 선택한후 우클릭하고 Add > New Class를 통해 새로운 Class를 생성한다.
사용자 삽입 이미지사용자 삽입 이미지
이는 blank class이다. 
처음으로 이 class를 compile할때는, Main AS 파일을 우클릭하고, tree메뉴의 “Always Compile”을 클릭한다.
컴파일된 SWF파일의 위치를 변경하고자 할때는 project메뉴의 Preference를 선택하고, Output탭 아래의 General을 보면 “Output File”옆에 Browse를 눌러 설정할수 있다.
1765372394.as
ActionScript Source :
//
package  {
    // These lines make differant ‘pieces’ available in your code.
    import flash.display.Sprite; // To extend this class
    import flash.events.Event; // To work out when a frame is entered.
   
    import org.papervision3d.view.Viewport3D; // We need a viewport
    import org.papervision3d.cameras.*; // Import all types of camera
    import org.papervision3d.scenes.Scene3D; // We’ll need at least one scene
    import org.papervision3d.render.BasicRenderEngine; // And we need a renderer
   
    public class PaperBase extends Sprite { //Must be “extends Sprite”
       
        public var viewport:Viewport3D; // The Viewport
        public var renderer:BasicRenderEngine; // Rendering engine
        // — Scenes — //
        public var default_scene:Scene3D; // A Scene
        // — Cameras –//
        public var default_camera:Camera3D; // A Camera
       
        public function init(vpWidth:Number = 800, vpHeight:Number = 600):void {
            initPapervision(vpWidth, vpHeight); // Initialise papervision
            init3d(); // Initialise the 3d stuff..
            init2d(); // Initialise the interface..
            initEvents(); // Set up any event listeners..
        }
       
        protected function initPapervision(vpWidth:Number, vpHeight:Number):void {
            // Here is where we initialise everything we need to
            // render a papervision scene.
            viewport = new Viewport3D(vpWidth, vpHeight);
            // The viewport is the object added to the flash scene.
            // You ‘look at’ the papervision scene through the viewport
            // window, which is placed on the flash stage.
            addChild(viewport); // Add the viewport to the stage.
            // Initialise the rendering engine.
            renderer = new BasicRenderEngine();
            // — Initialise the Scenes — //
            default_scene = new Scene3D();
            // — Initialise the Cameras — //
            default_camera = new Camera3D(); // The argument passed to the camera
            // is the object that it should look at. I’ve passed the scene object
            // so that the camera is always pointing at the centre of the scene.
        }
       
        protected function init3d():void {
            // This function should hold all of the stages needed
            // to initialise everything used for papervision.
            // Models, materials, cameras etc.
        }
       
        protected function init2d():void {
            // This function should create all of the 2d items
            // that will be overlayed on your papervision project.
            // User interfaces, Heads up displays etc.
        }
       
        protected function initEvents():void {
            // This function makes the onFrame function get called for
            // every frame.
            addEventListener(Event.ENTER_FRAME, onEnterFrame);
            // This line of code makes the onEnterFrame function get
            // called when every frame is entered.
        }
       
        protected function processFrame():void {
            // Process any movement or animation here.
        }
       
        protected function onEnterFrame( ThisEvent:Event ):void {
            //We need to render the scene and update anything here.
            processFrame();
            renderer.renderScene(default_scene, default_camera, viewport);
        }
       
    }
   
}

FlashDevelop 3.0.0 RC2 released

사용자 삽입 이미지
Post FlashDevelop 3.0.0 RC2 released
This release took long because we wanted to implement all features that might effect the user files and therefore once again, previous FlashDevelop versions are incompatible with this one. Sorry for the trouble. As we are now approaching the final release of FlashDevelop 3, this release is the last feature release. We will now focus only to make FlashDevelop rock solid. We also try to write some documentation about FD basics and all contributors are welcome to join us.

About FlashDevelop:

Features
Screenshots

Changes:

* New events and comments added for plugin developers.
* New installable filetype (*.fdz) to deploy files in FD world.
* Slightly revised snippet editor and now it’s directly included in FD.
* New FlashLogViewer plugin which basicly is an extended version of Andrew Lucking’s FDTracer plugin.
* New dynamic arguments and a dialog to fill them just prior to template creation (was Enhanced Arguments plugin by Mike McMullin).
* Added an option to save UTF-8 files without BOM. To get this fully working like FB set the callback encoding to UTF-8.
* Many new options to the UI and processes in FlashDevelop.
* Newly generated fixed completion intrisic files.
* Updated AIR 1.5 templates.

+ Lots of bug fixes and other small improvements. :)

Future plans:

* Finish the AS3 debugger, investigate profiling.
* Implement class imports reorganisation and packages refactoring.
* Evaluate the possible cross-platform implementation.
* Add HTML/JS projects, investigate Jangaroo AS to JS compilation.
* Make the MXML completion actually smart.
* Integrate properly with Haxe compiler.

Important:

* Those who have customized their menus or syntax files previously need to review the customization notes from the wiki. View the documentation.
Backup your user files and uninstall FlashDevelop with setting files. From this point on we’ll preserve the user files so please customize the files again based on this release.
Get Adobe Flex 3 SDK. The free Flex SDK (2 or 3) is required for ActionScript 3 development if you don’t use Flash CS3.
Get the debug Flash Player (You need: Projector and ActiveX)
* Java 1.6+ is required for the Flex compiler (ActionScript 3).

:!: If you think the program is good, please donate some money for this project. :!:

Download:

Built from rev. 398
Download FlashDevelop 3.0.0 RC2