Commit Graph

5608 Commits

Author SHA1 Message Date
Joshua Leung
30d41ac9cb NLA - Adding new actionclip strips no longer appends "Act: " to the
start of the names. It should be clear enough what they are without
this.
2011-07-08 03:31:40 +00:00
Joshua Leung
d00a3c8ddf Outliner RMB Menu - AnimData mangement
* When clicking on "Animation" items in the Outliner, there's now a
menu containing from which you can change the action used, and
refresh/delete all drivers.

* Moved action-setting logic for AnimData actions to a single utility
function in anim_sys, since this was starting to be done in too many
places already.

* Fixed Outliner refresh bug after changing the active action
2011-07-07 03:35:48 +00:00
Joerg Mueller
34c5784f99 Merging trunk up to r38167. 2011-07-06 20:26:56 +00:00
Brecht Van Lommel
29f2cbdd8f Fix #27876: particles instancing a whole group didn't take group offset into account. 2011-07-06 10:05:27 +00:00
Brecht Van Lommel
959cd0fe69 Fix #27777: vertex color disabled when in a reused node material. 2011-07-05 19:45:26 +00:00
Joerg Mueller
3f3c6f5f1f Merging from trunk up to r38119. 2011-07-05 13:54:25 +00:00
Brecht Van Lommel
1ff54f91ff Fix: #27861 bevel angle limit at 90° wasn't working well on cube, tweaked
epsilon value to be a bit smaller.
2011-07-05 08:28:54 +00:00
Janne Karhu
db2d737f0e Fix for [#27182] particle/collision kill interacting strangely
* Particle die time wasn't taken correctly into account in certain situations when calculating dynamics.
2011-07-05 02:56:14 +00:00
Janne Karhu
35965308a8 Fix for [#27579] Particles Cache Problem
* Horrors from the ancient world of deprecated code: object animation offset can't really work correctly with particles unless point cache takes full control of particle system timing.
* Disabled the non-working offset control from effecting particles so that for now particles will work consistently and the offset is only applied to the object.
2011-07-05 02:18:55 +00:00
Jeroen Bakker
830fe8af84 Updated the indent, sorry! 2011-07-04 19:22:37 +00:00
Jeroen Bakker
e814f2c71d ====== Proposal: Nodes property windows enhancement ======
===== Situation before this patch =====

in the current situation inside the node editor there is a properties panel (press 'n'-key). This pabel displays some information about the node, backdrop and grease pencil. The UI of the property panel is typically vertical oriented. Nodes in the other hand are not oriented in a direction. Both area's are draw via the same draw function.

With some nodes this will create not user-friendly UI. Try the color-balance for instance). The 3 color circles are drawn next to each other, it would be better to draw them below each other.

When creating more complex nodes you don't want to display all handles in the node-panel and in the properties panel. For instance fine-tuning handles you only want to appear in the property panel to reduce place in the node itself.

===== Situation after this patch  =====

This patch separates the draw functions of the property panel and the node panel.
When no special draw function is created for the property panel, the draw function of the node will be used as 'fallback'

===== Impact =====

==== BKE_node.h ====

add a new uifunc (called uifuncbut) to the bNodeType struct. The definition is the same as the uifunc.

==== node_buttons.c ====

if the uifuncbut is set, call it. currently calls the uifunc method

==== drawnode.c ====

static void node_composit_set_butfunc(bNodeType *ntype). set the uifuncbut function where needed. When at the end of the method uifuncbut is still empty, set uifuncbut to the uifunc. 

===== Final note =====

! PS. this is not limited to the compositor it also works for Materials and Textures !
! PPS. For other branching creating their own node-tree. Please make sure that your uifuncbut is set NULL or a valid draw function !
2011-07-04 18:48:36 +00:00
Jeroen Bakker
c4491f558b Current situation
A mesh can consist out of multiple material. Take a character with clothing's. the skin can be a different material as the different clothing's. During compositing it is a common use-case to only do a part of the composit on only a specific material. Currently this can not be done.

In blender movies this feature is known to be implemented, but until now it never got integrated into trunk.
Proposal

With material index the Blender internal renderer will be capable of creating a buffer containing the material indexes of the first pixel-hit. This will be implemented in the same manner as the object index.

In the compositor the ID Mask node can be used to extract the information out of the Render pass.
Impact
User interface

On the properties-space the next changes will be done

    Scene⇒Render layer⇒Passes⇒Material index will be added
    Material⇒Options⇒Pass index will be added

DNA

    Material struct will get an new field called “index”. this will be a short-type.
    Material struct the field pad will be removed.
    A new Render-layer pass will be added (bit 1«18)

RNA

    Material RNA is updated (based on “pass index” from object)
    Render layer RNA is updated (based on IndexOB)

Blender internal renderer

The Blender internal renderer will process the render pass as a copy of the Object index.
Blender compositor

The render layer input will get a new output socket called “IndexMA”
Usage

An example on how to use material index can be found at:

https://svn.blender.org/svnroot/bf-blender/trunk/lib/tests/compositing/composite_materialindex.blend

This is also example of a commit message longer than the commit itself :)
2011-07-04 18:14:41 +00:00
Joshua Leung
b6c1490359 Experimental depsgraph tweak:
Objects with drivers are now treated as needing updates when the
current frame changes. This assumption has been documented in the
code, and should at least mean that users who try to use drivers for
creating simple time-based expressions that this should work.

Note:
- It is still recommended to create a "cfra" driver variable instead
of actually inlining bpy.context.scene.frame_current into the
expressions. Not only does the latter look rather nasty to type/have
in the expression, but it is also less future-proof for when I get
around to actually working on a beefed-up depsgraph (nothing official
on that front yet...)
2011-07-03 11:56:24 +00:00
Ton Roosendaal
bd81fde1ff Packaging variable named 'a' for release 2011-07-01 14:46:14 +00:00
Campbell Barton
7f1fe0fdc2 fix for own mistake with key shortcuts r37850 2011-06-30 15:43:38 +00:00
Sergey Sharybin
85dc00e254 Fix for undefined "index" in key.c.
Probably forgotten to be remaned to defgrp_index after
recent commit here.
2011-06-30 07:35:41 +00:00
Campbell Barton
5c3e73fd56 replace inline loops for get_weights_array with calls to defvert_find_weight() 2011-06-30 03:04:39 +00:00
Joshua Leung
2f10ded896 Compiler warning fixes 2011-06-29 05:07:12 +00:00
Joshua Leung
2f60a5030f Actions can now be made single-user from the Outliner
* Use the same method as from unlinking actions to do this.
* Split off the make single-user code used for the ID-browser into a
function in blenkernel which can be used elsewhere. Getting materials
to also work using this method proved to be a bit too tricky (due to
the whole messy ob vs obdata situation), so I haven't done that.
2011-06-29 04:34:20 +00:00
Campbell Barton
ae49f6deb0 fix for a leak in sound_read_sound_buffer(), used when drawing the sequencer waveform. 2011-06-27 05:03:58 +00:00
Campbell Barton
308cd73d8b scenes now adjust brush usercounts on copying and freeing, pointed out by Jason Wilkins 2011-06-27 04:05:19 +00:00
Ton Roosendaal
1186bdfc08 Putting back blender.org and release number in info header.
Worked always great for tutorials in past, to check what's been used.
2011-06-26 17:01:10 +00:00
Campbell Barton
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
Campbell Barton
ebff5d5fb2 free_bvhtree_from_mesh was incorrectly useing sizeof() when clearing memory. 2011-06-24 05:34:03 +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
Joerg Mueller
413bc87e4f Merge with trunk r37757. 2011-06-23 17:30:56 +00:00
Campbell Barton
99253abef8 allow building with ffmpeg but not aud 2011-06-23 16:10:48 +00:00
Campbell Barton
bb3742fe91 correction to recent commit & made ffmpeg includes only add when enabled. 2011-06-23 15:58:41 +00:00
Campbell Barton
2023db70a8 cmake option to build without an audio library. 2011-06-23 09:27:56 +00:00
Joerg Mueller
cc246eaca7 3D Audio GSoC:
- Fixes for MSVC compiling.
- Fix for ffmpeg audio export with timebase, which fixes vorbis encoding (the only codec using this).
2011-06-23 07:16:06 +00:00
Joerg Mueller
11c0ee5c76 Merged with trunk r37717. 2011-06-21 21:10:36 +00:00
Joerg Mueller
2d3d025e8c 3D Audio GSoC:
- Sequencer dynamics: Now it's possible to change the output channels and the resampling quality also increased (previously maximum quality was 44,1 kHz)
- Changed two buffers to use ffmpeg allocation, not sure if that helps somehow.
2011-06-21 20:39:41 +00:00
Joerg Mueller
c89b4e4b66 3D Audio GSoC:
- Implemented a nice rechanneling solution with unofficial speaker arrangement standards similar to what OpenAL soft has
- Renamend AUD_Channel in the C API to AUD_Handle
- Removed the unlogical 7.2 speaker configuration, that's a hardware only config
2011-06-21 20:24:40 +00:00
Joerg Mueller
044887b5a4 3D Audio GSoC:
- Created Handle classes
- Changed Reference counting completely
- Fixing some streaming bugs
- Completely disabled OpenAL Buffered Factories (they were unused anyway)
2011-06-21 20:21:43 +00:00
Joerg Mueller
7ba4362c72 3D Audio GSoC:
Memory bug fix.
2011-06-21 20:14:07 +00:00
Ton Roosendaal
20e273a695 Upping the release number to 2.58 2011-06-21 16:38:28 +00:00
Joerg Mueller
207911bdb3 Merge with trunk r37677 2011-06-20 22:55:18 +00:00
Dalai Felinto
768184753a fix for build with cmake (patch by Joerg Mueller) 2011-06-20 22:44:35 +00:00
Campbell Barton
c849a938a0 fix for crash drawing zero length motion path and a leak with zero length paths. 2011-06-20 17:50:59 +00:00
Campbell Barton
8eb375048e removing python includes for blenkernel since pynodes are commented. 2011-06-19 09:32:37 +00:00
Campbell Barton
968b2a8afb rename cmake include/libraries to conform with suggested cmake names 2011-06-18 14:12:54 +00:00
Campbell Barton
f227c4a064 fix [#27675] Bones shift out of place when leaving edit mode
- float precision issue, details commented in the source.
2011-06-16 07:59:22 +00:00
Joshua Leung
cfcc4b4fcd == Simple Title Cards for Sequencer ==
This commit adds an experimental effect strip to the sequencer: "Title
Card".

This is useful for adding simple one-line text section headers or
"title cards" (i.e. title + author/contact details) to video clips,
which is often seen in demo videos accompanying papers and/or
animation tests.

See http://aligorith.blogspot.com/2011/06/gsoc11-simple-title-
cards.html for some more details on usage.

Code notes:
- There are a few things I've done here which will probably need
cleaning up. For instance, the hacks to get threadsafe fonts for
rendering, and also the way I've tried to piggyback the backdrop
drawing on top of the Solid Colour strips (this method was used to
keep changes here minimal, but is quite fragile if things change).
2011-06-16 02:46:38 +00:00
Campbell Barton
08c155845d remove unused arguments 2011-06-15 14:06:25 +00:00
Brecht Van Lommel
aaf7dae5f1 Code cleanup: remove unused shaded draw mode code. 2011-06-15 10:17:06 +00:00
Brecht Van Lommel
5e41807135 Fix #27654: vertex parenting not working with constructive modifiers.
Vertex parents were not requesting the original index layer, now do this as
part of depsgraph building, and make constraints with vertex groups use the
same system. Fix is based on patch by Campbell, but with some changes.
2011-06-15 09:45:26 +00:00
Joerg Mueller
8ff0c2e107 Merge with trunk r37475. 2011-06-14 12:06:21 +00:00
Joshua Leung
7272bb643c Bugfix: Distance DVar doesn't work with new Local Space
Fixed references in UI to the old property, and adapted the backend
code to work for the new options too.
2011-06-14 11:01:36 +00:00
Campbell Barton
c0dc197257 edit DAG defines to make it easier to add more & modify. 2011-06-14 04:05:58 +00:00
Dalai Felinto
a2dda7c74d BGE Patch: [#27425] Allow to change the damping of the camera actuator
##########
original name: "Allow to change the strenght of the "go behind" constraint of the camera actuator"

The camera actuator is an actuator that drive the camera to follow an object, with a set of constraint.
Currently, when the object followed rotate on himself (like a person, or an helicopter), the camera is really slow to go behind (at least 10 seconds).

This patch gives the UI to tweak the strenght of the 'go behind'[named damping] constraint.
###########

epydocs (rst) updated too
2011-06-13 17:08:33 +00:00