As you might notice 'entity selection' has been taken off the list, I was dreading this for a while, but in the end I did the simplest solution I could devise.
clicking on the screen and having it decide which of the many entities in the 3D world are selected, there were a few possible approaches but eventualy i decided to simply reconstruct their transformation matrix and transform a quad into screen space. This gave me a 2D area that i could then 2D hit-test which was simple. but there was still the issue of 'which is the closest entity' so if an entity passed hit test i would simply get the distance between the camera center and the entity in 3D space, the closest distance wins =)
This worked out excellently, with no noticable performance hits.
I also spent time over the weekend re-working the UI icons to better fit the rest of the UI, I like the result, you will be seeing those shortly =)
I've also begun tying all of the systems together to create 'the gameplay mechanics' I've decided after long debate to use a 3-choice context senstive system for world interaction.
this is a system very similar to the sytem that was used in The Curse of Monkey Island. While it tends to simplfy puzzle complexity a bit, it also serves to make the gameplay easier, so I think that is a fair trade-off.
So the three categories are:
Eyes: look, examine, etc.
Hand: take, use, touch, push, pull, open, close, etc.
Mouth: talk, taste, bite, chew, eat, etc.
this allows for a wider actual range of 'things you can do'
but doesnt present you with a huge list, rather you choose the 'gist' of what you want to do =)
As for the radial menu in this case?
it is going to work a bit differently, you click, you hold down, and the radial menu pops up, you continue holding, and roll over a selection, then you release.
this method feels WAY better than what i was using before, so we'll be using it =)
So the next big thing is finishing tying all of the systems together, once that is done we basically have a finished engine, with the exception of audio =D
Among other things I invited Donald Beals (Programmer16), to the Project2 development team, he seems to have the Skills, time and drive to devote to Project2 and we'll see what he can do in the weeks to come =)
I also had a productive day with Mark St.Jean (ShoeStringGames), he worked on some things for the Project2 website, and I gave him some advice on how best to organize his gameplay specs so that he can code a solid system for his game.