Commit Graph

3427 Commits

Author SHA1 Message Date
Sergey Sharybin
75889661de Camera tracking integration
===========================

- Internal changes:
  * Rename uiTemplateMarker to uiTemplateTrack.
  * Fixed some comments in movieclip.c.
- Control channels which are affect on track.
- Fixed track deletion when it's point isn't selected.
2011-06-28 10:09:57 +00:00
Sergey Sharybin
def04fa523 Merging r37863 through r3789 form trunk1 into soc-2011-tomato 2011-06-28 10:06:06 +00:00
Campbell Barton
57f4844c43 make drawing faces in the UV editor an image space option, re-using the mesh option was lazy and doesn't make much sense. 2011-06-28 09:42:17 +00:00
Campbell Barton
b4682414c2 fix [#27787] Smart UV Unwrap Results in Overlaps
added optional face area weighting (from 2.4x) since this can result in overlapping faces.
2011-06-28 06:51:55 +00:00
Sergey Sharybin
08407e79ea Camera tracking integration
===========================

- Fixed "sliding" when panning footage in high zoom.
  This was most noticeable near right top corner of footage.
- Fixed 1px flickering of marker during playback with
  "Lock to Selection" toggled on. This was caused by
  precision errors. Used UI_view2d_to_region_no_clip-like
  offsets calculations, but in float values. Maybe there
  could be something smarter..
- Implemented tarcking along single frame.
  Hotkey is ALT+left/right array. Also changed a bit
  tracking tools buttons in Tools panel.
- Fixed "Lock to Selection" during tracking -- tracks
  synchronization should happen before centering view.
- Approximate marker's position for frames, which haven't
  got marker for them.
  Use the nearest marker from left side for approximation.
  For frames above  first marker's framenr sue first marker
  position.
- Markers now could be disabled. Added checkbox to
  "Active Marker" panel.
- Changes in cache line:
  * Bright line means active track has marker for frame.
  * Dark line means marker's position is approximated.
  * Yellow-less line means marker is disabled for that frames.

NOTE: .blend files which are saved with previous tomato version
      would fail to work properly. I don't want to spend time
      on making that files work properly atm, so don't blame on this.
2011-06-27 14:24:23 +00:00
Sergey Sharybin
70eb9e85c5 Merging r37732 through r37862 from trunk into soc-2011-tomato 2011-06-27 14:20:48 +00:00
Campbell Barton
4dd18f7e6f fix for editmode option toggle 2011-06-27 11:40:15 +00:00
Campbell Barton
a1abdf1c1c fix [#27778] Set Bone Flags - No Scale - Toggle seems not to work.
Toggling options on the selection is better done as a generic operator.
Replace ARMATURE_OT_flags_set and POSE_OT_flags_set with WM_OT_context_collection_boolean_set and use menus to access it with specific settings.

This way its easy make a key shortcut which toggles any boolean on any collection - sequences, metaballs, objects, bones etc.
2011-06-27 07:51:52 +00:00
Campbell Barton
33e554799b Minor warning cleanup & fix
- comment/remove assignments from values to themselves.
- add case break statements (no functional change but some source code checkers notice).
- fix python errors when the sculpt brush is None.
2011-06-27 03:36:14 +00:00
Matt Ebb
826ed5ed1d Fix [#27748] undeterministic behaviour of volumetric renderer
* Made clearer in the UI that the approximate multiple scattering always enables light cache
* Fixed a potential problem in anisotropic scattering
2011-06-25 00:33:36 +00:00
Campbell Barton
fd60b73b7b fix [#27742] Smart UV project no longer works in 2.58
failed with active, unselected objects.
2011-06-24 04:12:01 +00:00
Campbell Barton
3cf2e6b7dc fix [#27747] Modal operator in Special Menu (W) ignores continues grab 2011-06-24 03:59:41 +00:00
Daniel Salazar
fc95ebbc55 W special menu for changing orthographic camera lens scale was missing
btw continues grab doesn't work with this modal ops.. whats up?
2011-06-24 03:41:07 +00:00
Brecht Van Lommel
a014886c57 Fix typo in addon user preferences menu. 2011-06-23 19:42:54 +00:00
Lukas Toenne
587b51831d More flexible size options for particle billboards. This adds scale factors for width and height of billboards, relative to the particle size. It's useful when the particle size is primarily used for collision and the like, so the billboard appearance can be adjusted independently. Also allows non-square billboards.
In addition the billboards can be scaled by the particle velocity with optional head and tail factors (similar to line drawing options). This allows for pseudo-motionblur effects.
2011-06-23 18:59:47 +00:00
Sergey Sharybin
0bb215eece Camera tracking integraiton
===========================

- Corrected copyrights in my new files header.
- Added debug option to dump as PNG image content of search
  areas tracking between which was failed.
- Removed internal tracking settings like pyramid level and
  tolerance. Weren't useful neither for me nor for artists.
- Fixed bug in BKE_tracking_get_marker which could lead
  to failure of getting marker for current frame when
  there's marker for requested frame.
- Fixed bug with disappearing markers after tracking for
  cases when marker was added at frame different from
  tracking start frame and tracking start frame is
  equal to tracking end frame.
- Stop tracking when no markers could be tracked.
- Changed marker selection rules:
  * If marker isn't selected, all it's areas are getting
    selected with mouse.
  * If marker is selected and selection type doesn't have
    "extend" mode (SHIFT isn't holded down) the nearest
    to mouse cursor area would be selected. All the reast areas
    would loose selection.
- Limit number of frames which would be used in "Track Markers"
  operator. So now you could easily track along 10/20/etc frames.
- Change scene current frame after "Track Markers" operator.
- Implemented speed limitors. Now tracking could happen:
  * As fast as possible
  * With reatime speed (scene FPS)
  * With half of realtime speed
  * With quarter of realtime speed.
- Got rid of orig_user in MovieTrackingContext and user
  in TrackMarkersJob. This prevents crashes when user
  joins some space to SpaceClip from which tracking was started.
- Made keyframes on path bigger and do not draw keyframes for
  non-selected markers.

TODO: need to get rid of storing main, scene and screen
      in TrackMarkersJob. This is needed to set scene's
      current frame after tracking (such behavior is comfortable
      for artists) but this could lead to crash if scene is
      getting removed when tracking job is running.

      Render animation operator also stores scene and main,
      so such solution could be fine for first time before
      we've got something smarter.
2011-06-22 14:54:53 +00:00
Sergey Sharybin
9f769c43a3 Merging r37594 through r37703 from trunk into soc-2011-tomato 2011-06-21 18:24:00 +00:00
Campbell Barton
eaae38551f pep8 compliance 2011-06-21 17:17:51 +00:00
Campbell Barton
6a039f1a5c fix [#27707] Script error for UVs->Copy Mirrored UV coords 2011-06-21 02:16:22 +00:00
Thomas Dinges
ed3dadf489 Blender 2.58 release preparations:
* Update of Release Log Links to point to: http://www.blender.org/development/release-logs/blender-258/
2011-06-20 20:21:52 +00:00
Guillermo S. Romero
31093223cd SVN maintenance. 2011-06-18 23:22:55 +00:00
Campbell Barton
2d01cb5b27 fix for error caused with module relocation - broke loading ngons in OBJ files 2011-06-18 11:40:44 +00:00
Sergey Sharybin
5c7771f6d4 Camera tracking integration
===========================

Test tool: convert track to location fcurves for object in 3d world.
1 pixel on footage is equal to 1 Blender unit.

Added for testing only, could be removed any time -- real
parenting to markers/bundles are only under design now.
2011-06-17 14:47:41 +00:00
Sergey Sharybin
35633f35d5 Camera tracking integration
===========================

Refactored interface of movie clip editor:
- Remove all "modal" things like active tool and mode.
  They aren't so useful as I thought when was starting
  implementation of UI.
- Toolbar (T-panel) now contains tools only, no options/properties there.
- All properties are moved to properties panel (N-panel).
2011-06-17 14:47:22 +00:00
Sergey Sharybin
4cd25c1886 Camera tracking integration
===========================

- libmv's sources would now be added to qtcreator project.
- Fixed compilation with blenderplayer enabled and cmake.
- Fixed bug when tracking was done from frame different from
  initial marker's frame number.
- Implemented backwards tracking.
- Added option to draw track's path. Would be enabled by default
  for new scenes. Could be enabled on "Display" panel for
  files saved in previous version.
- Added operator to clean track path so it could be
  easily tracked form scratch.
- Added hotkeys for tracking, backwards tracking and
  cleaning track path (Ctrl-T, Ctrl-Shift-T and Alt-T).
- Fixed crash when setting clip as a footage.
- Small optimization when trying to track without
  selected markers.
2011-06-17 14:47:04 +00:00
Sergey Sharybin
f4ce5770ca Merging r37518 through r37593 from trunk into soc-2011-tomato 2011-06-17 14:41:44 +00:00
Brecht Van Lommel
5dcb853ed9 Fix #27660: texture space panel was missing for curve & metaballs, now they
have same panel as mesh. Patch by Ronan Ducluzeau, thanks!
2011-06-17 13:53:47 +00:00
Campbell Barton
b306566a44 fix [#25598] projection surface snap issue
Excuse the thrashing, this is from r35438, reverted r35444 under the _wrong_ impression Martin considered unacceptable.
2011-06-17 13:02:23 +00:00
Campbell Barton
7cbc4c0dd7 IDProperty python module update
- add support for IDProp array slicing, but not resizing.
- rename array attribute type to typecode and use chars 'f', 'd', 'i' which match pythons array module. (was using int's which only have a meaning internally).
- rename function 'convert_to_pyobject' to 'to_dict' and 'to_list' for IDProp group and array types respectively.
- remove 'len' array attribute, calling len(array) is fine.
2011-06-17 05:45:46 +00:00
Campbell Barton
3ede710a3c fix for baking actions for objects with no animation data. 2011-06-16 07:48:22 +00:00
Mitchell Stokes
a3e296fc40 Committing patch #25676 Anisotropic filtering in viewport and BGE by me.
This patch adds anisotropic filtering of textures in the viewport and the BGE. The quality of the filtering is adjustable in the user preferences under System. For more information on anisotropic filtering:
http://en.wikipedia.org/wiki/Anisotropic_filtering

One current limitation of this setup (having the option a user preference) is it makes runtimes more troublesome. Runtimes don't have user preferences set, so for now the blender player defaults to 2x AF. Options will be added later to change this value (probably a command line option).
2011-06-15 18:59:22 +00:00
Sergey Sharybin
6e3bcdcb26 Camera tracking integration
===========================

- Marker's preview panel is now avaliable with any
  tool selected (except NONE).
- Fixed bug with marker's point going outside of pattern
  when scaling pattern which isn't centered to marker's pos.
- Changed a bit pattern area image generation.
  Now it shouldn't give artifacts with different kinds of
  offsets caused because of float-?int conversions.
- Rollback code for generating flat buffer of search area
  when tracking. It'll be more accurate with current position
  calculation.
  Will switch to BKE_tracking_acquire_search_imbuf when
  backwards position calculation would be implemented.
- Added option to make markers thin. It's in Debug panel due
  to this option was really useful for debugging preview image
  but not sure it'll be useful for artists.
- Added "View Selected" operator (hotkey is numpad period).
  Fits view to show all selection at the frame.
- Added option "Lock to Selection" which locks view
  to show centered selection. Useful to visual markers
  tracking during playback.
  This option is on "Display" panel.
2011-06-15 17:23:08 +00:00
Sergey Sharybin
1eaea0b484 Merging r37479 through r37513 from trunk into soc-2011-tomato 2011-06-15 17:21:34 +00:00
Campbell Barton
b09bb948ee fix [#27658] Bake action operator error on non armature objects
add support for baking object transformations too, also add option to clear constraints (off by default).
2011-06-15 06:25:05 +00:00
Campbell Barton
62ba2d4c68 Changes to quick explode
- fix python error when the object had an empty material slot
- initialize start frame from the current frame
- set frame range to 300000 max (which is blenders own maximum)
- mesh order was arbitrary, instead use selected -> active, removed invert option.

also fix for missing include in bpy_extras.view3d_utils
2011-06-15 00:16:30 +00:00
Sergey Sharybin
02ace953a9 Camera tracking integration
===========================

- itasc adopted for Eigen3 library.
  It compiles well, but need deeper testing for regressions.
- Removed Eigen2 library.
- Added settings to tracker which could be changed from UI.
- Pattern area is now affects on tracker.
  Currently libmv supports square patterns which are centered
  to marker's position. Maximal pattern dimensions is sending
  to libmv as pattern size. Would be changed when libmv would
  support non-centered and non-square patterns.
- Fixed bug with syncing pattern's flags when tracking.
- Current frame in cache line became a bit more visible.
  It's useful for me to when debugging.
- Changed behaviour of "Add Marekr" operator: not it's non-modal
  and places marker on mouse position at click.
- Added macro "Add Marekr and Move" which is used to place
  markers from toolbar button.
- Added some utility functions to get image buffer under search
  and pattern area which also returns relative position of
  marker center for this images.
  Generated images are more "correct" from coords rounding
  POV, but  re-calculation of marker position back to
  frame coords is more complicated and not implemented yet,
  so old not very accurate logic is still used.
- Added preview widget with content of pattern area.

NOTE: files saved in previous versions of this branch could
      easily crash on tracking. Use "Reset To Settings" button
      from Tracking Settings before tracking selected markers
      for such files.

TODO:
- Implement adjusting marker position from marker's
  preview widget.
- We've got an idea of sliding marker after click before
  releasing mouse button.
2011-06-14 16:22:06 +00:00
Sergey Sharybin
7b40210025 Merging r37437 through r37478 from trunk into soc-2011-tomato 2011-06-14 16:08:39 +00:00
Campbell Barton
519111514f Since scene sequence strips use the 'use_sequencer' setting, make it available in the sequencer panel. 2011-06-13 21:35:24 +00:00
Daniel Genrich
5745f99dee Elbeem / Fluidsim update:
a) Enable the possibility to remove the "air bubble" around submerged collision object. This feature is enabled as standard for new files. The code was found in elbeem by nudelZ, coded and provided by Nils Thürey (thanks!)
b) Old baked files gets deleted if a new bake gets started (were overwritten before and resulted in weird old bake + new bake mixture) (idea by nudelZ)
2011-06-12 23:51:30 +00:00
Thomas Dinges
f96769ef0a Fix/Workaround for [#27643] drawing glitch:
* Removed the Icon of the menu, when an icon is used, it draws a triangle icon, assuming it is a sub menu.
2011-06-12 20:27:28 +00:00
Sergey Sharybin
558d1e8d4a Merging r37371 through r37433 from trunk into soc-2011-tomato 2011-06-12 18:20:36 +00:00
Janne Karhu
e8a1d03570 Quick Explode operator:
* Sets up a particle system and an explode modifier.
* In "blend" mode requires two selected objects and creates "crossed keyed" particle systems between the objects for a simple blend effect where the first object explodes and then recombines as the second object.
* Also renamed the other quick effect operators as "Quick ..." to bring some consistency to the operators (also nice that now you can just write "quick" to the operator search and get all these operators).
2011-06-12 11:14:28 +00:00
Campbell Barton
90d8fcb522 improved autocompleation when there is a common prefix 2011-06-11 17:03:26 +00:00
Thomas Dinges
6fb82a85c9 * Code cleanup 2011-06-10 21:06:59 +00:00
Thomas Dinges
6c343e7b61 2.5 Modifier UI Script:
* Tiny improvement, no need to have split declaration outside of if branch.
2011-06-10 20:41:22 +00:00
Sergey Sharybin
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
Sergey Sharybin
6e0332fd40 Camera tracking integration
===========================

- Disallow moving pattern/search area in way when marker position is
  outside of pattern area.
- MoiveClip could be set as background for 3D view.
  Added background source property to BGPic to switch between image
  and movie. Movie is a bit more complicaated entity than clip (due to
  displaying bundles, test objects and so) that's why i've sliptted
  background into two sources.
- Added Layout.template_movieclip to display general clip settings.
  Used in Footage panel of SpaceClip and background image properties
  in 3d view.
- Display bundles in 3D view as spheres. Selection is synchronized to
  markers associated with this bundle.
  Bundle can't be selected in 3D view.
- Recoded internal DNA structures, RNA and operators to match libmv entities.
  Tracking data now consists of Tracks, each tracks consists of markers
  which are associated with frame number. Markers holds position only,
  pattern and search areas settings are stored in track. Such settings should
  be unified for all markers in track and marker should hold position and
  frame number only.
2011-06-10 17:06:37 +00:00
Sergey Sharybin
eb57876275 Merging r37123 through r37370 from trunk into soc-2011-tomato: 2011-06-10 16:58:07 +00:00
Campbell Barton
9cf0bbb95c added a check to console auto-compleation for pythons struct_seq type, so bpy.app and sys.float_info autocompleate their attributes rather then bring treated as a typle. 2011-06-10 09:44:27 +00:00
Campbell Barton
1f56eee953 fix [#27495] Incorrect result of image name autocompletion 2011-06-10 07:22:35 +00:00