Commit Graph

74 Commits

Author SHA1 Message Date
Campbell Barton
263be14811 rename WITH_BUILTIN_GLEW, WITH_SYSTEM_GLEW & negate. 2012-06-23 13:42:14 +00:00
Sergey Sharybin
59ef51aa27 Initial Ceres integration into Blender
Currently only put sources of Ceres library into extern/libmv/third_party and
setup CMake and SCons building systems.

Integration details:

- Even CMake build files are not re-used from Ceres's trunk: they're using some
  automatic stuff detection like glog, pthreads, protobuf and so and it's not
  so clear how to re-use that files without modifications.
  And IMO it's easier if build files are getting re-generated automatically to
  match Blender-specific setup rather than keeping changes made locally in
  Blender in sync when re-bundling Ceres library. Especially in case when it's
  already needed to support SCons build system.
- Integrated only actual sources, all tests were stripped. Probably it'll be nice
  to have them, but they'll need clear integration with current module test stuff
  in Blender.
- Suitesparse was disabled. It'll help a lot having it, but there are some difficulties
  making cholmod working fine on windows. Would be added in future
- collections_port.cc was also stripped. It's not used by Ceres's upstream and
  it gives compilation error (undefined uint32 -- looks like namespace issue).
- Currently all schur eliminators are included. Not sure if it makes sense,
  also not sure if it makes sense having them switchable on and off -- IMO better
  to have single configuration which works and does not require special tweaks
  after everything was set up.

To bundle updated version of Ceres:
- Go to extern/libmv/third_party/ceres folder
- Run ./bundle.sh

This will checkout fresh Ceres snapshot of Windows branch (which is currently
most interesting from integration into Blender POV), apply all patches listed
in patches/series and copy needed files into Blender's working copy. This will
also re-generate CMake/SCons build rules.

If you'll need extra files from Ceres repository which are not present in
Blender, you'll need to copy them manually and then run ./mkfiles.sh from
extern/libmv/third_party/ceres folder which will update list of files used
by Blender.

Thanks to Leir Mierle and Sameer Agarwal (and all others who helped developing
Ceres) this library and thanks to Keir Mierle with help integrating it into Blender!
2012-06-10 15:27:41 +00:00
Mitchell Stokes
8beea054f7 Fixing some potential heap corruption issues in the Blenderplayer when it is built with CMake. This fix forces Blender and the Blenderplayer to use the same SDNA, since inconsistencies between Blender's and the Blenderplayer's SDNA is what lead to the corruption issues. 2012-06-07 01:44:22 +00:00
Campbell Barton
68a9dd54ec mask mode for clip editor developed by Sergey Sharybin, Pete Larabell and myself.
see:
http://wiki.blender.org/index.php/User:Nazg-gul/MaskEditor


note - mask editing tools need continued development, feather option is not working 100%
2012-06-04 16:42:58 +00:00
Campbell Barton
0b7593a3dc finish cleanup for plugins 2012-05-29 10:31:42 +00:00
Campbell Barton
d4b6927179 remove NULL check in TREESTORE macro, the return NULL value wasny checked for by any callers (ie - it would crash later if the arg was NULL anyway)
also comment on the speed of check_persistent()
2012-05-27 14:43:18 +00:00
Antony Riakiotakis
b06f238bb0 Fix blenderplayer utf8 cmake for MinGW (linking order matters for gcc) 2012-03-21 12:35:39 +00:00
Alexander Kuznetsov
c2531e47b6 Fix for compiling bplayer on cmake/win after adding utf support.
Reported by Miika
2012-03-20 23:10:46 +00:00
Antony Riakiotakis
bb5e545bf4 Fix blenderplayer linking with recent additions to bmesh python. We should really start building with player on so that mistakes like this can be detected early. 2012-02-22 18:57:17 +00:00
Campbell Barton
379527581b svn merge ^/trunk/blender -r44204:44213 2012-02-17 21:07:18 +00:00
Sergey Sharybin
c628f04a7c - Fixed linking errors of blender player with CMake and XDND enabled
- Rest of changes to make XDND switch-off-able: link against extern_xdnd only
  if XDND is enabled
2012-02-17 20:59:21 +00:00
Campbell Barton
bbe69705a5 svn merge ^/trunk/blender -r43420:43436 2012-01-17 02:20:23 +00:00
Sergey Sharybin
f075f2babb Corrected fix for linking issues with blenderplayer enabled 2012-01-16 18:49:10 +00:00
Sergey Sharybin
de50e6324a Fix for compilation error using cmake+msvc 2012-01-16 18:24:30 +00:00
Campbell Barton
063dd4f60a svn merge ^/trunk/blender -r42197:42221 2011-11-28 17:09:13 +00:00
Antony Riakiotakis
911be02fcd remove duplicate extern_colamd from blenderplayer cmake 2011-11-28 08:38:08 +00:00
Campbell Barton
cb890a49fb svn merge ^/trunk/blender -r41602:41638 . 2011-11-08 02:57:28 +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
94f8e3198d svn merge -r41266:41287 ^/trunk/blender 2011-10-26 03:26:52 +00:00
Campbell Barton
15e6d6cd75 svn merge ^/trunk/blender -r41226:41227 . 2011-10-24 12:43:08 +00:00
Campbell Barton
4a04f72069 remove $Id: tags after discussion on the mailign list: http://markmail.org/message/fp7ozcywxum3ar7n 2011-10-23 17:52:20 +00:00
Campbell Barton
4a157de23d svn merge ^/trunk/blender -r40587:40643 2011-09-28 07:34:48 +00:00
Jens Verwiebe
7ba71fff8c OSX: fix player bundle_creation 2011-09-27 10:51:57 +00:00
Campbell Barton
effea8c29b svn merge ^/trunk/blender -r40511:40587 2011-09-27 03:12:31 +00:00
Dalai Felinto
aeafb960b1 OSX - cmake: blenderplayer part 2: Jens Verwiever co-patch
Using OSX Bundle (in oppose to Blender dummy .app) as start point for binary.
That way we don't need to move the blenderplayer after the bundle is finished and we can rebuild it without doing `make install`
I will test more tomorrow, but it should be working now
2011-09-26 07:54:30 +00:00
Campbell Barton
0383fb5341 svn merge -r40104:40117 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-09-11 08:28:16 +00:00
Dalai Felinto
ff04beb3e4 partial fix for blenderplayer linking problems (decast retour)
This fix the problem of linking the extern components for the KX module.
The remaining linking issues are related to actual bad level access so the fix is a bit more complex.

Remaining linking issues (osx cmake gcc)
###########
Undefined symbols:
  "_buildNavMeshDataByDerivedMesh", referenced from:
      KX_NavMeshObject::BuildVertIndArrays(float*&, int&, unsigned short*&, int&, unsigned short*&, float*&, int&, unsigned short*&, int&, int&)in libge_logic_ketsji.a(KX_NavMeshObject.cpp.o)
      _applyModifier in libbf_modifiers.a(MOD_navmesh.cpp.o)
  "_polyIsConvex", referenced from:
      _applyModifier in libbf_modifiers.a(MOD_navmesh.cpp.o)
  "_polyNumVerts", referenced from:
      KX_NavMeshObject::BuildVertIndArrays(float*&, int&, unsigned short*&, int&, unsigned short*&, float*&, int&, unsigned short*&, int&, int&)in libge_logic_ketsji.a(KX_NavMeshObject.cpp.o)
  "_polyFindVertex", referenced from:
      KX_NavMeshObject::BuildVertIndArrays(float*&, int&, unsigned short*&, int&, unsigned short*&, float*&, int&, unsigned short*&, int&, int&)in libge_logic_ketsji.a(KX_NavMeshObject.cpp.o)
      KX_NavMeshObject::BuildVertIndArrays(float*&, int&, unsigned short*&, int&, unsigned short*&, float*&, int&, unsigned short*&, int&, int&)in libge_logic_ketsji.a(KX_NavMeshObject.cpp.o)
      KX_NavMeshObject::BuildVertIndArrays(float*&, int&, unsigned short*&, int&, unsigned short*&, float*&, int&, unsigned short*&, int&, int&)in libge_logic_ketsji.a(KX_NavMeshObject.cpp.o)
############
2011-09-11 08:21:26 +00:00
Campbell Barton
fc95382a97 svn merge -r38400:38500 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-07-26 03:55:23 +00:00
Campbell Barton
cadfac5a0f svn merge -r38000:38200 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-07-25 17:51:30 +00:00
Campbell Barton
97d0846d2c svn merge -r37335:37500 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-07-24 13:03:48 +00:00
Campbell Barton
3a6158a8bf move mathutils into its own lib. 2011-07-15 04:01:47 +00:00
Brecht Van Lommel
398807e235 Fix #27785: blenderplayer + eltopo linking error. 2011-07-04 13:03:41 +00:00
Campbell Barton
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
Campbell Barton
191ad54599 svn merge -r36603:36628 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-05-12 05:35:19 +00:00
Brecht Van Lommel
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
Joseph Eagar
6ef77cf95a =bmesh= merge from trunk at r36529 2011-05-08 23:43:18 +00:00
Brecht Van Lommel
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
Brecht Van Lommel
576035f9e1 Patch #27225: blenderplayer resource compilation error fix for cmake + mingw,
patch by Ryakiotakis Antonis.
2011-05-06 08:16:44 +00:00
Campbell Barton
75e1104d92 cmake
- allow building blenderplayer with redcode.
- when ffmpeg is enabled remove strict compiler errors for imbuf and blenkernel since its hard to avoid these warnings across ffmpeg versions.
2011-04-18 07:11:40 +00:00
Joseph Eagar
c98148a963 =bmesh= merge from trunk at r36153 2011-04-15 01:19:13 +00:00
Campbell Barton
a42bf45333 revert Joseph Eagar's eltopo commits r36073, 36075 (& some minor edits)
discussed with Janne, Ton, Nathan and we agreed this kind of change at least needs discussion with module owners.

Its also too close to release to be making these kinds of changes.

commands used:

  # reverse merge
  svn merge -r36073:36072 .
  # for some reason this gave a lot of property changes
  svn revert `svn st | grep "^ M" | awk '{print $2}'`
  # reverse merging didn't work here, removing while dir.
  svn rm extern/eltopo/


  # manually fixed conflict in
  # ./source/blenderplayer/CMakeLists.txt
  #
  # also manually removed 2 lines from
  # ./CMakeLists.txt
2011-04-12 11:09:10 +00:00
Campbell Barton
3a73a75e84 enable blenderplayer library sorting on windows, (was already enabled for blender), resolves linking issue on windows 2011-04-12 01:56:03 +00:00
Joseph Eagar
0a60bc14d6 =cloth collisions=
Plugged the eltopo library into the cloth solver.
I was playing with it earlier, and it's so easy to
use I decided to quickly put it in (trunk's) cloth.

See http://www.cs.ubc.ca/labs/imager/tr/2009/eltopo/eltopo.html
.  The authors are on the bleeding edge of continuous collision
detection (one of them did ILM's cloth sim).  
I
don't really have to time to plug it into softbody, particles,
bullet, fluid, etc, but doing so would be pretty straightforward.
I'll leave that up to someone else.

To use, turn on USE_ELTOPO (in cmake) or WITH_BF_ELTOPO in scons.
2011-04-09 23:19:11 +00:00
Nathan Letwory
9feb70d390 Add missing defines for .rc file. 2011-04-08 22:07:17 +00:00
Campbell Barton
ca254dd37b add option WITH_BUILTIN_GLEW, so linux packagers can disable to use their own glew library. 2011-04-05 23:31:01 +00:00
Campbell Barton
cd9b42871c remove bpy python api from blenderplayer, it was being linked but not initialized/available. 2011-03-31 15:28:53 +00:00
Dalai Felinto
10373238c1 blenderplayer building again in CMake + OSX (and Linux I guess) patch from IRIE Shinsuke 2011-03-05 09:27:14 +00:00
Joseph Eagar
f01261d040 merge with/from trunk at r35190 2011-02-27 06:19:40 +00:00
Campbell Barton
e06eea4fba fix for scons with recent change to how BINRELOC is enabled via cmake.
also add WITH_PYTHON define to qtcreator project generator until we get a way to add them properly.
2011-02-25 14:45:45 +00:00
Campbell Barton
9ef0eed4b6 build python module without binreloc, add dummy argv[0] to initialize bprogname. 2011-02-21 13:13:08 +00:00