Skip to content

tangent-opensource/coreBlackbird

Folders and files

NameName
Last commit message
Last commit date
Sep 6, 2016
Aug 6, 2021
May 5, 2021
Mar 1, 2020
Sep 4, 2020
Nov 15, 2014
Apr 13, 2016
Jul 30, 2021
Nov 15, 2014
Nov 15, 2014
Jan 4, 2015
Aug 3, 2021

Repository files navigation

Cycles Render Engine
====================

Cycles is a ray tracing renderer focused on interactivity and ease of use, while
still supporting many production features.

= Building =
------------

== Requirements ==
-------------------

Crucial dependencies:
- OpenGL
- GLEW
- Boost (version at least 1.48).
- OpenImageIO (plus all the libraries which OIIO depends on).
- PugiXML unless OpenImageIO is compiled with embedded version of this library.

Optional dependencies:
- OpenShadingLanguage

== Precompiled libraries ==
---------------------------

It is possible to use precompiled libraries for OSX and Windows The libraries could
be checked out from Blender's library repository:

  https://svn.blender.org/svnroot/bf-blender/trunk/lib/

Currently the full checkout of platform libraries is required. This means, i.e.,
to use OSX libraries this folder is to be checked out:

  https://svn.blender.org/svnroot/bf-blender/trunk/lib/darwin-9.x.universal/

Build system expects precompiled libraries to be stored in the lib/ folder next
to folder with Cycles sources.

== Compilation Options ==
-------------------------

- WITH_CPU_SSE                  // Enable SIMD instruction if they're detected on
                                // the host machine.
- WITH_CYCLES_STANDALONE_GUI    // Build standalone app with GUI.
- WITH_CYCLES_OSL               // Build with OpenShadingLanguage support.
- WITH_CYCLES_LOGGING           // Build with logging support.
- WITH_CYCLES_DEBUG             // Build with extra debug capabilities.

== Compilation ==
------------------

Once all the requirements are met, either invoke `cmake` with all desired
parameters from a build folder, or simply type `make` in the root directory of
Cycles repository.

== Extra Dependencies ==
------------------------

Depending on how the dependencies were compiles it is possible that manual tweaks
to the linker are required.

For example if OpenImageIO is compiled as a static library it'll be required to
pass all the OIIO dependencies to the linker using  CMAKE_EXE_LINKER_FLAGS CMake
variable.

Dealing with such kind of dependencies is not really possible automatically, so
we can't reduce entropy of a hassle here.

It is possible to pass CMake configuration arguments to GNU Makefile, i.e.:

  make BUILD_CMAKE_ARGS="-DBOOST_ROOT=/opt/lib/boost"

= Examples =
------------

The repository contains example xml scenes which could be used to test Cycles
render engine.

Example usage:

  ./cycles scene_monkey.xml

You can also use optional parameters (see ./cycles --help), like:

  ./cycles --samples 100 --output ./image.png scene_monkey.xml

For the OSL scene you need to enable the OSL shading system:

  ./cycles --shadingsys osl scene_osl_stripes.xml

= Known TODOs =
---------------

- Installation target is not tested and would need more work.
- Compiled .oso files are not put to the final location, so manual copy is
  required for now.

= Problems =
------------

If you encounter problems, please mail the blender's mailing list bf-cycles:

  http://lists.blender.org/mailman/listinfo/bf-cycles

or ask for help on

  irc://irc.freenode.net/blendercoders