Commit Graph

6100 Commits

Author SHA1 Message Date
Campbell Barton
8b32341775 ensure that the path and directory are joined correctly for ocean cache (assumed path ended with a '/') 2011-11-13 15:17:24 +00:00
Lukas Toenne
cbef65deda Stub data in Ocean modifier when disabled, C standard does not allow empty structs. 2011-11-13 14:39:10 +00:00
Campbell Barton
7d0b5920c6 rename cmake WITH_OCEANSIM --> WITH_MOD_OCEANSIM and tag CYCLES_CUDA_BINARIES_ARCH as advanced. 2011-11-13 14:16:43 +00:00
Campbell Barton
46a673c295 fix another buffer overrun error, also replace BLI_snprintf with BLI_strncpy since no formatting is needed in this case. 2011-11-13 13:56:40 +00:00
Lukas Toenne
11c83d8432 Ocean Sim modifier patch
by Matt Ebb, Hamed Zaghaghi

This adds a new Modifier "Ocean" to simulate large-scale wave motion.
Details can be found in the wiki documentation [1], the project homepage [2] and the patch tracker [3]

The modifier is disabled by default for now. To enable it, the WITH_OCEANSIM (cmake) / WITH_BF_OCEANSIM (scons) flags have to be set. The code depends on fftw3, so this also has to be enabled.

[1]
http://wiki.blender.org/index.php/Doc:2.6/Manual/Modifiers/Simulation/Ocean

[2]
http://www.savetheoceansim.com

[3]
http://projects.blender.org/tracker/?group_id=9&atid=127&func=detail&aid=28338
2011-11-13 12:17:27 +00:00
Joshua Leung
8da2812100 Bugfix [#29125] Motion paths odd behaviour
* Made it impossible to try to calculate/create new motion paths lasting 0
frames (i.e. 250 to 250) since we cannot allocate a zero-length array for these.
Start frame can now be at most end-frame - 1, and end frame at least start frame
+ 1

* If an invalid configuration does occur, warnings/reports will now be issued in
response to this instead of silently failing (as per this bugreport).
2011-11-12 04:40:53 +00:00
Campbell Barton
e84c0980a3 correct indentation and some whitespace edits (no functional changes) 2011-11-11 13:09:14 +00:00
Campbell Barton
094c9799f9 quiet -Wdouble-promotion warnings 2011-11-11 12:00:08 +00:00
Miika Hamalainen
4ef2089097 Dynamic Paint:
* Renamed "Sharp" proximity falloff to "Constant".
* Added a new "Negate Volume" option for "Volume + Proximity" brush.
* Possible fix for random particle clipping errors.
2011-11-11 10:46:26 +00:00
Campbell Barton
1649521abe fix [#29203] Camera can still move even when transforms locked
added object_tfm_protected_backup, object_tfm_protected_restore so its easier to transform the object and respect protected channels (otherwise you need checks everywhere for each channel which is verbose).
2011-11-11 05:34:07 +00:00
Campbell Barton
11947f1a67 pep/style edits & quiet some warnings 2011-11-11 03:28:46 +00:00
Guillermo S. Romero
c8cb79a11f SVN maintenance. 2011-11-10 17:43:37 +00:00
Sergey Sharybin
8ef6d50185 Mark unused variable. 2011-11-10 17:19:12 +00:00
Miika Hamalainen
7bcd1a6c47 Dynamic Paint:
* Added BKE_dynamicpaint.h to CMake list.
* Changed some unsigned integers back to signed, as OpenMP can't iterate unsigned values anyway.
* Fixed more warnings.
2011-11-10 13:00:27 +00:00
Campbell Barton
dfc30d1229 quiet some warnings from recent merge 2011-11-10 12:28:26 +00:00
Miika Hamalainen
afeb0eeaf0 Dynamic Paint merge:
Commit Dynamic Paint from "soc-2011-carrot" branch into trunk.

End-user documentation:
http://wiki.blender.org/index.php/Doc:2.6/Manual/Modifiers/Simulation/Dynamic_Paint

GSoC wiki page:
http://wiki.blender.org/index.php/User:MiikaH/GSoC-2011-DynamicPaint
2011-11-10 10:24:34 +00:00
Miika Hamalainen
1b4a54ad73 Merge with trunk r41701 2011-11-09 15:46:53 +00:00
Campbell Barton
127f9e9b8f quiet warning 2011-11-08 18:23:23 +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
Sergey Sharybin
62988d6311 Attempt to fix #29200: Camera Tracking Solver
It was an mistake in join tracks operator which lead to reading unitialized memory.
2011-11-08 14:03:16 +00:00
Brecht Van Lommel
28ee0f9218 Texturing: texture and 3d view draw type changes, these should only have any
effect for a render engine using new shading nodes. In short:

* No longer uses images assigned to faces in the uv layer, rather the active
  image texture node is what is edited/painted/drawn.
* Textured draw type now shows the active image texture node, with solid
  lighting.
* Material draw mode shows GLSL shader of a simplified material node tree,
  using solid lighting.
* Textures for modifiers, brushes, etc, are now available from a dropdown in
  the texture tab in the properties editor. These do not use new shading nodes
  yet.

http://wiki.blender.org/index.php/Dev:2.6/Source/Render/TextureWorkflow
2011-11-08 13:07:16 +00:00
Brecht Van Lommel
64ab414026 Cycles: svn merge -r41627:41650 ^/trunk/blender 2011-11-08 12:33:17 +00:00
Brecht Van Lommel
db75cc4cde Nodes: add cycles shader nodes, these will only be available to render engines
that use the new shading nodes system. Documentation:

http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Cycles/Nodes
2011-11-08 11:38:16 +00:00
Sergey Sharybin
d1067a2711 Fix a typo in building undistorted proxies for movie clips.
Thanks Campbell to point on this issue.
2011-11-08 09:34:43 +00:00
Campbell Barton
be5ef51b73 use some more logical BLI math functions & tracking used INT_MAX on a short. 2011-11-08 09:02:47 +00:00
Sergey Sharybin
23dfb8a156 Code cleanup and small fixes:
- Assume all areas are using valid MovieClipUser when using functions from movieclip.c
- Set active scene clip to movie-related nodes in compositor rather than checking
  if there's only one clip in datablocks
- Fixed users count issue when solving camera motion
2011-11-08 06:11:23 +00:00
Campbell Barton
f086201518 cmake & pep8 tidy up, also some style edits.
remove unneeded collection length function.
2011-11-08 01:32:34 +00:00
Brecht Van Lommel
be23090aae Nodes: add foreach_nodeclass iterator over node classes, use for node add menu. 2011-11-07 22:14:48 +00:00
Brecht Van Lommel
f3407e7d60 Textures/Shaders: extend TexMapping to include projection options, and add a
ColorMapping struct for color manipulation of textures. These will be the
standard built-in texture node options for manipulating the incoming texture
coordinate and outgoing color.
2011-11-07 17:35:20 +00:00
Brecht Van Lommel
4487318348 Nodes: add socket option to hide the default value in the UI, to be used for
sockets that get their default value if no node is connected from elsewhere,
e.g. a texture coordinate.
2011-11-07 17:30:52 +00:00
Brecht Van Lommel
dca15b215d Cycles: svn merge -r41613:41627 ^/trunk/blender 2011-11-07 17:13:32 +00:00
Brecht Van Lommel
69ad40f9ea Revert fix for #29146, needs deeper changes to solve this fully. 2011-11-07 17:07:54 +00:00
Miika Hamalainen
edec46b0a6 Merge with trunk r41625 2011-11-07 16:36:49 +00:00
Campbell Barton
9ced8a23fe quiet warnings when building without libmv 2011-11-07 16:26:23 +00:00
Campbell Barton
9de67a61aa fix for error in own recent commit. 2011-11-07 15:57:52 +00:00
Brecht Van Lommel
5ef9039b7e Cycles: svn merge -r41531:41613 ^/trunk/blender 2011-11-07 15:23:08 +00:00
Campbell Barton
9b5652215a minor warning nicer api use 2011-11-07 15:19:26 +00:00
Joshua Leung
2b6e4f2422 Bugfix [#29064] armature with curve contraint - crash
Spline IK and Auto-IK working together on the same bone chain could
crash due to the somewhat hacky way that they were sharing the same
list for the "iktree" forest. Resolved by doing what I should have
done from the beginning, and made Spline-IK save its ik chains off
into a separate list.

While this fixes the crash, it might be worth investigating outright
disabling this from working in this case, since it can be a bit
confusing to have it appear to not work.
2011-11-07 13:25:17 +00:00
Sergey Sharybin
7b43abb90e Camera tracking integration
===========================

Rest of changes from camera tracking gsoc project.

This commit includes:

- New compositor nodes:
  * Movie Clip input node
  * Movie Undistortion node
  * Transformation node
  * 2D stabilization node

- Slight changes in existing node to prevent code duplication
2011-11-07 12:56:05 +00:00
Sergey Sharybin
27d42c63d9 Camera tracking integration
===========================

Commiting camera tracking integration gsoc project into trunk.

This commit includes:

- Bundled version of libmv library (with some changes against official repo,
  re-sync with libmv repo a bit later)
- New datatype ID called MovieClip which is optimized to work with movie
  clips (both of movie files and image sequences) and doing camera/motion
  tracking operations.
- New editor called Clip Editor which is currently used for motion/tracking
  stuff only, but which can be easily extended to work with masks too.

  This editor supports:
  * Loading movie files/image sequences
  * Build proxies with different size for loaded movie clip, also supports
    building undistorted proxies to increase speed of playback in
    undistorted mode.
  * Manual lens distortion mode calibration using grid and grease pencil
  * Supervised 2D tracking using two different algorithms KLT and SAD.
  * Basic algorithm for feature detection
  * Camera motion solving. scene orientation

- New constraints to "link" scene objects with solved motions from clip:

  * Follow Track (make object follow 2D motion of track with given name
    or parent object to reconstructed 3D position of track)
  * Camera Solver to make camera moving in the same way as reconstructed camera

This commit NOT includes changes from tomato branch:

- New nodes (they'll be commited as separated patch)
- Automatic image offset guessing for image input node and image editor
  (need to do more tests and gather more feedback)
- Code cleanup in libmv-capi. It's not so critical cleanup, just increasing
  readability and understanadability of code. Better to make this chaneg when
  Keir will finish his current patch.

More details about this project can be found on this page:
    http://wiki.blender.org/index.php/User:Nazg-gul/GSoC-2011

Further development of small features would be done in trunk, bigger/experimental
features would first be implemented in tomato branch.
2011-11-07 12:55:18 +00:00
Campbell Barton
bb8fe0bf4a minor edits
- remove unneeded type check from convert grease pencil operator.
- correct some error prints & use __func__.
- make copy_libblock take an ID* argument rather than void*.
2011-11-07 04:36:37 +00:00
Campbell Barton
96d73bfdcf replace VECCOPY with copy_v3_v3, same for 2d copy, also added vec copy functions for int & char. 2011-11-07 01:38:32 +00:00
Brecht Van Lommel
fb56dbc2af Cycles: procedural texture nodes reorganization. This will break existing files
using them, but rather do it now that I have the chance still. Highlights:

* Wood and Marble merged into a single Wave texture
* Clouds + Distorted Noise merged into new Noise node
* Blend renamed to Gradient
* Stucci removed, was mostly useful for old bump
* Noise removed, will come back later, didn't actually work yet
* Depth setting is now Detail socket, which accepts float values
* Scale socket instead of Size socket

http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Cycles/Nodes/Textures
2011-11-06 21:05:58 +00:00
Campbell Barton
85540d5aa7 more macro --> BLI math lib, mainly replace VECCOPY in render and blenkernel. 2011-11-06 16:38:21 +00:00
Campbell Barton
d8717d2628 more macro --> bli math lib replacements. 2011-11-06 15:39:20 +00:00
Campbell Barton
ec3b0c6a96 misc macro --> bli math lib functions 2011-11-06 15:17:43 +00:00
Campbell Barton
b82dee0cb4 replace macros with bli math functions for particles code 2011-11-06 14:00:55 +00:00
Joshua Leung
e03fdd8112 Second attempt at getting rid of bsystem_time()
Hopefully this fixes Collada. Can't really compile that to check
here...
2011-11-06 12:12:14 +00:00
Joshua Leung
723484ec06 Removed old "bsystem_time()" function, which by now is just a
duplicate of BKE_curframe() which just takes two extra args.

For the few calls in the physics engine where CFRA+1 instead of CFRA
was being used, I've added a new BKE_nextframe() call, which will
calculate for CFRA+1 instead of CFRA in much the same way that
bsystem_time() would end up doing things (which means including
subframe steps).
2011-11-06 06:08:18 +00:00
Joshua Leung
440c1c2c17 As discussed on the mailing list, removing the non-functional,
incompatible, and unmaintainable Time Offset cruft.

- Slow Parenting lives another day (just), although it now carries
appropriate cautionary disclaimers. It's only really for the Game
Engine nowadays, as that's the only place where it can possibly work
with any reliability.
- "Animation Hacks" panel is now "Relations Extras". I could've merged
the two panels, though I figured these options weren't that frequently
used to justify taking up screen-space by default along with the panel
2011-11-06 05:46:45 +00:00