Commit Graph

29 Commits

Author SHA1 Message Date
Campbell Barton
85a97f64a7 add UNLIKELY / LIKELY util defines to help optimize iterators that are called a lot, only defined for gcc at the moment.
also some cmake formatting edits.
2011-12-29 01:46:58 +00:00
Brecht Van Lommel
efe4ea284a Cycles:
* Fix broken compile of test app.
* Fix some warnings compiling with gcc for 32 bit.
* More tweaks to avoid extended precision issue from #29301.
2011-12-02 14:26:28 +00:00
Brecht Van Lommel
45de380771 Cycles
* Compile all of cycles with -ffast-math again
* Add scons compilation of cuda binaries, tested on mac/linux.
* Add UI option for supported/experimental features, to make it
  more clear what is supported, opencl/subdivision is experimental.
* Remove cycles xml exporter, was just for testing.
2011-12-01 16:33:21 +00:00
Brecht Van Lommel
92ec286752 Cycles: build flags tweaks to avoid errors with msvc debug build. 2011-11-23 16:30:50 +00:00
Brecht Van Lommel
c26c5f3852 UI: small tweak to tooltips for enum menus, it wasn't very clear which
description was for the property and which for the item.
2011-11-18 21:06:36 +00:00
Brecht Van Lommel
02ce6fd59c Cycles: try to avoid NaN pixels with oren nayar. Also small cmake code cleanup. 2011-11-18 15:39:40 +00:00
Brecht Van Lommel
db8024f4b5 Fix #29259: cycles issues on certain processors. Now two versions of the kernel
are compiled, one SSE optimized and the other not, and it will choose between
them at runtime.
2011-11-15 15:13:38 +00:00
Brecht Van Lommel
5b1a42cb17 Cycles:
* Fix excessive fireflies in Velvet BSDF (patch by David).
* Disable some unused SSE code
* Remove RTTI disabling flags for now, this is giving some compile issues and
  was only needed of OSL which we're not using yet.
2011-11-10 14:32:16 +00:00
Brecht Van Lommel
cf6a1320a8 Cycles: attempted fix for error building with sse/mtune optimization flags. 2011-11-10 14:13:32 +00:00
Brecht Van Lommel
c42772fc95 Cycles:
* Add back option to bundle CUDA kernel binaries with builds.
* Disable runtime CUDA kernel compilation on Windows, couldn't get this working,
  since it seems to depend on visual studio being installed, even though for
  this particular case it shouldn't be needed. CMake only at the moment.
* Runtime compilation on linux/mac should now work if nvcc is not installed in
  the default location, but available in PATH.
2011-11-10 12:52:17 +00:00
Brecht Van Lommel
262ac7340e Cycles: cmake tweaks for linux build, instructions on the wiki no longer worked. 2011-11-08 21:40:08 +00:00
Campbell Barton
33814e0093 edits to cycles cmake files so cmake_consistency_check.py can parse them. 2011-11-08 20:27:37 +00:00
Campbell Barton
76f77514d3 don't overwrite existing CMAKE_CXX_FLAGS for cycles (they may be important) 2011-11-08 19:08:56 +00:00
Brecht Van Lommel
24aebc444b Cycles Merge
Documentation:
http://wiki.blender.org/index.php/Dev:2.6/Source/Render/Cycles
http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Cycles

Cycles is available is an extra render engine from the top header. It's not
feature complete, consider this as a first preview release. Known bugs:
http://wiki.blender.org/index.php/Dev:2.6/Source/Render/Cycles/KnownIssues

Building currently only works with CMake, SCons support is being worked on
and should be available soon.

Also missing still is precompiled OpenImageIO and Boost for Linux, these will
be added later in lib/linux*, if you do not have these installed on your
system, Cycles will simply not be available.
2011-11-08 17:00:40 +00:00
Brecht Van Lommel
a56c6e18a8 Cycles:
* Disable precompiled cuda binaries, always do at run time
* Change preview samples default to 10
* Hide volume panels since they don't do anything yet
2011-11-08 14:10:33 +00:00
Campbell Barton
08d52fcc85 added FindOpenImageIO cmake module. 2011-09-18 04:55:22 +00:00
Brecht Van Lommel
089abdecf7 Cycles: attempted fixes for OS X preview render problem, and disable
kernel cache there now as well since it seems to give issues there.
2011-09-14 22:26:55 +00:00
Brecht Van Lommel
ebc653463d Cycles:
* Fix missing update when editing objects with emission materials.
* Fix preview pass rendering set to 1 not showing full resolution.
* Fix CUDA runtime compiling failing due to missing cache directory.
* Use settings from first render layer for visibility and material override.

And a bunch of incomplete and still disabled code mostly related to closure
sampling.
2011-09-12 13:13:56 +00:00
Brecht Van Lommel
cfbd6cf154 Cycles:
* OpenCL now only uses GPU/Accelerator devices, it's only confusing if CPU
  device is used, easy to enable in the code for debugging.
* OpenCL kernel binaries are now cached for faster startup after the first
  time compiling.
* CUDA kernels can now be compiled and cached at runtime if the CUDA toolkit
  is installed. This means that even if the build does not have CUDA enabled,
  it's still possible to use it as long as you install the toolkit.
2011-09-09 12:04:39 +00:00
Antony Riakiotakis
6edb09fe93 Compile fixes for MinGW, checked with basic initial setup, no CUDA, gcc 4.5.2.
OpenImageIO still gives link-time errors, will try to make a lib for MinGW, see if it is fixed.
2011-09-04 15:39:09 +00:00
Brecht Van Lommel
1135875ab1 Cycles:
* Fix crash in light path node
* Fix struct alignment issue for cuda
* Fix issue with instances taking up too much memory
* Fix issue with ray visibility working incorrect on some objects
* Enable OpenCL always and remove option, it has no dependencies so may as well
* Refuse to load kernel if OpenCL version < 1.1, recent drivers are needed
* Better error handling for OpenCL device
* 3D views with rendered draw mode will now revert to wireframe on file load
2011-09-02 14:55:06 +00:00
Brecht Van Lommel
27102bfec4 Cycles: OpenCL library is now dynamically loaded so that blender doesn't crash
if it's not installed on the system.

Code copied from clew.h/clew.c in CLCC:
http://clcc.sourceforge.net/
2011-09-01 19:00:23 +00:00
Brecht Van Lommel
360fcd73fe Cycles:
* add some (disabled) test code for using OpenImageIO in imbuf
* link cycles, openimageio and boost into blender instead of a shared library
* some cmakefile changes to simplify the code and follow conventions better
* this may solve running cycles problems on windows XP, or give a different
  and hopefully more useful error message
2011-08-16 16:15:34 +00:00
Brecht Van Lommel
8318acd129 Cycles: remove docs from svn, moved to wiki. 2011-08-07 12:01:24 +00:00
Brecht Van Lommel
4ff22bd097 Cycles: OS X build system changes to use lib/ openimageio and boost. 2011-06-30 14:47:57 +00:00
Brecht Van Lommel
966e004bbe Cycles: OSL build & image manager fixes. 2011-05-31 16:21:30 +00:00
Brecht Van Lommel
170f8c8c41 Cycles: build without GLUT test app by default. 2011-05-01 10:00:21 +00:00
Brecht Van Lommel
774584d7e8 Cycles: hook up the CMake build system.
New build instructions for Ubuntu Linux in the wiki:
http://wiki.blender.org/index.php/Dev:2.5/Source/Cycles
2011-04-28 13:47:27 +00:00
Ton Roosendaal
da376e0237 Cycles render engine, initial commit. This is the engine itself, blender modifications and build instructions will follow later.
Cycles uses code from some great open source projects, many thanks them:

* BVH building and traversal code from NVidia's "Understanding the Efficiency of Ray Traversal on GPUs":
http://code.google.com/p/understanding-the-efficiency-of-ray-traversal-on-gpus/
* Open Shading Language for a large part of the shading system:
http://code.google.com/p/openshadinglanguage/
* Blender for procedural textures and a few other nodes.
* Approximate Catmull Clark subdivision from NVidia Mesh tools:
http://code.google.com/p/nvidia-mesh-tools/
* Sobol direction vectors from:
http://web.maths.unsw.edu.au/~fkuo/sobol/
* Film response functions from:
http://www.cs.columbia.edu/CAVE/software/softlib/dorf.php
2011-04-27 11:58:34 +00:00