Sometimes I get shader compiler errors that don't really help me to spot the problem fast. Sometimes I don't write shaders for months, so it takes me always some time to get back into groove. Moreover I "ain't no" Shader-Guru so Shader issues are not always obvious to me.
So today it was time to rig up a new one, so I started with a basic structure. I have a couple of shaders from past projects that I use as reference but they don't use a common terminology or structure. Something I like to change. Therefore I set up those two structs for the VS/PS input streams and, as I had no real pixel shader code ready, I thought that I'll simply output the vertex position as dummy data until things are more detailed.
Bad decision. Compiler error says "invalid input semantic 'POSITION'". I was like "what the …". I mean if you don't have it as part of the struct/stream, it complains that it needs POSITION to be filled. Moreover I have plenty of shaders where POSITION is part of the struct and therefore part of the Input …. well the last part of the sentence is a bit wrong.
You can't access POSITION from within the Pixel Shader and that's what generates this compiler error. It's OK to have it in the struct so it can be filled by the Vertex Shader but don't use that field in the Pixel Shader. If you have to, you need to write the value inside the Vertex Shader into another register that can be used by the Pixel Shader.
Pretty obvious now … still the compiler error message could be more clear…
One week ago I was, like often, on the market with my girl friend. At the center there is some green space that you can't see easily from the outer ring where the business happens. At a moment I heard faintly some nice sounding guitar music. It seemed pretty nice so I decided to investigate … and there was this guy sitting on an amp below a tree with his acoustic guitar … with only a handful of spectators. He played some funky stuff that I liked - also the sound was very good.
Then he started to sing and I was surprised - it was pretty good! It's not unusual that musicians play at the "Boxhagender Platz", that's how this place is named. Sometimes the music is good, sometimes not. This time I liked it that much that I bought the CD after having heard only few songs. Later, we listened to the CD at home and even went to his concert the same night.
His music is a nice mix of blues, jazz, soul, funk and certainly plenty of other influences. If you go to Rob's MySpace Site I recommend to listen first to"It's Jazz Baby", and then to "Number Through …". Other great songs of him are on the CD.
It's great to discover good music and musicians this way!!
It is said, that people don't buy CDs anymore … well when I see musicians play music that I like, I buy their CDs!! (And all of them have been DRM-Free so far!)
Something that was missing in Unity3D was the possibility to extend it's editor with new GUIs. There were wizards but that's more like "Actions" in Virtools. The 2.1 release changed the situation - you can now create new editor-windows using the C# and Unity's scripted GUI engine.
As results, creating custom editor stuff is probably much easier than in Virtools, where you need to use MFC (which I really don't enjoy using). Unity3D's GUI engine is really nice. You don't have a MVC (Model-View-Controller) style but logic and view are in the same place. I already read prior to Unity about such an approach which, I think, is called Immediate-Mode. (Oh, I think I just found that source again - it's a video about immediate GUIs). At first I was skeptical after having watched this a couple of years ago but when I did some tests, at the beginning of this year, with Unity3D, it really made me grin happily!
You quickly implement dynamic, complex and adapting GUIs. I tried something similar to what I did in Unity with CrazyEddie's GUI for OGRE3D which uses the classic retained mode. It comes with an editor and compared to Virtools it's really nice… but … I was slower in implementing a less functional version of my Unity3D prototype GUI. Interesting!

So let's get back to topic. There are two Editor-Extension projects for Unity3D where a visual front end for connecting logic are developed:
GraphEditor from Forest Johnson for i.e. creating procedural textures
AngryAnt::Behave to compose behaviour trees
Another interesting topic … AngryAnt refers to aigamedev.com, a site I am reading frequently since it's early days, too. It's very interesting place and I often try to think how some of the presented stuff can be done inside Virtools. Of course, with a graph you can create a behaviour tree - but the interesting part is to dynamically manage (extend) such a tree. It can be done by manually managing Virtools scripts, as you can pause and resume them easily, but some high-level editors/-logic to do this or other FSM-like implementations, is something I am missing for years now.
Well, to resume: immediate GUIs are really interesting, so are Behaviour Trees or Graphs. I think C# makes it easier to develop such editors/frameworks …
Some random 3d related things:
a low cost 3D paint package is 3D-Coat. It's a bit like an indie version of Z-Brush oder Mudbox. Some people on CGTalk were very sceptic but after giving it a test-drive many of them like it. Some even love it's retopology feature and use 3D-Coat complementary to Z-Brush.

This procedurally animated 3D spider in flash is very nice! I guess in the next years there will be more and more 3D in flash.
The results of the Ogre3D user survey 2008 has been released. Here is one quote of it
Just over 63% of the respondents were using OGRE either for their own enjoyment or as part of their studies, with just over 50% of that group intending to go commercial with their products later. 29% of respondents were using OGRE for commercial products, with 83% of that group producing closed source products. The remaining 8% of OGRE users were mostly dominated by Academic / Scientific users, with a small handful of government users.
Zign Track is a low-cost facial tracking software. It exports to BVH. No idea how well it works but for that price it might worth an evaluation. The following picture is from a demo video:
Unity Technologies has released extensive statistics from user's hardware where the Unity3D webplayer installation was successfull. They say that it's based on 3 millions data entries. The target audience is the 'casual gamer. It has already been said that this group has older, low-end hardware and usually do not update their system (like drivers etc). Aras (the main guy behind this) resume is:
Casual machines: capabilities quite okay, performance low, low, low. That’s life.
Something that surprised me is, that Mac is still a tiny market share (~ 2.6%). In Berlin's Bars and Cafés I mainly see people with Macbooks - it really increased a lot in the past years. On the other hand, in July, at the Paris airport I mainly saw PC-based notebooks. Their owners were mostly business men.
Blade3D is a XNA based authoring tool. I had a look at - i think over a year ago. It seems to do nice progress and they are currently working on a webplayer. In addition to that it also has a visual scripting system which you can use i.e. to define particle-behaviours. Besides this there are some nice feature like: PSSM shadows, spline-based roads and rivers, terrain engine, foliage rendering and physics.
Very interesting is their pricing model - it's a monthly fee per seat - without any up-front fee. I wonder if you can pause payment for a couple of months - i.e. between two Blade3D projects - and resume later when required.
There is another tool that is XNA based, but last time I checked I really didn't like the usability: Visual3D.Net. Something interesting though might be it's globe-like terrain engine.