Introduction

The VFX Reference Platform is a set of tool and library versions to be used as a common target platform for building software for the VFX industry. Its purpose is to minimise incompatibilities between different software packages, ease the support burden for Linux-based pipelines and encourage further adoption of Linux by software vendors. The Reference Platform is updated annually by a group of software vendors in collaboration with the Visual Effects Society Technology Committee.

Current Status

Major software releases for this year should conform to the CY2015 Platform. The final version of the Calendar Year 2016 (CY2016) Reference Platform was published below in August 2015 and that should be the target for all major software releases in 2016. We are currently soliciting feedback for CY2017.

Reference Platform

Each annual reference platform is designated by the calendar year in which major product releases should be targeting that particular reference.

All versions should be considered exact required versions, except for those components where indicates that:

  CY2016 CY2015 CY2014
gcc 4.8.2 with bugfix or 4.8.3 4.8.2 4.1.2
glibc 2.12 2.12  
python
(built with ucs4)
2.7.5 - 2.7.latest 2.7.x 2.7.3
Qt 5.5.x (modified) 4.8.x 4.8.5
PyQt 5.5.x    
PySide 2.0 1.2.x 1.2
NumPy 1.9.2    
OpenEXR 2.2.x 2.2.x 2.0.1
Ptex 2.0.42    
OpenSubDiv 3.0.x 2.5.x 2.3.3
OpenVDB 3.x 3.0.x  
Alembic 1.5.8 1.5.x 1.5.x
FBX latest latest 2015
OpenColorIO 1.0.9 1.0.9 1.0.7
ACES 1.0    
Boost 1.55 1.55 1.53
Intel TBB 4.3 4.2 4.1
Intel MKL 11.3    
C++ API/SDK C++11    
Note - gcc

The vanilla gcc 4.8.2 has a serious bug that is fixed in 4.8.3 and some Linux distribution vendors actually ship a patched version as 4.8.2. The reason the Platform still gives 4.8.2 as an option for CY2016 is that this gcc version is what ships with Redhat Developer Toolset 2.1 that some software vendors are committed to using through 2016.

The following are the known distributions that ship with a fixed 4.8.2:- Redhat DTS 2.1, RHEL/CentOS 6.

Note - Qt modifications

The major change for CY2016 is a move to Qt 5 which requires a port of PySide and modifications to vanilla Qt.

These modifications are required to avoid the introduction of functional UI regressions impacting DCC tools and consist only of critical changes that have not yet been accepted into the mainline Qt distribution. The need for these modifications is not new, currently some software vendors ship their own differently modified Qt so CY2016 represents a significant step forward with the goal of all software vendors sharing an identically modified Qt. Our aim is to keep these modifications to a minimum and the long term goal is to work collectively as an industry with the Qt community to eliminate the need for them entirely.

These Qt modifications will be developed in a private Github repository by a group of major software vendors and published publicly as soon as they are ready for distribution, before the end of 2015. The modified Qt will be available to anyone who wishes to target the CY2016 Platform, and for all major software vendors to build their CY2016 releases against the same modified Qt. More details will be shared in due course.

 

Any reference made in the VFX Reference Platform to any company or any other entity, or to their services or products, is not an endorsement or recommendation nor should it imply any such endorsement or recommendation of the quality or fitness of purpose of that company or entity, or its services or products. In no event shall the Visual Effects Society be responsible or liable, directly or indirectly, for any damage or loss caused or alleged to be caused by or in connection with the use of or reliance on any such content, goods, or services identified in the VFX Reference Platform or the Visual Effects Society website.