I've enumerated them here for easy reference. I've started looking at them all and include some (yes, fairly ignorant, I'm not graphics guru) notes below. If you have some thoughts or just want to talk about them, post here or IM me inworld.
1) Create an algorithm and OpenGL demo for converting SL geometry into 3D imposters. This is different than traditional 2D imposters. A 3D imposter is a reduced geoemetric representation that can still be lit.
A good place to start might be here:
http://www.cs.berkeley.edu/b-cam/Pa...en-2004-IAI.pdf
So, for example, a large building (this is a simple case) could be represented by a single, large cube. Imposters need not be constrained to SL primitives and should instead be created from polygons (albeit, a small number of polygons).
2) Build an Open GL application that allows you to build flow charts, where output from specific elements act as inputs to other elements, with the ability to make different shapes and proper path finding for the connections.
Used as a UI element, this could allow for visual script building, material definitions, etc.
3) Create an optimizer for transforming arbitrary 3D mesh geometry into SL primitives. The optimizer would need to be able to tradeoff processing time, error, and number of created primitives.
This would be an incredibly useful addition because it would be the major step in allowing data from applications like Max or Maya to be imported into SL.
4) High quality machinima. Given the flexibility of SL, especially with private islands, it seems possible to create some truly amazing machinima.
5) A cross-platform speaker dependent speach recognizer. There are a host of features that this would allow, but sadly most of the products in this area are either not cross platform or are speaker independent, resulting in much lower recognition rates.
6) A high-quality text-to-speech system (again, cross platform) that allows dynamic blending of speech fonts or truly synthesized speech. Again, many interesting options appear if this technology was around.
7) Demonstrate high-quality procedural locomotion cycles for different combinations of legs. More importantly, demonstrate methods for blending those cycles with non-kinematic and prebuilt animations.
My notes:
1) CrystalSpace (the open source version of a potential SL graphic engine) has some code / interesting ideas on imposters. If anyone is interested in persuing this one, they'd be a good research starting point.
I believe the challenge here will be more iterating the full set of primitives into a data descriptive format which is useful for various challenges. However, the beauty is that once we have that we can go on to build tools outside of SL
I suspect peeking into the metaverse(.sourceforge.net) code pace might provide some hints as well. My little pinky (or maybe it was eggy
tells me that hugh is wise enough to try to leverage the contents of the SL for his project.Another reference:
(http://www.cs.umd.edu/~jra/gen1.pdf)
The idea, of course, is that procedural based generation of graphics is a highly optimized stream (too bad the textures are the bottlneck!). To repeat, now we need to reverse engineer and rewrite those procedure definitions for SL primitives outside of SL.
Of course, we then have the fun task of creating the imposters. HmmM! And as for the lit aspect, hmm! Not sure. This is all just fun brainstorming.
2) Yeep. This seems pretty cool, makes me think of Genetica 2, maybe? Sounds more like a tedious programming effort than a 'technical challenge', though.
3) Create an optimizer for transforming arbitrary 3D mesh geometry into SL primitives. The optimizer would need to be able to tradeoff processing time, error, and number of created primitives.
Now this should have been #1. And I have (so has Jeffrey, to more success) tackled this one.
How do we take an arbitrary 3D mesh and break it up into SL like primitives? Not sure. I think however we may have to force LL to compromise and enable a few more primitives which would make this problem more tackable. Right now I think the current set of prims are for in world building of interesting things and less about translating arbitrary 3D objects into procedural primitives.
If not, then I think key would be to re-use the effort that went into #1 somehow for #3.
4) Yeah, give us LSL commands to manipulate other people's avatars or give us the ability to build and automate our own avatars. I'm sorry, but building a computer out of tiddlywinks is not a technical puzzle, it's an exercise in futility.
Though, again, Jeffrey has some very very clever stuff around here if you really felt the need to tackle this one (yes, yes, we are not worthy, jeffrey

5) Ahahahahahahaha! Good one! I can't even get my dragon naturally speaking to work properly! and 6) (this where I'm starting to feel like this is all a tasteless joke meant to waste everyone's time) If anyone took these two options seriously, please, let me know.
I'd be interested in understanding your reasoning.
7) "different combinations of legs" .. does that mean like quadripeds? Anyone who knows more, please post..
Anyways, these sound like kinda fun. Hopefully people will take the time to think about and discuss them. Even if they don't get integrated with SL/LL, solving these problems (1 and 3, especially) would go a long way to developing tools outside of SL that we can integrate via commands like llSetPrimitiveParams

