Commit Graph

547 Commits

Author SHA1 Message Date
feffc920bb Merging r38780 through r38818 from trunk into soc-2011-tomato 2011-07-29 15:18:14 +00:00
2658949752 pep8 cleanup, also print message when attempting to run in animation player mode. 2011-07-29 01:24:03 +00:00
1d668e39d8 Merging r38390 through r38418 from trunk into soc-2011-tomato 2011-07-15 20:22:01 +00:00
3a6158a8bf move mathutils into its own lib. 2011-07-15 04:01:47 +00:00
1135dbcc36 Merging r38265 through r38295 from trunk into soc-2011-tomato 2011-07-11 08:43:34 +00:00
80eb1eae42 run WM_exit(C) when blender as a python module exits 2011-07-10 18:54:02 +00:00
d279e8891f Camera tracking integration
===========================

- ColaMD moved from OpenNL to extern/.
  It'll be needed for libmv. Also, it's a bit updated from
  year 1999 to 2007.
  Need to be tested for regressions.
- Updated bundling script for libmv. Now it uses fuller
  subset of this library.
- Bundled new libmv.
- Request from Keir: add command line argument to toggle logging
  stuff on. Currently, if Blender is launched with -d argument
  libmv would start printing logging messages. There's no
  argument to increase verbosity, but there's API in libmv-capi,
  so it'll be easy to add.
- Finally fixed crash when ibuf is acquiring with user=NULL.
- Added ActiveClip property to the scene. This clip is used
  as default value for new match-moving constraints.
- Added some flags to Display panel of View3D. Related on
  displaying match-moving stuff.
- Internal change: bundles data moved inside to MovieTrackingTrack.
- Initial implementation of 3d reconstruction.
- Added constraint "Camera Solver". This constraint is supposed
  to be used to make camera follow the reconstructed camera path.
- Added "reference" property to "Follow Track" constraint.
  Now object could be "parented" to 2D track position or to
  3D bundle position.

The very quick guide:

To use reconstruction you should have footage with tracked markers,
choose two keyframes in "Tracking settings" panel. There should be
quite noticeable parallax effect between this two frames. This
is used to initialize reconstruction stuff.
Camera data (focal length and optical center) should be filled in
"Camera Data" panel. Optical center is often the center of image,
so it'll be filled in automatically.
You should also set values for undistortion (K1, K2 and K3). Currently,
there's no any visualization for this parameters and approach of
"change value -> reconstruct -> see what've changed" is the only way
for now.
Libmv team is working on auto-calibration tool, so it should be
easier to gather this coefficients in nearest (i hope) future.
There's also no scene orientation stuff.

Basic workflow:
- Open footage.
- Set markers and track them.
- Fill in camera data and keyframes.
- Hit "Solve Camera" button.
- Add "Camera Solver" constraint to camera in scene.
- Choose movieclip in that constraint.
- To see bundles in 3D viewport active clip should be set
  in scene buttons.
2011-07-07 17:58:33 +00:00
59e815fefd Merging r38023 through r38035 from trunk into soc-2011-tomato 2011-07-02 11:04:38 +00:00
3ee2cb9cdb fix for error in cmake files 2011-07-02 07:55:06 +00:00
f141b59497 Merging r37952 through r38022 from trunk into soc-2011-tomato 2011-07-01 16:39:13 +00:00
cf05777bc0 cmake was installing text as a directory rather then coping the files within it. 2011-07-01 13:10:49 +00:00
19e99f8dc3 Merging r37908 through r37945 from trunk into soc-2011-tomato 2011-06-29 12:39:01 +00:00
8ddd2db648 RenderEngine API: add self.report() error reporting function for render engines,
works the same as for operators. Also includes some refactoring of render error
reporting code to use ReportList.
2011-06-28 16:25:07 +00:00
70eb9e85c5 Merging r37732 through r37862 from trunk into soc-2011-tomato 2011-06-27 14:20:48 +00:00
12e02fd474 own patch [#27752] Python Callback (Scriptlink functionality)
Python:
 * adds bpy.app.handlers which contains lists, each for an event type:
   render_pre, render_post, load_pre, load_post, save_pre, save_post
 * each list item needs to be a callable object which takes 1 argument (the ID).
 * callbacks are cleared on file load.

Example:
 def MyFunc(scene): print("Callback:", data)
 bpy.app.handlers.render_post.append(MyFunc)

C:
 * This patch adds a generic C callback api which is currently only used by python.
 * Unlike python callbacks these are not cleared on file load.
2011-06-24 16:54:30 +00:00
68b7d48e01 Merging r37704 through r37731 from trunk into soc-2011-tomato 2011-06-22 14:44:54 +00:00
1309f17103 cmake was installing .bfont.ttf in ~/.blender/VER/config, use ~/.blender/VER instead (as with scons) 2011-06-22 08:43:01 +00:00
9f769c43a3 Merging r37594 through r37703 from trunk into soc-2011-tomato 2011-06-21 18:24:00 +00:00
968b2a8afb rename cmake include/libraries to conform with suggested cmake names 2011-06-18 14:12:54 +00:00
558d1e8d4a Merging r37371 through r37433 from trunk into soc-2011-tomato 2011-06-12 18:20:36 +00:00
c2e1f3a1e2 fix for using system includes, the include macro wasn't un-setting the previous include list so system includes could be mixed up with non system includes.
Also workaround for CMake 2.8.4 & GNU-Make which doesn't set CMAKE_INCLUDE_SYSTEM_FLAG_C
2011-06-11 06:00:28 +00:00
084040acf4 Camera tracking integration
===========================

- Added missed stub for blenderplayer, so it should
  compile again fine.
- libmv is added to extern/.
  Script for bundling needed subset of sourcses from
  libmv repo is included there.
- Eigen3 is also added to extern/.
  libmv depends on Eigen3 (which isnt't compatible with Eigen2
  from API point of view). So both of versions are going to
  be in worktree for time (until code which used Eigen2 would be
  ported to Eigen3).
- Added some functions to libmv-capi, so some things from
  this library could already be used.
- Added the very basic implementation of 2D tracking.
  It should be treated as draft for tracking architecture
  which probably would be cleaned up, changed or whatever else.
  Current implementation was supposed to demonstrate that our
  structures and understading is correct to interact with libmv easily.
2011-06-10 17:17:25 +00:00
eb57876275 Merging r37123 through r37370 from trunk into soc-2011-tomato: 2011-06-10 16:58:07 +00:00
eeba877926 fix [#27607] Scene's render.filepath gets cropped to 159 characters
use 240 char limit, remove backbuffer path which wasn't used.
2011-06-10 10:13:50 +00:00
Nathan Letwory
899f2776db Shuffle some build code around to ensure debug builds on Windows actually run too.
* creator/SConscript is now empty, code is moved to an emitter function in Blender.py
* make sure COLLADA debug libs are used when BF_DEBUG=True
2011-06-08 11:53:07 +00:00
4a59928484 CMake option 'WITH_HEADLESS' to build blender in headless mode (no x11/xlib) with NULL ghost classe. 2011-06-04 14:12:55 +00:00
9864c12eef Merging r37010 through r37122 from trunk into tomato.
Manually resolved conflict in startup.blend.c
2011-06-03 14:54:37 +00:00
5a3aaf1fd1 cmake formatting adjustment, no functional change. 2011-05-30 10:51:37 +00:00
b92e6985cf fix for cmakes windows install target, was extracting python 4 times, note install(CODE... doesnt support CONFIGURATIONS setting. 2011-05-30 10:39:18 +00:00
8f8a03529b Camera tracking integration
===========================

- Initial implementaiton of new ID named MovieClip.
  Currently it has plactically the same functionality as
  images, but this functionality would be widen in nearest future.

- Initial implementation of SpaceClip.
  This space is supposed to be used for acting with MovieClips
  (opening, playbacking, math-moving interaction and so on).

  Currently you could open image sequence/movie file here, pan/zoom,
  use a playback here.

  I've added cache visualizer to this space, but it's currently more
  a developer's feature to see how cache system works, but it could
  be adopted for further artists' usage (something like cache visuzlizer
  for simulations).

- Added new theme area for Space Clip.
  No special colors were defined here yet.

- Implementation of basic cache system for movies.
  This cache system is very familiar with sequence cache system,
  but it supposed to be more portable: at least cache keys aren't
  limited with sequence-based data and current seqcache could
  became an interface between sequencer and moviecache without
  much logic (only logic related on keys handling would be necessary
  here).

  Implemented basic limitors (ab\mount of cached imbuf's), so it'll
  be a bit more difficult to go out of memory when playing long
  animations in Image Editor (this cache system could be used for
  images too, in the future).

- Very basic tools implementation -- only sceletion added, no
  real tool implemented (only camera focal length added to the UI
  which hasn't got real affect on anything).

Assorted notes:
- Not sure about best behaviour for Unlink clip button: should
  it be imageeditor-like (with de-referencing only) or text-editor
  like (with removing datablock from file).
- Also not sure if tools/properties should be splitted into
  different areas or it'll be better to have tools and settings
  for this tool/item/etc in the same area (tools at the top,
  properties are under them).
  Code for properties area is '#if 0'-ed.
- Sound isn't supported during playback in movie clip.
2011-05-30 04:18:02 +00:00
9b5800bcd7 fixed "rather then" -> "rather than" typos all over the place 2011-05-28 13:11:24 +00:00
d369a6aaaf Windows installer and Path changes, fixing various issues:
* Windows installer not working for non-admin users and multiple users
* Addon scripts not installing next to user configuration
* Portable install not being taken into account in all places

The main problem was the windows installer was installing system scripts in
AppData next to the user configuration directory, which is not shared between
users. Now these are installed in ProgramFiles, and only addon scripts added
by the users go to AppData.

On all platforms, addon scripts were sometimes getting installed between
system scripts, because the scripts folder in the executable directory was
given precedence over the user configuration folder, that is no longer done
now. So addons now behave like user configuration, they are preserved even
if you download a newer build of the same blender version.

If you have an installation of 2.57 on windows, the addon install location
will not change until we do the version bump to 2.58, to avoid conflicts with
the existing the installed 2.57 version.

The old behavior of giving precedence to the local folder was done to support
portable install, where all configuration is written to the local folder. This
is now implemented differently: if and only if a "config" folder exists in the
local folder, portable install will be assumed, and files will only be written
to that local folder.
2011-05-27 09:57:53 +00:00
e6d396d17d fix for installing blender as a python module with cmake. 2011-05-26 12:15:42 +00:00
514de547ac update to build system excluding parts of the python bundle. 2011-05-26 11:45:25 +00:00
3cfa9a2163 cmake's install target now works for the python module on *nix. 2011-05-24 18:34:07 +00:00
dc33976fc2 fix for cmake/msvc when the path name contains spaces, patch by Kupoman on IRC 2011-05-24 05:21:51 +00:00
6e39d908a9 quiet compiler warnings for -Wundef 2011-05-22 04:25:31 +00:00
80c2582f0e enable game panel even if the BGE is disabled since its settings effect the viewport.
also remove unused function in creator.c and minor edit to search menu poll function.
2011-05-16 04:55:31 +00:00
3a34dcde68 Code cleanup: remove readblenfile module, only contained some utility functions
to read .blend files from runtimes, folded those into blenloader.
2011-05-11 19:29:23 +00:00
1e0c3d315b minor cleanup, no functional changes. 2011-05-09 14:41:44 +00:00
cb12337363 Code cleanup: remove source/kernel module, this wasn't really the kernel of
anything, only contained a hash map and functions to pass command line args
to the game engine. Moved those to container and BlenderRoutines modules.
2011-05-06 20:18:42 +00:00
07ee0dcc74 build system changes to eltopo, re-applied. 2011-05-02 03:44:02 +00:00
088899236b =trunk=
Recommitted eltopo collision code (but disabled by default)
with Genscher's permission.

To use, you need to install liblapack and libblas
2011-05-01 21:39:13 +00:00
abcdf9573a add back support for rendering local view camera. 2011-04-30 04:29:36 +00:00
11305bd688 CMake build option for security report: CVE-2009-3850
Nothing is changed by default but some linux distributions want to have executing python be opt-in.

This keeps the same functionality but disables auto-run from factory settings and in background mode unless its enabled as a command line argument.

This CMake option is marked as advanced and wont show in the regular options list so its less likely to be enabled by people that like to turn everything ON without reading descriptions :)
2011-04-28 06:20:47 +00:00
f9f771cd01 converted more mixed tab/space indentations to tabs. only whitespace changes. 2011-04-21 15:53:30 +00:00
210ee1ade4 whitespace only, no functional change mixed tabs/spaces --> tabs. 2011-04-21 13:11:51 +00:00
aa7106e4cb patch [#27070] cmake fix for nmake builds 2011-04-21 12:07:40 +00:00
c3d1e1f3e9 cmake - install icons into $PREFIX/share/icons/hicolor/ rather then $PREFIX/share/pixmaps/, also move blender icon into 'apps' dir. 2011-04-21 06:37:54 +00:00
d14738a560 report missing engines on file load. (request from Martin). 2011-04-12 15:55:38 +00:00