Fabric Engine 1.10.0 Release Notes

../_images/FE_logo_345_60.png
Fabric Engine version 1.10.0
Copyright (c) 2010-2017 Fabric Software Inc. All rights reserved.

Important Notes - Read Me First!

  • Fabric Engine requires a video card and driver that support OpenGL 3.2 or later.
  • Creation Platform has been rebranded as ‘Fabric Engine’ and the ‘Fabric Engine Scene Graph’. Because of this rebranding, it may be necessary to make slight changes to existing applications to make them work with 1.10.0. See Fabric Engine Scene Graph for more information.
  • Because of the branding changes in version 1.10.0, we recommend that you uninstall previous versions before installing version 1.10.0.
  • To install 1.10.0 only for the current user, select the “Advanced” option after accepting the EULA in the Window installer.

Downloads

All downloads for Fabric Engine 1.10.0 can be obtained at http://dist.fabric-engine.com/FabricEngine/1.10.0/. For information on downloads for specific platforms, see Installing Fabric Engine.

Major Changes in 1.10.0

Fabric Splice

Fabric Engine Scene Graph

  • Due to branding changes there are slight changes to the namespaces and object names used by the Fabric Engine Scene Graph; see Fabric Engine Scene Graph.

Fabric Engine Extensions

  • A new Geometry KL-only extension now regroups the PolygonMesh, Lines, HierarchicalGrid and other related types
  • The PolygonMesh object has been rewritten, and its interface has largely changed. The improvements include the support for:
    • incremental structural changes (modeling operations), such as splitPolygon, splitPoint, deletePolygon, mergeMesh
      • demonstrated by new sample Apps/Geometry/LinearSubdivideAndEmbossMesh.py
    • 32-bits or 64-bits positions precision
    • setting attribute values (UVs, normals...) at any moment
    • raycast and getClosest queries:
      • returns a new Location type, allowing to read any PolygonMesh surface attribute (position, UVs...)
      • accelerated by a dynamic octree (same as RTR’s full scene octree)
      • demonstrated by new sample Apps/Geometry/MeshRaycast.py

Fabric Engine Realtime Renderer

  • The RTR reference guide now includes a learning guide, in the form of tutorials with detailed explanations
  • Support for a new DebugContext type for KL callbacks, allowing to dump the RTR pass function call stack and parameter stack anywhere in the passes
  • Support for basic hardware instancing, using either texture-packed or attribute-packed instances shader parameters to encode instance-varying parameters
    • demonstrated by new sample Apps/Rendering/HardwareInstancing.py

SGCAPI Changes

The SGCAPI was renamed from CPCAPI to be consistent with the rebranding of the SceneGraph from Creation Platform.

The following lists changes relevant to code using the SCAPI

  • The namespace used in the code was renamed from CreationPlatform to SGCAPI.
  • The environment variable used to point to the install location of the SGCAPU was renamed from CPCAPI_DIR to SGCAPI_DIR
  • The CreationPlatformAPI_x86_64.props file was renamed to SceneGraphAPI_x86_64.props
  • The build lib is rename from CreationPlatformCAPI.lib to SceneGraphCAPI.lib

Core Changes

  • Core memory and on-disk cache usage has dramatically improved

    • The core uses about one half of the memory it did in version 1.9.0
    • The core uses only about 10% of the on-disk cache that it used in version 1.9.0
  • KL:

    • KL now supports constant expressions. When several constants are involved in a constant expression, the result is constant. This allows you to declare code such as:

      const UInt32 FlagBitIndex = 7;
      const UInt32 FlagBitMask = 1 << FlagBitIndex;
      

      See 名前付き定数 for more information.

    • The inline keyword has be introduced, allowing explicit control of function and method inlining. See Inline 関数,メソッド.

    • The use keyword has be deprecated; use require instead. See require による機能のインポート

  • The startup console output from the Core has been made less verbose and more readable.

Installing Fabric Engine

Fabric Engine runs on Windows 7 SP1 (both 32- and 64-bit), CentOS 6.3, Ubuntu 10.04 LTS, Ubuntu 12.04 LTS, and Mac OS X 10.7 “Lion” or later.

Uninstall Previous Versions of Fabric Engine/Creation Platform

If you have installed a previous version of Fabric Engine (previously called Creation Platform) using an installer package, we recommend that you uninstall it before installing Fabric Engine 1.10.0. This is due to the branding changes the product has undergone: they may cause issues in detecting upgrades on certain platforms.

  • To uninstall previous versions on Windows, use the “Programs and Features” control panel.
  • To uninstall previous versions on Mac OS X, simply remove (or rename) the /Library/FabricEngine directory.
  • To uninstall previous versions on CentOS, run (as an administrator): sudo rpm -e creation-platform
  • To uninstall previous versions on Ubuntu, run (as an administrator): sudo dpkg -r creation-platform

Install Python

If you don’t already have Python on your system, you need to install it first.

  • For Windows, you can get the latest version of Python 2.7 directly from http://python.org. You will also need to add the Python folders, usually C:\Python27, and C:\Python27\Scripts, to your PATH environment variable.

    • On 64-bit Windows, we also provide a build of Fabric Engine that works with Python 2.6.
  • For CentOS 6.3, Ubuntu 10.04 LTS and Ubuntu 12.04 LTS, your system already came with the right version of Python installed.

  • For OS X, Python 2.7 is automatically installed on your system as part of the base OS install.

    注釈

    On Mac OS X you must use the system-installed version of Python found in /usr/bin/python. Using a different version of Python (installed via MacPorts or HomeBrew, for example) will result on a crash when trying to run any Fabric Engine application.

Once the install is finished, make sure that you are able to open a command prompt and run python. Windows users will probably have to add the directory in which Python was installed (usually c:\\Python27) to their PATH environment variable.

注釈

On previous Windows versions of Fabric Engine, it was possible to disable the installation of PySide in the Fabric Engine installer in order to use another version. It is not longer possible to do this: instead, if you need to use another version of PySide simply follow the steps for installing from an archive and then simply remove (or rename) the FabricEngine/Python/<PYTHON_VERSION>/PySide directory.

There are two ways of installing Fabric Engine: from an installer package or from an archive.

Installing from an Installer Package

Installing from an installer package is generally easier but is less flexible. We recommend this approach if you are evaluating Fabric Engine for a single user, you are fine with using the version of PySide that is bundled with Fabric Engine, and you only need to have a single version of Fabric Engine installed.

From http://dist.fabric-engine.com/FabricEngine/1.10.0/, download and install Fabric Engine for your platform.

注釈

When selecting the 32-bit vs. 64-bit version to install on Windows, note that it is the “bitness” of Python, and not Windows, that matters. To see if the version of Python you are using is 64-bit, simply run “python” from a command prompt. If it has 64 bit (AMD64) somewhere in the first line it displays then it is 64-bit.

  • On Windows 7 using 32-bit Python, the installer is FabricEngine-1.10.0-Installer-Windows-32Bit-Python2.7.msi. It is a .MSI file that can be run directly. Note that the installer is unsigned, so your browser may tell you it’s not safe to run it.

  • On Windows 7 using 64-bit Python, the installer is FabricEngine-1.10.0-Installer-Windows-64Bit-Python2.7.msi (for Python 2.7) or FabricEngine-1.10.0-Installer-Windows-64Bit-Python2.6.msi (for Python 2.6). It is a .MSI file that can be run directly. Note that the installer is unsigned, so your browser may tell you it’s not safe to run it.

  • On CentOS 6.3, the installer is FabricEngine-1.10.0-Installer-CentOS-x86_64-Python2.6.rpm. It is a .rpm package that can be installed using ‘rpm -i’ or using a GUI tool.

    注釈

    you must log out and log back in in order to get the environment variables set that Fabric Engine needs to run!

  • On Ubuntu 10.04 LTS, the installer is FabricEngine-1.10.0-Installer-Ubuntu-amd64-Python2.6.deb. It is a .deb package that can be installed using ‘dpkg -i’ or using a GUI tool.

    注釈

    you must log out and log back in in order to get the environment variables set that Fabric Engine needs to run!

  • On Ubuntu 12.04 LTS, the installer is FabricEngine-1.10.0-Installer-Ubuntu-amd64-Python2.7.deb. It is a .deb package that can be installed using ‘dpkg -i’ or using a GUI tool.

    注釈

    you must log out and log back in in order to get the environment variables set that Fabric Engine needs to run!

  • On Mac OS X Lion or Mountain Lion, the installer is FabricEngine-1.10.0-Installer-MacOSX-64Bit-Python2.7.dmg. It is an executable on a .dmg file that can be run directly from the mounted disk image.

    注釈

    you must restart your system in order to get the environment variables set that Fabric Engine needs to run!

Installing from an Archive

Installing from an archive provides the most flexibility. You can control the location of the install, use a custom version of PySide, and even install and use multiple versions of Fabric Engine on the same machine.

From http://dist.fabric-engine.com/FabricEngine/1.10.0/, download and install a Fabric Engine installer archive.

  • The filename begins with FabricEngine-1.10.0-Installer
  • For Windows, the archive filename ends with .zip.
  • For Linux and Mac OS X, the archive filename ends with .tar.bz2.

Be sure to pick the archive that matches the characteristics of your system (eg. Python 2.7 vs. Python 2.6, 32-bit vs. 64-bit).

Unpack the archive in a location of your choosing, then edit the file environment.bat (Windows) or environment.sh (Mac OS X and Linux), changing BASEDIR to the directory into which you unpacked the archive.

Whenever you want to use Fabric Engine, open up a console/terminal window and then execute the environment script:

  • Under Windows, run PATH_TO_UNPACKED_ARCHIVE\environment.bat
  • Under Mac OS X and Linux, run source PATH_TO_UNPACKED_ARCHIVE/environment.sh

Test Fabric Engine

The Fabric Engine installer ships with a simple application, HelloSceneGraph, that can be used to test the installation. To run HelloSceneGraph:

  • On Windows:
  • Open a command prompt (cmd.exe)
  • Change to the Fabric Engine install directory (usually C:\\Program Files\\Fabric Engine for per-machine installs and C:\\Users\\<USERNAME>\\AppData\\Local\\Apps\\Fabric Engine for per-user installs)
  • Run python Python\HelloFabric.py
  • On Ubuntu, open a shell and run python /usr/lib/FabricEngine/Python/HelloFabric.py
  • On CentOS, open a shell and run python /usr/lib64/FabricEngine/Python/HelloFabric.py
  • On Mac OS X, open Terminal and run python /Library/FabricEngine/FABRIC_VERSION/Python/HelloFabric.py

Install Sample Applications (“Demos”)

From http://dist.fabric-engine.com/FabricEngine/1.10.0/, download the FabricEngine-1.10.0-Demos.zip file, which you can extract to a location of your choosing. The demos are located below the Apps subfolder of the created FabricEngine-Demos-1.10.0 folder, and are identical for all platforms. These demos can be run using the python command; for example, python Apps/GeometryDeformation.py.

Documentation

Complete documentation for Fabric Engine can be found here.

After installing Fabric Engine, you can also find the documentation in the Start menu in Windows, the Applications menu in CentOS and Ubuntu, and through a link in the ‘/Applications/FabricEngine/1.10.0’ folder in Mac OS X. The documentation can also be accessed from the “Help” menu of Fabric Engine applications.

Upgrading Applications to Version 1.10.0

Fabric Engine Scene Graph

In version 1.10.0, Creation Platform was rebranded as ‘Fabric Engine’ (for the name of the whole product) and ‘Fabric Engine Scene Graph’ (for the name of the Python scene graph). Because of this rebranding, it may be necessary to make slight changes to existing Python scene graph applications to make them work with 1.10.0.

  • The namespace used by the SceneGraph was renamed from FabricEngine.CreationPlatform to FabricEngine.SceneGraph
  • BaseCreationPlatformApplication was renamed to BaseSceneGraphApplication
  • CreationPlatformApplication was renamed to SceneGraphApplication
  • The fileLocation manager was updated to use new tokens for resolving files.
    • The token $CP was renamed to $SG
    • The token $CPAPP was renamed to $SGAPP
    • The token $CPSCENE was renamed to $SGSCENE

Updating Scene Graph apps from version 1.9 to 1.10 is mostly a process of replacing the old names with the new ones.

  • PolygonMesh functions were largely modified, please refer to files such as PolygonMeshTorus.kl or OBJImporter.kl for examples of usage.
  • RTR shader parameter XML attribute transformReferential was renamed to transformSpace

Optional: Compiling the DCC Integrations

In order to use the DCC integrations after you have installed Fabric Engine you will need to download the SGCAPI (Scene Graph C++ API) source files here: SGCAPI for Fabric Engine 1.10.0

You will then need to consult the .. kl-extlist:: DCCIG, in particular the section on “Installing and using the SGCAPI”. In there you will find instructions on how to compile and any necessary environment variables that must be set.

The currently supported DCC integrations are:

  • Maya 2013 on Windows 64-bit
  • Maya 2013 on Linux 64-bit
  • SoftImage 2013 on Windows 64-bit

That’s it!