I sat down with him this week and asked him what he most wanted to see in game next, and he was keen on getting some grass to run about on. Now, unfortunately, for such a common surface, good grass is surprisingly difficult to do well (my personal favourite to date is Warcraft 3's grass - a bit cartoony, non-repetitive, well bordered, and lush).
To let me experiment with some options, I knocked up some placeholder 3d tiles and slapped them into an existing test room I had lying about. I then ran a series of texturing options through them to see how they looked with the cow, close up, zoomed out, etc.
The first candidate was a photo of some nice lush grass I took on Toronto Island run through Photoshop's Pattern Maker. It looks nice up close:
But zoomed out, it's a repetitive filtered mess:
Some of this can be blamed on Pattern Maker (which doesn't do the best job of tiling for mine), but some of it is just inherent in the small tile size at a large zoom. Clearly, if I want to go for real looking grass textures, I'm going to need some world-space UV mapping solution. Given my hardware shading code is still bubbling along on the back burner, I tried out some more stylised/cartoony alternatives.
Here's a simple flat green - a bit Chaos Engine-y, but it's not as bad as I thought it would be (especially when you consider my game isn't going to have massive fields of grass - it'll more be smaller borders, paths, surrounds):
Here's the same grass with a simple flower decal stamped on to it:
The flower stamps seem to break up the repetition a bit, but obviously in the test above there's far too many of them. Perhaps with a few other stamp types and a used a little less frequenetly/more randomly, it might start looking ok. Most of the other texturing ideas I wanted to play with rely on UV mapping that goes outside a single tile - so they'll have to wait a while. But if you've got any opinions on the above, or other styles/approaches to try, I'd love to hear them.
I think I'll play around with some other alternatives for a day or so, and then just pick one to go forward with. The next thing I want to add is height field support so I can build some little hills and valleys for the cow to frolic on.