Archived News | 2003 | 2004 | 2005 | 2006 | Current News
The Villager's Tale has been postponed indefinitely. It's still something I hope to get done someday, but it had become obvious we didn't have the resources for it. The sane thing to do was call it quits for now.
I'm very proud of what we accomplished, and there's still a possibility that there will extra media on this webpage sometime, either on the Villager's Tale page, or the Kingdoms Creator page. Now that there isn't the need to make sure a video shows a fun game to play, Josh or I might create and post some smaller videos.
I'm now working on the Offset Engine/Editor.
I'm moving across the country soon, so there will be a break in updating this page, the weekly articles, and responding to email. I'll post more information later.
I haven't had as much time as I wanted to work on the gameplay yet. So I'll just mention one kinda neat thing about the way the character system is programmed. Both the AI and player controlled characters are based on the same class, and the AI and human input are interchangeable. So, for example, in the editor I can just click on a rat and set it to the player character, and be controlling the rat. Although we don't have anything specifically planned, this does create some interesting possibilities for use in gameplay.
Yesterday I started writing a bit more documentation for Kingdom's Creator. This documentation is just for a small part of the program, the drop-down menus at the top of the World Editor. Given the in progress nature of the program, and the fact that probably no one would read the manual even if it was included with a released program and not sitting orphaned on this webpage, I decided to keep it minimal. It did give me insight into how much work would be required to write a good documentation of the entire program, and how I might want to structure it.
| Jul 14, 2006 Villager's Tale Video in Progress |
We're currently planning on releasing a gameplay video for the Villager's Tale on our next update. Hopefully it will be up in a few months. Of course it would be nice to get to showcase every cool feature of the engine in there, and tweak everything that will be in the video until it's perfect, but that would just take too long, and I want to have something on the Villager's Tale page showing the game in action. We'll add a few screens from the video to the screenshot section too.
Kingdoms Creator started out as a character animator, then expanded into a scene editor, and the game engine was built on this base. Because of this heritage it's been a bit weak when it comes to large levels. Levels in Kingdoms Creator are divided into sectors and sub-sectors. In the editor sectors can be hidden to focus on the current area and save framerate, so levels aren't really as small as they might appear to be in level editing screenshots =)
I've been improving the handling of large levels, both rendering and editing. Part of this is speed optimization, especially improving occlusion related stuff: if possible avoid rendering and light-object calculations, including shadow calculation/rendering.
The game engine itself was originally designed for a first person shooter. It was a working, but pretty standard FPS engine. Villager's Tale however isn't a FPS, and I've been slowly working on the game itself, but now I plan to move focus from rendering to gameplay. (Although I still think I should write a water shader... every other game engine has a water shader, so I feel left out. )
Projected shadows are now almost fully integrated with Kingdoms Creator. This technique can be used to render some pretty cool dynamic soft shadows. They avoid many of issues inherent with stencil shadows, although they have their own share of issues. Shadows can be set per light to be either projected or stencil. Right now, although low-quality single-direction projected shadows can be faster than stencil shadows, high quality ones can be significantly slower.
Also I've added in a few more shaders, such as a frame buffer distortion shader that can be used for looking through glass or a heat haze effect.
As usual it's a bit of a process from when effects and options are added to when they're fully optimized or used well in levels. Hopefully the next set of Villager's Tale screenshots will look even better.
Lately I've been trying out expanding 3D Kingdoms Creator by writing plugins for it instead of working directly on the program itself. I did this initially because I figured I should test out my plugin SDK and make sure it was useable and up to date. (It wasn't actually, although it is now.)
But so far I actually like writing plugins for my own program. The coolest thing is that since the code I'm working on is in a separate .dll, to test it after any changes all I have to do is hit F7 to compile, alt-tab to switch to the running 3DKC, then F10 to reload any modified plugins. This is especially useful if I'm testing in a level with many megabytes of textures loaded, so I can test code changes in a couple seconds instead of sitting through over half a minute of loading.
| Mar 19, 2006 Virtual Displacement Mapping |
Yesterday I wrote a virtual displacement mapping shader for walls. I'm not sure if that's exactly the right name for it. Basically what it does is in the pixel shader a short ray is cast into a heightmap texture, and it takes the uv coordinates for the diffuse and normal map from where it hits. So the texture looks 3D, including proper occlusion.
Although my simple demo looks fine, as usual there are a few considerations. Any steep sides ( mostly when viewed close up ) look a bit weird with noticeable texture stretching. Also it's not for particularly deep geometry. I still need to make sure there aren't any issues interacting with all the available lighting & rendering options. Even though the normal maps for the wall textures are already generated from heightmaps, if you want the displacement to look as good as possible, you need to tweak the heightmap.
Finally, while I'm amazed at how fast pixel shaders are on my 7800GT, this is still a whole lot of calculation, and it's significantly slower than plain bump mapping. For one light (with specular and per-pixel calculation of the light, view, and half-angle vectors ) in a square room at 1280x960, it's already only 220 FPS. This doesn't sound horrible, but considering multiple lights, more complicated levels, and all the other shaders and effects that slow things down I'm not entirely comfortable with it.
| Mar 13, 2006 Villager's Tale Interview |
There's now an Interview about the Villager's Tale up at rpgdot.com. In includes a lot of new information about the Villager's Tale not available yet on our website. We also sent two new screenshots with the interview that aren't on this site currently, but we'll probably add these 2 screens (or similar ones) in our next update.
| Feb 14, 2006 Villager's Tale Update |
At long last The Villager's Tale web page has been updated. The news page there briefly describes the update. We've done some redesigning of the page itself to make sure it looks decent, but mostly what I'm interested in is content. There's a new batch of screenshots and more game information, with a new characters section, gameplay section, and updated tech section.
I think the batch of screenshots is the best yet, the main reason is I decided it would probably be better to design around newer hardware. So these are taken on a GeForce 7800GT with some features that would be impractical on the Geforce 5900 target used in the August batch. The engine should still scale back fine to older hardware, but obviously with a loss of quality.
| Jan 11, 2006 Weekly Programming Articles, Photography |
I'm back from vacation and soon to be hard at work on the Villager's Tale. I don't have much news, just wanted to mention a couple things.
I added some new digital photographs to my online gallery. Desert Landscape and Miscelaneous specifically.
Also I wrote some blog-like software in PHP and have started experimenting with a weekly updating programming tutorial/article section. I'm waiting until there's more content before really launching it. For now I'll just see how trying to update it weekly goes.