Today we discussed Blender features, trying to get an overview of the things the artists really need to complete the project. This is only a rough overview, we didn’t discuss all topics yet, a more complete and detailed list will be compiled later, for developers interested in getting involved.
Modelling and Sculpting
- Sculpting: the main challenge here is performance, supporting more polygons and smoother interaction. We have various strategies to achieve this, it will be interesting to see how far we can push it. Better brush tools are also welcome, we expect these can be implemented quite efficiently as artists start using the system and provide feedback.
- Multiresolution: we intend to improve the new multiresolution infrastructure for sculpting and rendering, preferably supporting high polygon meshes without any baking steps inbetween.
- BMesh: n-gons and the associated modelling tools would be useful, but they are not a must have for this project. Still it may be worthwhile to use the Durian project as a way to get BMesh tested and completed, we’ll have to evaluate the status of this project in October.
Rigging and Animation
- Rigging likely will not require deep changes, most new features here will be focused on various relatively small changes to make the system more flexible for building better rigs and presenting a good interface to the animator.
- Proxies will need to be improved, for example to support multiple instances of a character with variations.
- Animating the camera position and rotation by doing real life recording would be an interesting feature to have. Motion tracking would be needed for this, completely using open source tools of course, and the libmv project is a promising candidate. This would not be natively integrated, but use a script most likely.
- The new animation system in 2.5 will be extensively used, but I don’t have a good overview what kind of feature requests will come up here yet. We’ll likely discuss things in more detail with the riggers and animators later this week.
- In this project we’ll have a lot of chances to use the physics systems. Big Buck Bunny did not use physics much, as many of the tools where not at the level we needed, with Durian we will try to get the physics systems production ready.
- Physics must work with the Proxy system, to support working with physics simulation in typical library linked setups, and it must get better support for using caches/bakes in production setups and on render farms.
- Cloth simulation is already quite advanced. We intend to use it on the main characters, so inevitably we will run into various issues that will need to be fixed, to get this up to the level that we can use it for close ups in 4K.
- Hair simulation is another effect that we would like to use on main characters. The current system for this is not up to the task, as for example hair volume is not taken into account. How to get good hair simulation working is still unknown.
- Smoke and Particles will be great for various effects, the recent developments in these areas are very welcome, we’ll follow closely and evaluate how to get these working efficiently for us.
- Rigid body dynamics would be great to have as well, Bullet is up to the task, but it should be properly integrated, not through the game engine.
- Rendering scenes with much more detail is one of the targets. This requires changes throughout the rendering engines, from per-tile geometry subdivision, to image and shadow tile disk caching.
- Volumetrics are useful for rendering dust, smoke and explosions for example, and this of course fits our theme very well. We’ll need to evaluate the system to see how well it works in full production scenes regarding performance and memory usage.
- The shading system can use a good review to evaluate correctness and make it more extensible for future improvements, and we hope to work with other developers on this. For Durian we’re working with very detailed scenes, which likely excludes raytracing or photon mapping for us, so it would be good to get a structure that can accommodate various approaches.
- Working with 4K resolution will require us to make this system tile based, so that large images can be composited without running out of memory.
- We’ll also need to figure out a workflow for working with lower resolution images than the full 4K, and only for the final rendering do the full resolution.