Commit Graph

25855 Commits

Author SHA1 Message Date
Mitchell Stokes
eb7b1f0c58 This allows the game engine to build again, but I'm not sure if it's the best approach. Aligorith: feel free to revert this if there is a better solution. 2011-07-28 15:07:32 +00:00
Joerg Mueller
bd6ca0570e 3D Audio GSoC:
Implemented basic audio animation.

* AnimatableProperty: Propper cache writing and spline interpolation for reading (the solution for stair steps in audio animation)
* Animatable properties so far are: volume, pitch, panning
* Users note: Changing the pitch of a sound results in wrong seeking, due to the resulting playback length difference.
* Users note: Panning only works for mono sources, values are in the range [-2..2], this basically controls the angle of the sound, 0 is front, -1 left, 1 right and 2 and -2 are back. Typical stereo panning only supports [-1..1].
* Disabled animation of audio related ffmpeg output parameters.
* Scene Audio Panel: 3D Listener settings also for Renderer, new Volume property (animatable!), Update/Bake buttons for animation problems, moved sampling rate and channel count here
2011-07-28 13:58:59 +00:00
Sukhitha Prabhath Jayathilake
90b64737f1 Material Diffuse Color animation COLLADA import. 2011-07-27 19:08:18 +00:00
Sukhitha Prabhath Jayathilake
4a32691416 Material diffuse color animation COLLADA export. 2011-07-27 18:38:44 +00:00
Sukhitha Prabhath Jayathilake
41216990dc Material Specular Color Animation import. 2011-07-27 17:43:32 +00:00
Sukhitha Prabhath Jayathilake
5fc54a7ccc Material Effect Specular color animation Export. 2011-07-27 16:29:28 +00:00
Sukhitha Prabhath Jayathilake
40e36975ef Blender profile leaf bone tip import. 2011-07-26 18:28:07 +00:00
Joerg Mueller
9077b8bffc 3D Audio GSoC:
Main: Complete rewrite of the sequencer related audio code to support 3D Audio objects later and especially adressing the animation system problems (see mailing list if interested).
Note: Animation is not working yet, so with this commit volume animation doesn't work anymore, that's the next step.

Minor things:
* Changed AUD_Reference behaviour a little to be more usage safe.
* Fixed bug in AUD_I3DHandle: Missing virtual destructor
* Fixed enmus in AUD_Space.h
* Fixed a warning in rna_scene.c
* Removed an unneeded call in rna_sound.c
2011-07-26 13:56:31 +00:00
Joshua Leung
c0373fb7ea startup.blend Theming/AnimEditor Defaults Tweaks
- Default size of Graph Editor handle vertices is now 4 (up from 3).
This "small" change seems to be enough to make a substantial
difference when it comes to actually differentiating between these

- "Only Selected" DopeSheet filter is enabled for new Graph Editor
instances by default. It helps hone in on the F-Curves of the data
most animators hope to just be refining the motion for (i.e. the
selected stuff)

- "Only Selected Keyframe Handles" is now enabled, to reduce clutter
from handles of nearby keys getting in the way.
2011-07-26 13:49:39 +00:00
Joshua Leung
785e634c23 F-Curve Drawing - Smoother curves
Bezier curves are now drawn smoother (i.e. less segmented), especially
for curve segments where there is a very large vertical displacement
over a short period of time (i.e. 120 degrees rotation over 1 frame)
and/or often when zoomed in a bit too.

- Made the resolution calculation take the vertical distance into
account too, instead of just the horizontal distance.
- Segment multiplier changed from 3 to 5, as this seems to give better
zoomed-in performance.
2011-07-26 13:09:10 +00:00
Joshua Leung
77e906cbd4 Experimental drawing tweak: make active F-Curve get drawn with thicker
line width

This should help make it stand out better from the background, though
it has the risk that values may not be so clearly picked up visually
2011-07-26 12:49:43 +00:00
Mitchell Stokes
1f65b3b1a8 BGE Animations: Adding a new choice for vertex deformation for armatures, which can be found in the Armature's Skeleton panel by the Deform options. Before only Blender's armature_deform_verts() was used. Now users can choose a vertex deformation function that is optimized for the BGE. At the moment it is mostly a copy of armature_deform_verts() with various chunks of code removed, and the BLI_math code was replaced with Eigen2. In my test scene, the new function offered about a 40% improvement over armature_deform_verts() (17~19ms rasterizer to 11~12ms). The only current limitation that I'm aware of if that B-Bone segments are not supported in the BGE version, and I will probably leave it out. I would like to also limit the BGE version to 4 weights to make things easier for a GPU version, but this may just make things slower (sorting weights to find the top 4). 2011-07-26 06:10:05 +00:00
Sukhitha Prabhath Jayathilake
1e0e0ff5c4 Blender profile for leaf_bone tip. (untested). 2011-07-24 20:27:27 +00:00
Joshua Leung
6a392e8cb5 == RNA Property Updates get called by Animation System now ==
This fixes bug #26764 and several others like it, where modifier
properties (and others, but most visibly modifiers) would not do
anything when animated or driven, as modifier properties require the
RNA update calls to tag the modifiers to get recalculated.

While just adding a call to RNA_property_update() could have gotten
this working (as per the Campbell's patch attached in the report, and
also my own attempt #25881). However, on production rigs, the
performance cost of this is untenatable (on my own tests, without
these updates, I was getting ~5fps on such a rig, but only 0.9fps or
possibly even worse with the updates added).

Hence, this commit adds a property-update caching system to the RNA
level, which aims to reduce to the number of times that the update
functions end up needing to get called.

While this is much faster than without the caching, I also added an
optimisation for pose bones (which are numerous in production rigs) so
that their property updates are skipped, since they are useless to the
animsys (they only tag the depsgraph for updating). This gets things
moving at a more acceptable framerate.
2011-07-24 04:34:46 +00:00
Sukhitha Prabhath Jayathilake
c22f26d203 Material Hardness Animation Import Complete. 2011-07-23 20:49:26 +00:00
Joerg Mueller
682cc63161 Merging with trunk up to r38631. 2011-07-23 16:34:30 +00:00
Joerg Mueller
1193be6eaa 3D Audio GSoC:
* Reviewed and improved the linear resampler. Now it should work pretty good also for special cases that caused errors previously.
* Fixed a crash in the GE when a sound actuator doesn't have a sound assigned.
* Corrected the OpenAL device's threading code. This is a bugfix for #27913, thanks to Juha Mäki-Kanto for helping to resolve this.
2011-07-23 15:59:10 +00:00
Ton Roosendaal
ffc490cbf1 Two fixes in drop-node-on-noodle:
- Intersection code was using undefined vector
  caused wrong lines to be picked
- Code now also copes with hidden sockets. 
  If all fails, is just unhides a good socket.
2011-07-22 16:39:06 +00:00
Ton Roosendaal
eed7702c99 Small fix in drop-node-on-noodle: intersect code only did 3 edges of
node.
2011-07-22 16:02:56 +00:00
Ton Roosendaal
ea90544d65 Need some fun once a while:
On dragging a non-connected node on a noodle, it will insert it.
Functionality tweaks are possible, but it already feels non-intrusive.

Rules:
- Insertion only when a single noodle is intersecting with node.
- Default connects first matching socket type. 
- If no socket match, it connects the first.
2011-07-22 15:28:50 +00:00
Joshua Leung
75029e1119 Bugfix [#27990] Merge Bones freezes Blender
Recoded side-chain reparenting step to fix (as far as I've been able
to tell) infinite looping problems which were a bit intermittent here
using the test file. The fix here involves some tighter checks to
prevent corrupting the parenting of bones in the run of bones being
merged but also of any ancestors of those.
2011-07-22 13:52:31 +00:00
Joshua Leung
1e19f1cde1 Bugfix [#27959] Error on Paste X-Fliped pose
Paste pose no longer just does a blind "replace all properties" on
bones that it pastes on. Instead:
* when properties exist on the target already - only change the
properties in common
* when properties don't already exist - copy all properties
2011-07-22 11:53:20 +00:00
Campbell Barton
382050501d remove duplicate function for printing the current file:line of a python script in the BGE. 2011-07-22 11:21:01 +00:00
Joshua Leung
0adad30e3f Bugfix [#27984] CTRL+T doesn't work in Video Sequencer properly
Time-scale drawing wasn't respecting the time unit setting.

While working on this, I tried to tweak the grid drawing to a more
common setting. It's hardcoded to show lines at every 25 px = once
every 25 frames, which is only really fine when FPS=25. Anyways, this
works fine enough for the sequencer for now in general usage.
2011-07-22 11:20:14 +00:00
Joshua Leung
1ca2a6f24f Split up recalcData() function in transform_generics.c into smaller
functions based on editor types

This could be split up further in future if there's such a need, but
this should already be sufficient. Most notably required since the NLA
recalc stuff was taking quite a few lines within that block
2011-07-22 07:25:52 +00:00
Campbell Barton
0e933d089d fix [#27910] baking ambient occlusion, do not consider closer object for blender 2.58a 2011-07-22 05:33:06 +00:00
Campbell Barton
30da1336a8 patch [#28045] Straighten tool from Simple Todos
from Kyle Mills (khonkhortisan)
2011-07-22 01:21:20 +00:00
Campbell Barton
6040a28f03 missed this file when adding option to disable frameserver 2011-07-22 00:34:03 +00:00
Campbell Barton
03bae345be fix [#28053] New material tooltip 2011-07-22 00:31:24 +00:00
Campbell Barton
58895bee7b fix [#28052] PET: Shift-O cycling skips "random falloff" 2011-07-21 23:36:17 +00:00
Campbell Barton
e6604288c8 cmake - option to disable the frame server 2011-07-21 23:06:51 +00:00
Daniel Salazar
2c798fd86d Adding Shear transform to UV menu and Ctrl Alt Shift S hotkey (same as in 3D View) 2011-07-21 21:34:08 +00:00
Joerg Mueller
4532bd731d Merge with trunk up to r38584. 2011-07-21 21:11:58 +00:00
Sukhitha Prabhath Jayathilake
cf34f7509f 2011-07-21 18:31:01 +00:00
Ton Roosendaal
bbfe3c9c49 Bugfix #28034
Blender render optimizes alpha=0 materials away, unless it has
a number of properties... but there wasn't a check for material
being ray-mirror, it then should be rendered always.
2011-07-21 17:40:20 +00:00
Sergey Sharybin
3e9d1d7683 Corrected View Selected operator for image editor so now it works
fine for images with different X and Y aspect ratio.
2011-07-21 09:50:39 +00:00
Sergey Sharybin
e7669caf5a Fixed bug with multires baking to float buffers.
Was missed a flag to set rect marked as changed.
2011-07-21 08:10:34 +00:00
Campbell Barton
314fdb941e revert recent matrix multiplication patch:
[#28032] Python Mathutils: Matrix Multiplication Error

Since they ended up reversing the order we better keep old code unless its proven to be incorrect.
also change Matrix.__repr__ function args to evaluate correctly (need to be inside a tuple).
2011-07-21 02:00:29 +00:00
Campbell Barton
c608288d76 add tip that duplicator system doesnt support xray / transp object draw options since we keep getting reports about this. 2011-07-21 01:37:15 +00:00
Campbell Barton
98774eba0e fix [#28037] Missing orange selection lines (trivial)
From what I can tell there is no good fix for this bug, calculating the 2d/3d viewborder and then attempting to align them to be pixel perfect fails because of float imprecision.

Added a workaround, so the camera border is always drawn in 2d space,
since this workaround may cause problems later on its kept under the define VIEW3D_CAMERA_BORDER_HACK so we can get old behavior back easily.
2011-07-21 01:30:26 +00:00
Campbell Barton
28780342ed fix/workaround [#28040] float images reduced to 256 levels per channel upon save
Generated images would not be re-generated with a float buffer on load, even when selected on creation.
Now save the float buffer setting as a generated image flag.

This means you can enable before baking to enable baking to a float buffer.
2011-07-21 00:41:00 +00:00
Joshua Leung
74111ac11c Attempted bugfix: don't perform any keyframe remapping stuff if
rendering, to prevent any race condition problems

I've noticed some weird and random crashes recently while rendering,
which I suspect have been arising from having an Action Editor open
while rendering. Previously only the timeline was patched against
these problems, though the issues may be more widespread. Hence,
solving this problem at the root cause instead.
2011-07-21 00:07:07 +00:00
Joshua Leung
2c61949179 venomgfx request: Renaming handle 1/2 to left/right handles for
keyframes

This makes it easier to remember/identify which one you're dealing
with
2011-07-20 12:44:29 +00:00
Campbell Barton
8b5e7f2650 patch [#28032] swapped matrix multiplication order, reverse it back, tested with FBX, BVH import/export which are very sensitive to changes in matrix rotation. 2011-07-20 06:41:51 +00:00
Mitchell Stokes
abb3f8c80b BGE Animations: Fixing a crash with "IPO" animations on an object with modifiers. 2011-07-20 06:20:49 +00:00
Mitchell Stokes
71eda5ca4d BGE Animations: BL_Action::m_action could be garbage, which can lead to odd problems. So, now I make sure it's set to NULL in the constructor. 2011-07-20 06:09:41 +00:00
Campbell Barton
74219d2704 patch [#28031] Minor typo in Blenlib
from Scott Giese (sgiese)
2011-07-20 06:05:47 +00:00
Campbell Barton
0ed523a8dd patch [#28032] Python Mathutils: Matrix Multiplication Error
from Scott Giese (sgiese)
2011-07-20 05:57:38 +00:00
Joshua Leung
69614a972f Add/Clear Fake Users from Outliner by RMB on ID blocks 2011-07-20 01:12:57 +00:00
Joshua Leung
57fe73b3ac View All/Selected tools for NLA Editor 2011-07-20 00:36:28 +00:00