Close Show/hide page

{zero point nine} personal experiments, etc.

Announcing "min3D", a 3D framework for Android

Why yes, that is the Earth revolving around the planet Jupiter

This post announces a 3D framework/library-in-progress I've been writing for Android, written in Java with OpenGL ES. Between the names min3d, modest3d, and llama3d, I've gone with "min3d" for being the least self-deprecating while still conveying an appropriate level of expectation that I'm comfortable with.

Read more

Android Red Bouncing Ball

As the coder sits down to learn a new programming language or platform, the first thing he or she must do is learn to make a program that successfully prints the words "Hello, world!" to the screen.

The main significance of this first minor feat as it relates to the programmer is not epistemological, technical, or temporal, but psychological. Crossing the -- shall we call it the "Hello world" threshold? -- brings with it the realization of the existence of a universe of infinite possibilities. But also the burden and intolerable vertigo that comes with that sense of unlimited freedom.

For, alas, there is no standard "second program" for the geek aspirant to sit down to write. The programmer is on her own. Of the potentially infinite paths that lie in front of her, which will she choose?

Actually though, the most common second program chosen with pedagogical motives in mind -- I would submit -- would be that venerated bouncing ball, colored 0xFF0000. If you come from a Flash background, you probably know of it well.

This is mine, on the Android platform.

Using NativeProcess in AIR 2 for screencaps

Thumbnail

One way of learning how to use a thing is to proceed directly to trying to abuse it. My aim here was to get familiar with AIR 2's new capability of interacting with external processes' standard streams.

To that end, this AIR application takes in a fairly continuous stream of uncompressed binary image data from a native process' standard output. My hope was to get real-time screen capture updates into AIR at a decent frame rate.

Read more

More Fun With Texture Projection

Updated with video (8/25/2010)

Thumbnail - Click meClick to launch demo

Here I'm just expanding upon the 'texture extraction' idea posted before. This version maps video onto 3D objects in a much more direct manner by using ray-casting, like the examples in the last several posts.

Controls:

Read more

Augmented Reality Texture Extraction Experiment

This is an AR-based experiment that enables the user to lift textures from real-world objects in live video and apply them onto 3D objects that are overlayed on top of them. Only box primitives are supported here, but the general idea could be extended to other types of 3D primitives or potentially even more complex objects with some clever image compositing and UV mapping.

Read more