Tuesday, August 30, 2011

Aqsis 1.8 Sneak Peek

The Aqsis developers have been quite busy trying to get all the features and changes ready for the 1.8 release, some of which has helped secure the future of the open source renderer. Since it's inception, Aqsis has always been a "old-fashioned" REYES rendering application, that is it had the functionality that complied with the requirements of the RiSpec, as well as additional features however it lacked the more modern rendering methods such as point based rendering. That is soon changing as reported earlier this summer and it was uncertain if these changes would appear in the next release, or in the 2.0 release, so it has been confirmed that the new point render branch will be merged with the main branch for the next release.

On July 31 the Aqsis team officially announced "Phase 1" for the next release, during which time will be focused on completing the new features.

Other additions include support for OpenImageIO, which was written by Larry Gritz, as well as Partio by Walt Disney Animation.

The main feature changes for 1.8 are as follows.

1. Point Based Global Illumination
  • bake3d()
  • occlusion()
  • indirectdiffuse()
  • texture3d()

2. Rewritten RIB parser
  • Inline archives are supported, using ArchiveBegin/ArchiveEnd
  • Frame dropping is reimplemented to allow a single frame to be selected.
  • Archive interpolation in miqser executes ReadArchive calls in place.
  • RiContext() / RiGetContext() now supported for the core renderer.
  • RiBegin("something.rib") can be used to produces RIB via the core renderer lib.
  • Validation of array lengths and parameter ranges for all RI procedures, used in both the core and in miqser.

3. Port all GUI tools to Qt.

4. Begin relicensing under BSD style license.

As some of you might know, Aqsis does have a couple of GUI based tools, Piqsl and Eqsl, both of which allow users to use Aqsis without having to resort to a command line to render a file or view an image. Piqsl is more commonly used as it is the primary framebuffer tool to watch the renderer at work, as well as use the tool to view multiple images, or to help with development of a render or shader as you can flip through the images. Eqsl allows users to render a RIB file, convert textures to a MIP map, or compile a shader. Both tools were an addition several years ago and have been evolving since and now they both have been ported over to QT, the GUI framework from Nokia, previously they relied on FLTK. While FLTK did provide an easy way to build a GUI app, QT has been chosen to replace it as the framework is proving to be more popular and many 3D tools and applications are using it as well, both commercial and open source.

The most exciting features of course is the Point Based Global Illumination stuff and many people all over the world are happy to see that Aqsis is evolving. This is the one of the most important things done to Aqsis since the renderer debuted on SourceForge in 2001, simply because the addition of the new GI code has changed it. Now it can work with GI much the same way as 3Delight and Pixar's RenderMan can, aside from the fact that ray tracing is still not possible yet. That is something to come about later on. Below is a very recent render with the latest Git source, which as of this week includes the point render branch added to the trunk.

Point Based Global Illumination with Aqsis

Aqsis 1.8 has a few more months of work before it officially is released.

This also comes shortly after a CGSociety article about the very subject, which ultimately led to another debate as to whether or not Renderman was dead, given the success of proprietary renderer's such as Arnold and CGStudio++. Regardless of who is sided with whatever software, Renderman still holds the title of being the one that brought CG to an affordable means of visual effects in film, has been for over 20 years now and not many other rendering software can match up to that record. That said the article in question relates to Point Based Global Illumination in Pixar's RenderMan, which is interesting to note that the Aqsis team was busy getting this very method of GI stable for release at the same time.

Another reason for the sudden shift in the Aqsis team to get more modern rendering methods into this now 10 year old project (missed that little bit of info until just now, Aqsis was registered on March 14, 2001), the decline of development with Pixie, the one time champion of open source Renderman with ray tracing and GI, which in some ways still is, however the development seems to have slowed to a halt with no new updates in years. So while the last working version of Pixie still works for this kind of thing, the Aqsis guys are taking a more pro-active approach and taking on the role as the open source Renderman of choice. Others are taking their ties to the team to help implement Aqsis into professional studios, others are developing plugins to work with Aqsis and providing technical support.

During SIGGRAPH the Blender team had a lot of interest by studios interested in placing Blender into their pipelines, something we have been dreaming about for years so now that the link between Blender and Renderman is getting tighter it is only a matter of time before these tools will be added as well. In certain places this has already happened. Once Aqsis is released fully in 1.8, this gives it a step up into the realm of professional use and give the renderer a massive step up in the world of open source visual effects.

1 comment: