Hello SunBurn community!
Over the past few weeks we’ve been working on some exciting new workflow enhancements for SunBurn and the SunBurn Editor. The goal is to further tighten up the user experience and eliminate any quirks between the editor and the xna content pipeline.
We’ve also been working on adding a number of user requested features, fixes, and more – but I’ll save those for another blog. :)
Background Importing
Probably the most helpful new SunBurn Editor feature is the ability to import assets in the background. It allows you to continue editing your scenes and working, while large models (or large numbers of models) are processed and imported.
As before you can select multiple models to import at once -though this is limited to models in the same directory (due to selecting model files via an Open File dialog box) - however you can now import additional models while others are being processed. The editor will simply queue up all the requested models and process them in order.
Effects Shared Across All Models
Material effects are now shared between models that reference the same material file, making it easier to view and editor materials in the editor, and improving performance, load times, and memory usage.
The default behavior for the xna content pipeline when loading models is to create new effect instances for each material used by the model. While xna does share effects between meshes contained in the model, it does not share effects between the models themselves. This means if two models both reference the same material file, each will have a unique instance of the effect (even though the property values are the same).
SunBurn now resolves this by allowing the content pipeline to share effects between models. When two models reference the same material they will also share a single effect between them. This means both will correctly batch together, less memory is used, and fewer effect are created, reducing load times.
If however your game exploits the old behavior and you’d like to keep it, the new shared effect feature can be disabled in the ResourceManager. :)
More Visual Studio Integration
We’ve created new Visual Studio class templates to help accelerate development by providing empty (but fully functional) classes that plug directly into SunBurn.
- Component class template (using your choice of automatic or manual serialization) – add behaviors to objects, entities, and lights
- Manager class template – plug in new systems (UI, AI, 3rd party physics, …)
The new templates compliment SunBurn’s existing library of items templates, kits, examples, and more.
The SunBurn editor now avoids saving to asset file unless the contents have changed. This helps avoid unnecessary asset rebuilding in Visual Studio (which checks the file timestamp not the hash) and makes switching back and forth between the editor and Visual Studio much smoother.
Lower Windows Release Requirements
SunBurn no longer requires the full .Net 4.0 or XNA runtimes, which means you can now release Windows games by packaging only the XNA Redistributable (6.7M) in the installer! :)
This also means the game’s Visual Studio project can continue to target .Net 4.0 Client profile (the default), which will eliminate any confusion over locating the SunBurn assemblies as they are now always visible regardless of the project settings.
New Importer Memory Model
In the past importing exceptionally large models (>500,000 polys) could fail if the game was using a lot of memory. This is because importing the models requires large amounts of contiguous memory, which may not be available depending on how much memory is consumed by the game itself (and how fragmented it is).
However we’ve now given the importer its own virtual memory space to work within, which isolates it from the game and allows importing far larger models regardless of how much memory is used by the game.
More to Come!
We’re planning to release these, as well as a ton of other smaller enhancements and features in the upcoming SunBurn 2.0.13 update.
If you have any questions or comments let us know!
-John Kabus
Other SunBurn 2.0 Blogs:
- Announcing the SunBurn 2.0 Game Engine - free upgrade, new editions, and updated features
- SunBurn 2.0 Collisions, Scenegraph, and Components - new collision system, components, and more
- SunBurn 2.0 upgrade for our Torque customers - upgrade path for all of our previous TLK technology customers
- SunBurn 2.0 goes Mobile on Windows Phone 7! - full Windows Phone 7 support, light mapping, and more
- Holiday, Components, and more! - read about the new components and more
- SunBurn 2.0: components, perfabs, and more! - more details about SunBurn's new component system
- Festive SunBurn 2.0 Starter Kits, yum, yum! - first release of the new SunBurn Starter kit
- SunBurn 2.0.10 update available - streamlined user experience and integrated starter kits
- SunBurn Dev Journal: Scenegraph Optimizations - faster scenegraph and City Demo with 10,000 buildings
- SunBurn 2.0.12 Update Now Available! - edit components and custom scene object types in editor
- SunBurn Update: Windows Redistributable - ship Windows games using only the XNA Redistributable

Posted
03-20-2011 7:33 PM
by
JohnK "bobthecbuilder"