Programming

Check out this video from a PhD student at Cambridge:

He generates a point cloud from a moving 3D model, tesselates, and textures it in real time. I guess the studios all do that too, but if it can be done with a cheap-o webcam, then anybody can do it. For more, get the paper from his site

Someone just posted this to the OpenSceneGraph forums. Evidently Google released O3D a couple weeks ago - it's a plugin for loading 3d content in a browser, and it uses Javascript to drive the interaction. On the surface, it sounds conspicuously like C3DL, another browser plugin for loading Collada models. Read a little further, you'll see there are some technical differences, but even if there were not technical differences, the advantage would go to any product from google. At least until Firefox gets native support.

I tried google's plugin with Chrome on my work desktop, their complicated sample gets about 4 fps, but I don't think my graphics card does shaders very well. The simple cube renders a lot faster.

Here's their demo video:

The advantage over Papervision or other flash-based code is that they can use DirectX hardware shaders. The disadvantage is having to install yet-another plugin.

I just came across TileStack, an online version of the old Mac "natural language" programming tool HyperCard. Their FAQ says it's 95% compatible with HyperCard stacks, which sounds impressive. I never really used HyperCard, but it looked like a great tool for non-programmers to do slick GUI-type stuff, and remember some people who really liked it.

What's interesting here is that they translate the Speak/HyperTalk code into Javascript on their server, which runs native in any browser. I may have to tinker, but here's one of the stacks from their front page:

Updated 7/8/09 - Added the axes, complete with XYZ letters billboarded to them, and a few more controls - WASD moves the camera, arrows move the model, and -/+ keys change the size.

I've been tinkering with Papvervision3d, based on some tutorials on the Papervision2 site, specifically #6 here. I had to add some activate/deactivate event listeners to one of the generic examples to get it to keep from killing a cpu when not even activated, but I think this is alright now.

Testing this to see if it takes any less load as an embedded flash than direct swf loading:

Click and drag to rotate:

968 vertex sphere:

Simpler generic cow model:

An updated Wave Generator -

I've been looking at some different waveform generation, and updated the sine-wave generator from last year with a few other functions, using the harmonic series formulae on wikipedia for triangle, rear, and front sawtooth waves. Embedded below is the updated version, tinker with the number of harmonics for the non-sine waves and you should see how they converge.

Full Screen

Wikipedia Entries:
Triangle Wave
Sawtooth Waves

Saw an interesting mathematical function on populations, showing how it could be normal for a wild population to have seemingly chaotic rises and falls. I thought it'd be pretty easy to adapt the sine function previously posted to this "Verhulst" model:



Try some different growth rates (2.2 seems to work pretty well) to see the population bounce around from year to year.

Right click and download this link to the source if you want to compile it in Flex Builder.

I needed a sine wave pattern, or an easy way to generate them, for a generic file at work the other day. I used to do this kind of thing in Excel, but it was pretty easy to just make a little program in Flex Builder, which compiles to Flash, to do the same thing. It's just some buttons and a text field. I added the plot later, it was pretty simple too.



Play with the numbers a little and click the Generate, or just click the Generate button. Useful for me, probably not many others.

XML feed