New Video Tutorial on Papervision3D 2.0 Interactivity

I just uploaded a new tutorial to gotoAndLearn() that shows you how to use Papervision3D 2.0 to create an interactive cube like the one shown below. You use your mouse to spin the cube and clicking on one of the faces will launch the corresponding website. This is using the GreatWhite branch of Papervision3D so make sure you have the correct classes before trying it out.

This text is replaced by the Flash movie.

Have fun!
Lee


Commentary

  1. KL says:

    I recently made some components for a Flex gig using Away3D and Flash. So this is quite nice to see. I quite like using Away3D as its faster to set up 3D in Flex/Flash. Plus I can wow the office when I load Maya game models into Flash and start controlling them.

    Will check out your video later! Thanks for sharing as usual.

  2. Fissunix says:

    I’ve just watched your tutorial and it will help me a lot with Papervision. Thanxs a lot !

  3. Really cool, thanks for sharing, actually i try to develop a miniapplication with papervision is awesome!!

  4. count0 says:

    Those software renderer is nice and the developers do a great job, but they are not good enough for big scene and character animation, IMHO.

    I am still waiting the HW-accelerated flash or the new Director/Shockwave.

  5. count0 says:

    Oops, saying “HW-accelerated flash” meant HW-accelerated 3D Flash renderer, of course…

  6. Dave Gamez says:

    Thanks for sharing !!!

  7. Lawrence says:

    You have no idea how long I’ve spent constructing one of these…

  8. Lawrence says:

    Another thought:
    Out of curiosity, how is the new keyboard? It is the new Apple one right?

  9. umbrella says:

    Very nice layed out.

    I actually understand papervision3D basic way better now as with your other tutorial, maybe because this one is a bit more advanced and covering alot of aspects

    Thanks kindly for the work again

  10. oliver_l1 says:

    Good Tutorial! Hope to see more pv3d 2.0 tutorials .
    Thank you!

  11. I was playing certain attention on my CPU cycles, and it seems like Papervision3D does an excellent job in that area.

  12. Phil says:

    Hey, another great tutorial Lee! I just tested the source files though and I seem to be getting compiler errors. I’ve updated my papervision source using Tortoise SVN. I get 7 errors and they are all in BasicProjectionPipeline.as

    Checking the tortoise log, this file seems to have been updated today so it looks like these new edits could be affecting this source.

    I am fairly new to papervision so maybe someone out there has some advice.

  13. lee says:

    @Phil I just let Ralph from the Papervision team know about it. He’s working on that file now.

  14. Hi Phil,

    Please update your repo again, with the last rev currently in the repo it works.

    Ralph.

  15. @Lee: You seem to be having the same problem with your cube that I’m having with mine. The way that the axis rotate in Papervision seems a bit odd to me. Try this:

    -Slowly move your mouse “North” and what how the cube rotates.
    -No rotate the cube one face to the East or West
    -Again, slowly move your mouse “North” and what how the cube rotates.

    Repeat this process and you’ll notice that the axis itself gets rotated with the cube causing a different rotation to occur depending on which face is up. The funny thing is, if you try to compensate for this by rotating it about the z-axis when certain faces are showing, you’ll notice that the z-axis does not seem to rotate, unlike the x and y-axis. Odd…

  16. lee says:

    @Ralph thanks for the quick response!

    @Nate yeah I’m not good enough at 3D to know how to make it always rotate correctly. I think it makes sense that the axis rotates but I’m not sure :)

  17. Phil says:

    I updated my papervision source and the log now says comple at rev 497 yet I get the same errors. I will now post them.

    1061: Call to a possibly undefined method calculateMultiply4x4 through a reference with static type org.papervision3d.core:Matrix3D.

    1119: Access of possibly undefined property eye through a reference with static type org.papervision3d.core.proto:CameraObject3D.

    1061: Call to a possibly undefined method calculateMultiply4x4 through a reference with static type org.papervision3d.core:Matrix3D.

    1119: Access of possibly undefined property eye through a reference with static type org.papervision3d.core.proto:CameraObject3D.

    1119: Access of possibly undefined property eye through a reference with static type org.papervision3d.core.proto:CameraObject3D.

    1119: Access of possibly undefined property eye through a reference with static type org.papervision3d.core.proto:CameraObject3D.

    1067: Implicit coercion of a value of type org.papervision3d.core.render.data:RenderSessionData to an unrelated type org.papervision3d.core.proto:CameraObject3D.

  18. Phil, your problem isn’t one of Papervision3D, rather your installation. In either your preferences for Flash or the build options for the .fla you still have a classpath for an old version of Papervision3D.

    Essentially you are trying to use 2 versions at the same time. That mix will make these errors occur.

  19. Mark McDonnell says:

    Hi Lee, I was unable to download the “GreatWhite” classes? Can you explain how to do this from the Google Code site (apologies for the stupidity but I just couldn’t work it out).

    Thanks.

    M.

  20. Craig says:

    Lee,

    Great tutorial. It certainly helps me understand PV3D more than any other tutorials I have seen.

    At this point, I assume that we move forward using version 2.0 and drop 1.5 ?

    Thanks again!

  21. Craig says:

    Lee,

    Is the documentation for version 2 available?

    I am looking for something similar to: http://www.papervision3d.org/docs/as3/

  22. Chris Fr says:

    Hi,

    i have exactly the same error as Phil. I dont understand, my papervision source codes are ok but the cube dont work.

  23. Nik says:

    Hi Guys,

    @Phil and Chris … I was having the same compiler errors relating to BasicProjectionPipeline.as. I found that the problem was due to conflicting class packages. I had papervision 1.5 in my main classpath, and had also set a new classpath to point to my SVN repository, which was within an Eclipse workspace.

    Be sure to remove old class package versions and you should be able to get things working…

    Lee – Thanks for the Great tutorial and source code to learn from!

    Nik

  24. Gabriel says:

    @Nick Hi, Thank you very much Nik! Your post has saved the day! ;) I had the same problem as Phil and Chris and eith your post I resolved my compiler issues. Thank you!

    @Lee

    GREAT JOB! Keep going!

    Gabi.

  25. Phil says:

    @Nik

    Thanks so much, that totally fixed the problem. A pretty simple solution, so now I am kicking myself.

  26. jester says:

    nik-

    You are da bomb. I was getting some residual weirdness with my compiler too – you cured my headache! You are the man, don’t let anybody tell you different. Thanks champ

  27. timb says:

    nik,

    who da man? YOU DA MAN!!!

    …and a talented flash master as well!

  28. duckeyejey says:

    Hey Great tutorial etc.

    Could you explain how you managed to create the glow around the cube which is visible on this site, the version created by the tutorial doesn’t have this.

    Another thing i’ve noticed is that it appears to run more smoothly in a browser than in the flash player within flash, why is this?

  29. duckeyejey says:

    Oh I get it. great you can now just apply effects to the viewport as if it was any normal movie clip. viewport.filters = [yourFilter];

  30. Shibli says:

    Hey Lee,

    I am very impress to see papervision3d cube tutorial. I have Flash cs3 and I did everything everything whatever you did but it gives lots of error. I don’t know how I am i going to solve it. I really appreciate if you show me how to install these greatwhite file. Warning: 5004: The file ‘playerglobal.swc’, which is required for typechecking ActionScript 3.0, could not be found. Please make sure the directory ‘$(AppConfig)/ActionScript 3.0/Classes’ is listed in the global classpath of the ActionScript 3.0 Preferences.

    and lots of syntex error is showing.

    I would be happy if you tell me what i have to do?

    Thanks
    Shibli.

  31. Shibli says:

    Hey Lee,
    Now only one error is showing :Warning: 5004: The file ‘playerglobal.swc’, which is required for typechecking ActionScript 3.0, could not be found. Please make sure the directory ‘$(AppConfig)/ActionScript 3.0/Classes’ is listed in the global classpath of the ActionScript 3.0 Preferences.

    I would be happy if you tell me how am i going to get this file.

    Shibli

  32. Shibli says:

    Hi Lee,

    In Actionscript setting ‘$(AppConfig)/ActionScript 3.0/Classes’ > and I move it up by arrow key.but Still same problem is showing.The file ‘playerglobal.swc’, which is require.

    I really appreciate if you tell me how am i going to solve the problem.
    I need quick respond from you.
    Thanks
    Shibli.

  33. Shibli says:

    Hi Lee,

    I fix this Problem The file ‘playerglobal.swc’, which is require but again now it’s gives me lots of compiler error- 48 reported. Such as
    1093: Syntax error.<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Strict//EN”.

    It would be great if you give me a reply. It’s really paining. I spend whole day for that but result is 0.

    Thanks
    Shibli.

  34. DennyGSXR says:

    Good work!

    I have written a 3D game in Flash, using my own 3D engine, but I think that in future I will try to use pv, I think it is quicker!

    This is a link to my game:

    http://www.menato.net/cyberkart3dWEB.html

  35. Dimitris says:

    Nice tutorials as usual!

    My problem is I get a slow responce in the mouseclick event on each “face” of the cube. I mean, I have to click sometimes twice in order to get the URLrequest.

    Thanks again for great job on Papervision3D

  36. Boris says:

    Hi Lee,
    great demo, i tried to bring your code in a Flex app. Look at my approach here:

    http://labs.vizar.de/papercube/

    Keep on coding.
    Boris

  37. Jose Romero says:

    Not really optimized yet, runs slow, maybe it should be running with away3d.

  38. Jose Romero says:

    I have a comparable one made with away3d which runs smoothly and take only 22% of cpu usage, in comparison this turtle takes 52% and not without glitches once every 20 seconds. this should be called pre-alpha.
    Overall very impressive work with serious performance issues, and totally useless in terms of real world applicability.

  39. lee says:

    @Jose Can you post the URL to your example. I would like to see the Away3D version.

  40. Romeo_T says:

    Hi guys/dolls,

    I’m having the same problems that Shibli has/had. I tried everything so far. Checked and rechecked the code the setup, deleted PV3D and did a complete new download….and still no result.
    But I still went from 7 errors to only these last 2.
    - warning 5004 playerglobal.swc could not be found.
    - error 1017 bitmapdata was not found.
    If there is anyone who could point me in the right direction to solve this.
    Master Lee.. I still need to thank you for the great tutorials you put out there.

    For the help… Please.
    Thank you

    Romeo.

  41. Stephen says:

    So I’ve downloaded the source file for this tutorial and I’ve checked out the latest version of Papervision3D Great White, but I’m getting an error. The error is…

    “1137: Incorrect number of arguments. Expected no more than 2.”

    This error is located in VirtualMouse.as and I believe the function is defined in CoordinateTools.as. Now I’m not sure why this error message is showing up, because when the function is defined in CoordinateTools.as it lists three parameters. Is anyone else getting this error? Does anyone know how to fix it? Please let me know.

  42. Rhye says:

    nice example. Do you know how to apply the filter on the cube to only one face or DisplayObject3d in the scene? I was trying this with effects branche and this branche
    runs slow…. (:

  43. johnny says:

    very nice staff, thanx Lee. I have a problem to load this cube.swf to my main flash site. Any other swf files works but this cube. Lee could u help me and tell why its doing that?

    Thanks

  44. Daved says:

    Hello.
    I have the same problem:

    Syntax error…
    Syntax error…
    Syntax error…
    and so on 24 of them. I can’t do anything about them.

    Is there anybody who knows to solve this problem?

    P.S. This problem occurs whatever import org.papervision…. I do, and no mater what papervision3D tutorial I try.

    I’ve put the papervision3D files on a folder “org” on desktop, but still the same problem.

    Please if someone know how to solve this problem answer me.

    Regards,
    Dave.

  45. Gilbert says:

    Lee,

    As always great tutorial.

    I have one question: Can yo load the MovieMaterials’ images at run time?

    Gilbert

  46. Boris says:

    Gilbert,
    check out that app (http://labs.vizar.de/papercube_v2), that will load videos and bitmap at runtime, driven by a xml-file

  47. commenter says:

    Hey,
    I have seen this cube interactivity example many times and not one seems to be correct. Ever tried to get the YouTube Logo to rotate 90 degrees? It doesn’t work because you are not rotating in world axis. When you move the mouse left and right you rotate the cube in world axis but up and down uses the coordinate system of the cube, this makes it impossible to reach every rotation you want…
    Has anyone solved that problem? Or is it really necessary to make an own rotation matrix?

  48. Damocles says:

    count0 is the kind of biggoted frigging itiot that derails projects. It is sad that people like that are even born.

  49. Brandon says:

    Hi everyone,

    Lee’s files work great, but the example files included with the GreatWhite files do not work! Can anyone help me with this?

  50. gordee says:

    Very cool Lee thanks!

    It is pretty processor heavy though any advice? I guess alower frame rate would help….

  51. Bruno says:

    Great tutorial, thank you Lee!

    Many thanks to Nik and Ralph Hauwert as well. I had an older version of Papervision3D in my classpath and I was going crazy trying to make it work. Now it works! Cheers!

  52. gordee says:

    I have set up the classpath to the correct version of papervision and it worked the first time and now it only works when it feels like it. Why is this?!?

  53. joani says:

    Hi!
    I’ve tried more of your tutorials and all but this cube worked properly..

    Here is the error I get every time I compile. I use Adobe CS3 for these tests, and I have all the times the GreatWhite papervision source in the same folder as my applications.

    Can you help me fix this?
    Thanks

    ArgumentError: Error #1063: Argument count mismatch on pvcube_fla::MainTimeline/loop(). Expected 0, got 1.

  54. marto says:

    maybe am the missing link to evolution or something, but I just spent weeks trying to load the classes, I even loaded them manually which was such an endurance test…..wish there was that one link that if I clicked would take me to a folder labeled “greatwhite”….and Lee, i will never forget this words “you can figure that on your own”…at the beginning of this awesome tutorial…..but you’re forgiven, coz you’re still the best flash teacher out there;)….so how do I load the classes?? anyone??

  55. Tyler says:

    @Lee

    Thanks for this cube, making my introduction into Papervision3D that much smoother. Love your tutorials

  56. melissa says:

    I tried to convert this code to use BasicView for setup, but I’m having trouble applying event listeners to the faces. Has anyone else done this? Any ideas?

  57. Munna says:

    very cool tutorial, just any help on changing the event listeners to click and move to any other scene or any frame inside the scene.. having hard time customizing that section.. any help on this??

  58. zornic says:

    I have some AS3 problem at CS4 (1137: Incorrect number of arguments. Expected no more than 0.)

    function drawSymbols():void {
    for (var i:int = 0; i>>>>> aSpinners[i]= new Spinner(i); <<<<<<<<
    gameScreen.addChild(aSpinners[i]);
    aSpinners[i].x=currentColumn*hSpace;
    aSpinners[i].y=currentRow*vSpace;
    aSpinners[i].gotoAndStop(aShuffle[i]);
    aSpinners[i].addEventListener(MouseEvent.CLICK,clickSpinner);
    }
    }

    Please help me !!!!!

  59. zornic says:

    function drawSymbols():void {
    for (var i:int = 0; i>>aSpinners[i]= new Spinner(i);<<<=
    gameScreen.addChild(aSpinners[i]);
    aSpinners[i].x=currentColumn*hSpace;
    aSpinners[i].y=currentRow*vSpace;
    aSpinners[i].gotoAndStop(aShuffle[i]);

  60. Thanks for this, it pointed me in the right direction.

    For those who need GLOBAL axis rotation rather than LOCAL axis rotation I leave here a link to a way how to do it.

    http://blog.federicocalvo.com/2009/03/papervision-3d-sphere-globla-axis.html

  61. Jagz says:

    hi Lee ..am a great fan of your gotoandlearn… I have just started with paper vision. I am unable to figure how to get the Great White branch .. can u help ??? Dont have much experience with these repository stuff..please email me if possible..

  62. leef says:

    the cube isn’t being positioned in the center

  63. leef says:

    nevermind, I forgot I was linked to a movieclip on stage = \

  64. Jeffrey says:

    I wrote the script manually exactly as shown on the video. I had to do this because the code found on Google (Great White) is deleted. When i published the movie I got many errors, all similar to this one:

    description:
    1172: Definition org.papervision3d.scenes could not be found.

    source:
    import org.papervision3d.scenes.*;

    please help me, I’m really stuck on this

  65. js says:

    hi everyone,

    I’m trying to add mouse_over, mouse_out function to the cube. But mouse_out doesn’t work. My guess is that because the cube is rotating flash has some difficulty recognizing when the mouse is out.

    I also tried to put a button inside the movieclip of each face but they simply don’t work.

    help!

  1. [... I just uploaded a new tutorial to gotoAndLearn() that shows you how to use Papervision3D 2.0 to create an interactive cube like the one shown below. You use your mouse ...]

  2. [... I just uploaded a new tutorial to gotoAndLearn() that shows you how to use Papervision3D 2.0 to create an interactive cube like the one shown below. You use your mouse ...]

  3. [... I just uploaded a new tutorial to gotoAndLearn() that shows you how to use Papervision3D 2.0 to create an interactive cube like the one shown below. You use your mouse ...]

  4. [... I just uploaded a new tutorial to gotoAndLearn() that shows you how to use Papervision3D 2.0 to create an interactive cube like the one shown below. You use your mouse ...]

  5. [... I just uploaded a new tutorial to gotoAndLearn() that shows you how to use Papervision3D 2.0 to create an interactive cube like the one shown below. You use your mouse ...]

  6. [... I just uploaded a new tutorial to gotoAndLearn() that shows you how to use Papervision3D 2.0 to create an interactive cube like the one shown below. You use your mouse ...]

Leave a Comment