1.3 Incoming

Daggerfall Tools for Unity 1.3 is almost done. This version has a whole swag of improvements for developers to play with. Here’s the summary of new features.

Extending

  • Events have been added to key locations throughout the library. It should be easier than ever to write custom code to extend Daggerfall Tools for Unity without changing the core library.
  • I have started moving over to prefabs for non-static elements such as enemies, lights, hinged doors, etc. This will also help developers extend these elements more easily.

Materials

  • Overhauled material loading and caching system. The new material system now uses a pair of structures to request a material and receive results, rather than complex methods with a dozen in/out parameters.
  • Have moved to the Unity 5 Standard shader everywhere possible. A unified shader means simpler processes and better batching. It also means Physically Based Shading and real-time Global Illumination is possible. This could prove a huge boon for texture artists seeking to improve the quality of Daggerfall’s materials.
  • Normal maps can now be auto-generated for materials.
  • Emission maps are auto-generated for windows and bright materials such as fireplaces and lights.
  • Faster loading and processing of all materials.

Billboard System

  • Now using geometry shader with animation support for all surface billboards. Dungeons and interiors are still using standalone billboards for now.

Batching

  • The number of render batches and state changes required to draw a scene is now around 10x less. Therefore scenes which required approx. 5000 batches in 1.2 now require less than 500 in 1.3.

Image Processing

  • The texture loader can perform image processing using a matrix convolution filter.
  • Events allow you to setup your own image filtering when textures are loaded.

Builds

  • Softer coupling to Arena2 folder, allowing developers to release static scenes without contents of Arena2. An example would be a standalone dungeon game. Obviously procedural elements will require Arena2 folder.
  • Arena2 folder can now be stored in _Data folder for standalone Windows, Linux, and Mac builds. WebPlayer builds must continue using Resources method.
  • Added very early support for WebGL builds for static scenes only. Supporting procedural scenes in WebGL is in the pipeline for a future release.

Fixes

  • Fully compatible with Unity 5.1.
  • There are hundreds of small bug fixes and usability improvements. A huge thanks to all the brains at forums.dfworkshop.net for their help and advice.

I am in the process now of squashing bugs and testing. I should have an updated Developer Preview ready over the weekend some time (or mid next week at the latest). My plan is to hold the release version in Developer Preview status for about a month before promoting to full release. There are a few reasons for this (apart from the fact I really like lists (and parentheses)).

  • I need a full documentation and tutorial refresh. Some of the new features also need entirely new tutorials. This is a time-consuming process.
  • I would like time to get feedback from developers on the new features so I can make any last-minute bug fixes or changes.
  • I want to give developers time to finish up any mods/extensions they are working on to work with 1.3. it would be great to release an updated Mod Showcase Demo for 1.3.

That should about cover it for now. If you have any questions, please don’t hesitate to contact me.

Posted in Daggerfall Tools for Unity, Workshop News.