At the end of Sunday’s PV3D training class in NYC, I think everyone was in a bliss stupor – including myself. It was the first time I had a real chance to get my head around the possibilities his classes give us with PV3D and as I walked around class to make sure everyone was compiling ok, I was seeing people take off in amazing directions with the effects demo of the Borg cube (above). I could hardly wait to sit down and start playing with this stuff myself! So, in the taxi on the way to the airport, I pulled out the laptop, borrowed Mr Doob’s new ball and went to town on the effects api
BIG thanks to Moses (Yes, of Fuse Fame) for the color transform that makes it look like fire
Red Ball Acceleration Demo
As the ball gets faster, it warms up! The code below shows you how you can use BlendModes and color transforms to really come out with some sick affects. The only thing holding me back with these is my lack of experience with color manipulation. In the hands of someone like Grant, Carlos or Andy, it'd be unbelievable what they could come up with!
[as]bfx = new BitmapEffectLayer(stage.stageWidth, stage.stageHeight, true, 0, BitmapClearMode.CLEAR_PRE);
pv3dContainer.viewport.addRenderLayer(bfx);
bfx.addEffect( new BitmapLayerEffect( new BlurFilter(10,10,4)));
bfx.addEffect(new BitmapColorEffect(.99, .98, .98, 0.98));
ct = new ColorTransform(1, .2, .1, 0.45); // RED
var drawCommand:BitmapDrawCommand = new BitmapDrawCommand(null, ct, BlendMode.ADD);
bfx.drawCommand = drawCommand;
bfx.drawLayer.blendMode = BlendMode.OVERLAY;
[/as]
Blue Vapor Trails
It's supposed to be what it might look like if this really cold blue ball were falling through a evening atmosphere hitting warm pockets of air and creating some sort of vapor trail
[as]bfx = new BitmapEffectLayer(400, stage.stageHeight, true, 0, BitmapClearMode.CLEAR_PRE);
pv3dContainer.viewport.addRenderLayer(bfx);
bfx.addEffect( new BitmapLayerEffect( new BlurFilter(10,10,4)));
bfx.addEffect(new BitmapColorEffect(.95, 1.0, .98, 0.98));
ct = new ColorTransform(0, .5, 1, 0.18); // BLUE
var drawCommand:BitmapDrawCommand = new BitmapDrawCommand(null, ct, BlendMode.ADD);
bfx.drawCommand = drawCommand;
bfx.drawLayer.filters = [ new GlowFilter(0xFFFFFF,.5, 0, 50, 10)];
bfx.drawLayer.blendMode = BlendMode.MULTIPLY;
bfx.clippingPoint = new Point(9, -20);[/as]
And Finally - this guy's right out of the NYC class and creating sickness
I guess he liked the effects






December 6, 2007 at 6:45 pm
John, I did like the effects! I was pissed at you guys for not including them in Great White
For this demo, I actually manually created a bitmap layer under the viewport and did the drawing / filtering in the enterframe loop, and then set the viewport’s blendmode to overlay, instead of letting the renderer handle the layering. I used this technique to fake some effects for a holiday e-card with 1.5. I really was pining for the nicely automated effects that were in the source at the conference–the layer architecture makes sense. Again, the team has done such an outstanding job of thinking through the correct architecture of this framework. Just awesome. It feels like its really scalable and ready to be extended. By the way, I’m fairly certain that I’m now the official PV3D fanboy / evangelist here at the agency. It’ll get really bad when I electrical-tape a mesh on my car and stick on a “Filmed in Papervision” window graphic.
December 6, 2007 at 7:06 pm
@Francis: Yes, I’m sorry, we talked about getting andy’s effects in there for 2.0, but all agreed that with all the other stuff we’re going to have to manage and fix with what is already a huge upgrade, we’d either provide another branch or make it an add on. I personally want it to be integrated as I think he’s done an unbelievable Job with making very open and powerful. Andy knows’ what he’s doing to say the least
December 7, 2007 at 5:28 am
Great Work Francis… and yes John.. everyone was in a bliss stupor at the sunday class in NY. lol.. you would hear everyone going “OHHHHH…… AAHHHH… WOW! ” every time Andy showed a new effect!! it was awesome! Great CLASS! definitely worth my time money and leaving Miami for a few days!
next class .. count me in for sure!
December 7, 2007 at 11:57 am
So cool… can’t wait for Ralph’s class in London next week!
Wish you were coming along too, John!
December 7, 2007 at 12:49 pm
@Aral: I SO wish I could go!!!
December 7, 2007 at 3:30 pm
Just Incredible!
December 7, 2007 at 11:44 pm
Outstanding stuff! Stoked about the Feb. ‘08 class in San Francisco.
December 8, 2007 at 12:33 am
[...] For those interested in learning more, core developer John Grden will be conducting a 2-day class in February 2008 in San Francsisco. Here’s his report from the class conducted last weekend in New York City. Astounding results with so little code. If you’re into Flash and are curious about 3D, this is a good opportunity to get a rapid brain transfusion. [...]
December 9, 2007 at 9:00 pm
the borg cube is really tight!
i cant wait to check out andy’s new effects!
the 2.0 api is just amazing!
the lil’bit’o'code you posted
was enough for me to get going!
all the new stuff i have messed
with are sweet!the new shaders,
the simplicity of creating a scene,
auto-culling in viewports!
i could keep going on….
but i wanna keep playing with the
great white! thanx again!
December 10, 2007 at 8:25 am
Wouaou! Thanks for this blog and all example you give us!!
December 10, 2007 at 8:55 pm
[...] Unter dieser Adresse gibt es neue Beispiele mit der aktuellen Version von Papervision3D, die allesamt recht beeindruckend sind. Besonders gelungen ist der Audio-Visualizer, der sich hier findet, aber ziemlich auf die CPU geht. [...]
December 11, 2007 at 12:10 am
DUDE!!! THIS IS HOTNESS!!!!!!