Commit Graph

47594 Commits

Author SHA1 Message Date
Campbell Barton
4ef1fd1078 game engine support for recording animation back & some other minor changes. 2010-02-22 12:25:58 +00:00
Damien Plisson
dd03793f4e OSX : Bugfix [#21293] add OpenMP apple gcc bug workaround for render preview
All openMP calls from a background thread need to have this thread var init workaround
2010-02-22 10:29:49 +00:00
Campbell Barton
b65a983d39 use BLI_findstring in more places & remove some warnings, no functional changes. 2010-02-22 09:22:36 +00:00
Campbell Barton
756dace6f5 fix for typo 2010-02-22 09:02:05 +00:00
Joerg Mueller
e722806cf7 - Jack transport update: Moving the playhead in another jack app when not playing back now triggers an update in blender.
- Missing stub fix from last commit by nazg-gul, blenderplayer works now atm.
2010-02-22 09:01:49 +00:00
Joerg Mueller
81847df968 Fix for the player by nazg-gul. 2010-02-22 08:27:45 +00:00
Campbell Barton
e31d0198e6 exclude self references from the ID search list when PROP_ID_SELF_CHECK is set, also raise an error from python if this is attempted 2010-02-22 08:27:45 +00:00
Elia Sarti
2bfee787a6 Fix for #21286, Trying to open the toolbox crashed blender 2.5 alpha 1
Added poll function for BUTTONS_OT_toolbox operator
2010-02-22 06:05:35 +00:00
Campbell Barton
bc3d96678d bugfix [#21233] Crash in pyapi, with new object.
pass the obdata as an argument rather then assigning later so as not to allow an invalid state.
2010-02-22 00:07:46 +00:00
Elia Sarti
835c353aaa Fix for #21209, Delete X for particle settings does nothing.
Disable ID default unlink button if the RNA property is set to never be null, as the unlink default action simply sets pointers to null
2010-02-21 22:55:35 +00:00
Benoit Bolsee
37b9c9fe4d VideoTexture: improvements to image data access API.
- Use BGL buffer instead of string for image data.
- Add buffer interface to image source.
- Allow customization of pixel format.
- Add valid property to check if the image data is available.

The image property of all Image source objects will now
return a BGL 'buffer' object. Previously it was returning
a string, which was not working at all with Python 3.1.
The BGL buffer type allows sequence access to bytes and
is directly usable in BGL OpenGL wrapper functions.
The buffer is formated as a 1 dimensional array of bytes
with 4 bytes per pixel in RGBA order.

BGL buffers will also be accepted in the ImageBuff load()
and plot() functions.

It is possible to customize the pixel format by using
the VideoTexture.imageToArray(image, mode) function:
the first argument is a Image source object, the second
optional argument is a format string using the R, G, B,
A, 0 and 1 characters. For example "BGR" means that each
pixel will be 3 bytes, corresponding to the Blue, Green
and Red channel in that order. Use 0 for a fixed hex 00
value, 1 for hex FF. The default mode is "RGBA".

All Image source objects now support the buffer interface
which allows to create memoryview objects for direct access
to the image internal buffer without memory copy. The buffer
format is one dimensional array of bytes with 4 bytes per
pixel in RGBA order. The buffer is writable, which allows
custom modifications of the image data.

v = memoryview(source)

A bug in the Python 3.1 buffer API will cause a crash if
the memoryview object cannot be created. Therefore, you
must always check first that an image data is available
before creating a memoryview object. Use the new valid
attribute for that:

if source.valid:
    v = memoryview(source)
    ...	

Note: the BGL buffer object itself does not yet support
the buffer interface.

Note: the valid attribute makes sense only if you use
image source in conjunction with texture object like this:

# refresh texture but keep image data in memory
texture.refresh(False)
if texture.source.valid:
    v = memoryview(texture.source)
    # process image
    ...
    # invalidate image for next texture refresh
    texture.source.refresh()

Limitation: While memoryview objects exist, the image cannot be
resized. Resizing occurs with ImageViewport objects when the
viewport size is changed or with ImageFFmpeg when a new image
is reloaded for example. Any attempt to resize will cause a
runtime error. Delete the memoryview objects is you want to
resize an image source object.
2010-02-21 22:20:00 +00:00
Tamito Kajiyama
07fdcb1f1b Merged changes in the trunk up to revision 27063. 2010-02-21 21:47:52 +00:00
Elia Sarti
062d215b10 Fix #21214 Changing frame range on render panel doesn't update on timeline...
Was missing notifier

Also made a description slightly more consistent
2010-02-21 20:27:13 +00:00
Campbell Barton
3307d6d509 building without jack was broken 2010-02-21 19:54:18 +00:00
Campbell Barton
af835c52a9 correction pointed out by Moguri, logic button was accepting Text instead of actions. 2010-02-21 19:33:14 +00:00
Joerg Mueller
38ef2df8f7 2.5 Audio:
* Jack Transport support!
* Minor sequencer audio corrections.
2010-02-21 18:01:41 +00:00
Campbell Barton
ee12a5368a scale int number button sensitivity by the min/max range. 2010-02-21 16:43:25 +00:00
Martin Poirier
eb0bf10c9c [#21269] Alt E extrude options don't appear without Tool Shelf visible
Vertex selection count wasn't properly updated after extrude.
2010-02-21 15:54:41 +00:00
Campbell Barton
6589038350 python rna api now clamps values, (was fun to see the spot_size go backwards)
Vector callbacks still missing clamp checks
2010-02-21 14:48:28 +00:00
Peter Schlaile
d474fae9b9 == Sequencer ==
Made aspect ratio work again in sequencer preview
2010-02-21 14:19:53 +00:00
Martin Poirier
438b93dccc [#21265] Rotate behaves wrong with constraints
With new axis var for rotate, it wasn't reset properly when constraints are turned off.
2010-02-21 14:13:20 +00:00
Campbell Barton
0cc59b9bb7 generic modal operator to make adjusting almost any rna property with the mouse possible with a few lines.
Example which is similar to interactive lamp adjusting in 2.4x ...
  wm.context_modal_mouse(path_iter="selected_editable_objects", path_item="data.spot_size")

Added lamp Wkey menu back.
2010-02-21 14:05:02 +00:00
Campbell Barton
1bb37bc10e py api: bpy.props
new properties without any arguments were failing.
2010-02-21 12:15:38 +00:00
Campbell Barton
4cd088c19e modal python operator support. 2010-02-21 11:56:00 +00:00
Joshua Leung
ddc0c68a5c Bugfix #21234: Autokey "insert only available" userpref inserts keys for all bones in an armature
-- 

Bugfix: When autokey is enabled, notifiers to refresh the animation editors *after* transforms finished for objects were missing.
While I understand the need to limit these to not doing this during transform, after transform, this lead to lag/inconsistent UI problems.

-- 

* Added 'Damped Track' Option to 'Make Track' Operator
* Improved the code of the 'Clear Track' operator to include other types of tracking constraint too
2010-02-21 11:42:32 +00:00
Campbell Barton
02b2c2f39d bugfix [#21258] Select > Mirror causes segmentation fault. 2010-02-21 11:07:06 +00:00
Joshua Leung
f3b9ea066e Bugfix #21245: "Track to" (Ctrl + T) operator was missing notifier updates
Bugfix #21255: Clear track operator did not remove TrackTo constraints too. This could still be made to do Locked Track and other tracking constraints later too, but for now this will do.
2010-02-21 11:05:52 +00:00
Daniel Salazar
273af05c80 Emmit step size was too high 2010-02-21 08:25:14 +00:00
Tamito Kajiyama
bfe120538c Removed from the Scene data structure a Freestyle-related member that
was no longer used.
2010-02-21 01:03:36 +00:00
Martin Poirier
71125002a9 No need for this change anymore (force include to get BLO_sys_types.h in GE) 2010-02-20 22:51:22 +00:00
Martin Poirier
5589050c7e move include where it's needed and won't break other things. 2010-02-20 22:49:45 +00:00
Elia Sarti
f7d82af101 Compile fix for CMake 2010-02-20 22:38:21 +00:00
Campbell Barton
86047ac3d5 typo in to_euler() 2010-02-20 22:36:32 +00:00
Joshua Leung
24827ce351 Fix compiling error on windows for mathutils commit 2010-02-20 21:01:05 +00:00
Campbell Barton
ac48efc0ab allow removing datablocks in the rare case of <0 users. 2010-02-20 20:59:30 +00:00
Martin Poirier
aa67aa9ecc Split numinput from transform (reusable in other operator).
Use in marker move operator.
2010-02-20 20:29:09 +00:00
Campbell Barton
02e7871149 Mathutils API: Euler support for rotation order.
Examples.
 euler = Euler(1, 2, 3)
 euler.order = 'ZXY'
 
 euler = matrix.to_euler('XZY')


Still missing rna support. this still wont give the right order, defaulting to XYZ.
 eul = object.rotation_euler
2010-02-20 19:49:04 +00:00
Campbell Barton
65a4dafcff fix for empty xyz axis text drawing ontop of everything. 2010-02-19 20:09:42 +00:00
Campbell Barton
96b58264ca faster function lookups, quick test through python cuts a quater the time off.
was doing an extra lookup for the functions property, as well as using the property iterator.
(every button & menu item draws does one of these for every redraw).
2010-02-19 16:31:03 +00:00
Campbell Barton
3bf2715039 apply visual transform to pose
So constrainted bones can have their transform applied to their loc/scale/rot, then remove the constraints
2010-02-19 15:34:26 +00:00
Campbell Barton
3b9fdfa9e1 dont allow linking an object into a linked scene. 2010-02-19 14:08:41 +00:00
Campbell Barton
4755ab9f80 scene_update_for_newframe was calling DAG_scene_update_flags() and BKE_animsys_evaluate_all_animation() for each set.
gain some speedup by only calling once.

minor printf changes to readfile.c, no functional change.
2010-02-19 13:13:21 +00:00
Joerg Mueller
f09dc08523 Enabling AV-sync again. You can now choose between No sync, Frame Dropping or AV-sync. 2010-02-19 12:20:29 +00:00
Joshua Leung
92927e5f7d Pose Tools Cleanup:
Moved some of the generic code used to determine the F-Curves linked to PoseChannel transforms (as used by the Pose Sliding tools) into a separate file, in preparation for migration of PoseLib tools to this system too. This should make it easier to add some useful new functionality to the PoseLib browsing system (pending in a later commit).
2010-02-19 11:42:21 +00:00
Tamito Kajiyama
1234b55330 Added support for procedural duplication (such as DupliVerts and DupliFaces). 2010-02-19 01:10:04 +00:00
Campbell Barton
f50962a689 in rare cases fcurves with no handle length can result in 0.0. check if the point matches the frame. 2010-02-18 19:43:13 +00:00
Campbell Barton
b5adeb922f revert 27010, sorry but this makes playback of animation unusable & jerky, we can provide some sample files for testing. 2010-02-18 17:00:24 +00:00
Campbell Barton
3142c4367c another speedup to constraint checking, skip the bone list and only lookup pose channels that have constraints. 2010-02-18 16:41:47 +00:00
Campbell Barton
f4b3d2dc9c constraints were being checked twice (once from rna property update function and once from the constraint panel callback)
comment the update call in the panel function.
also avoid one bone lookup which was taking a fair bit of CPU when profiling.
2010-02-18 16:05:01 +00:00
Joerg Mueller
007374170b Calling AV-sync in UI to what it really is! 2010-02-18 14:37:17 +00:00