Commit Graph

23849 Commits

Author SHA1 Message Date
Lukas Toenne
803c7fb4d4 Finished the node type definition cleanup started in r34682. All static node types should now use the node_type_* definition helpers to initialize their bNodeType structs. 2011-02-08 09:02:16 +00:00
914e2ee01f problem with blender and python 3.2
- python 3.2 does 'import site' on startup which now tries to parse pyconfig.h which isn't copied. so for now just run without importing 'site', alternative would be to copy the header file for posix systems.
- cache PYTHON_VERSION variable so it can be set to 3.2, needed for copying python installation's other then 3.1.
2011-02-08 06:22:06 +00:00
9d6f9e74d4 Bugfix [#25814] ChildOf constraint: double transformation in object
mode with drivers

ChildOf constraints added using the PoseBone.constraints.new() method
via Python scripts instead of using the operator (this latter method
is still the preferred/recommended method) were not getting some
critical flags set, causing errors arising from space conversions
being performed more than once.
2011-02-08 05:51:20 +00:00
53afd19808 fix [#25975] Quaternion/Vector.negated() isn't available
theres no need for value.negated(), better use -vec / -quat. however -quat didn't exist.
2011-02-08 03:37:49 +00:00
0242a96f3b Change in behavior to shrinkwrap modifier's offset value with negative enabled.
- negative ray casts would invert the offset direction.
  this meant if positive and negative were enabled at once and the mesh was slightly inside & outside the object it wrapped,
  the offset would be applied in opposite directions.
  This way the offset is always along the vertex normal.

- allow negative offset from RNA, could be useful and no benefit to disable.
2011-02-08 02:09:59 +00:00
98268ba40f fix [#25801] Shrinkwrap Offset problems with Project mode.
The positive result from the previous ray-cast is used again, inadvertently negating the offset from the first hit (acts as if no offset is applied).
2011-02-08 01:43:16 +00:00
1befe8ba4a un-initialized flag used with commit r34695. 2011-02-08 00:18:00 +00:00
33265983da fix own error in recent commit [#25970] cannot create scale matrix after mathutils updates 2011-02-08 00:10:30 +00:00
d454d6c6bc Bugfix: Constraint target validation code was broken
While testing Apply Visual transforms last night, I noticed that
setting a constraint to use its owner as its target was allowed and
didn't trigger any warnings. This clearly doesn't do any good and is
different from the old behaviour.
2011-02-07 23:21:28 +00:00
0d8416acc7 minor edits, no functional changes.
- BGE was getting MCol array and not using it.
- use list lookup functions for getting constraint from pose bone.
- use const char * in more places.
2011-02-07 22:48:23 +00:00
16160f5fcc GLSL shader part
bump-mapping update to properly support
multiple textures in different bump-spaces.
2011-02-07 21:57:40 +00:00
a6baee5298 bump-mapping update to properly support
multiple textures in different bump-spaces.

kudos to M.L.Mikkelsen (sparky) for helping with the math! :)
2011-02-07 21:55:54 +00:00
Dalai Felinto
462b5823f4 Logic UI: Game Actuator options renaming
After talking with Ton Roosendaal we agreed on making those changes.
I wonder if we should go for "Start Game" instead of "From File". But Space is not a constraint here so be it.
2011-02-07 18:42:07 +00:00
Dalai Felinto
0a55958196 Logic UI: Armature Actuator + general Captalizing 1st letter of UI text
- Armature Actuator now only shows the "Secondary Target" option when the Bone Constraint supports it (IK only now).
-- that may be overkill I don't know. It shouldn't slow down the UI considerably, so it should be fine. Easy to revert if needed though.

- renaming things such as "Start frame" to "Start Frame"
2011-02-07 18:24:15 +00:00
c8be8a7c6d Bugfix 25965
New "auto render" now prevents calling anim-updates, that's
not needed (and popped back transformed keyed objects).
2011-02-07 18:09:27 +00:00
5c421c328e Todo/feature request
When using masks or other simple 3D elements in composites, doing
a layer re-rendering on a node is a bit clumsy all the time.

This commit does two things to help:
- new hotkey "Z" in node editor automatically finds render layer
  that changed and re-renders it + composites
- option "Auto Render" does same, but then after every transform
  edit in 3D window

The latter is experimental; real & proper system for this requires
full threaded render support (like previews). But it works!

Demo file:
http://download.blender.org/demo/test/auto_composite.blend

Important fix:
After any render, all the render layers were tagged "changed", which
caused any edit to first totally recomposte everthing. Now it only
composites changes.

Implementation notes

- DAG scene flush now sets 'changed' flags in render layer nodes
- Added notifier for 'transform finished' to trigger the update,
  this is temporarily.
2011-02-07 16:41:57 +00:00
bd023c443b remove mat_nr from MVert struct, saves 4 bytes per vertex.
used to be used for halo's
2011-02-07 13:02:44 +00:00
3fab280c61 Argh! This code is haunted... (line 666) compiler here isn't barfing
on these errors tonight :/
2011-02-07 12:37:14 +00:00
926f168e44 AnimSys Todo: Scene/CompoNode Driver Hacks
Drivers for Scene, World, and Compositing Nodes now "work" (well,
sort-of)! Previously they were strictly restricted to object-
accessible data only; now they can function across the board (give or
take some weak spots).

Although there is still no depsgraph support so that these properties
update properly when their source controls are changed (this will
probably require a lot more work), they can still update under other
circumstances (i.e. frame change and/or manual refresh flushing via
mouse movement, etc.)

As the depsgraph tagging support is lacking, these just get always
executed for now, which might potentially be quite sluggish, though it
is hoped that there are so few of these top-level datablocks with
drivers hooked up that this is barely an issue in practice. At least I
haven't noticed any substantial slowdowns for animation playback, so
it should probably be fine.
2011-02-07 12:28:04 +00:00
7710d82007 fix [#25926] lattice + projection on surface snap issue 2011-02-07 12:07:26 +00:00
ea012a3340 Bug fix: adding force fields from the add menu didn't sort the depsgaph, so hair didn't update straight away to force field settings changes. 2011-02-07 11:55:24 +00:00
a399e8c7bb Compiling commit for previous commit... 2011-02-07 11:51:28 +00:00
44fb6bd1fa Hair ui simplification:
* There were a lot of settings in the particle panels that made no sense for simple hair and only cluttered up the ui.
* Now these settings are hidden by default unless "advanced" hair options are shown.
* Without advanced options the particle velocity controls are replaced by a simple "hair length" value, which actually corresponds to the grown hair length in blender units.
* Some hair effector options that are actually very useful were not shown in ui. These are now found in the "field weights" panel.
2011-02-07 11:43:33 +00:00
fd422e58a8 Visual Keying Code Tweaks:
Moving this code to the same method as is used for Apply Visual
Transform (for bones case), which uses standardised decomposition
methods instead of the improvised ones used here before. This was in
an attempt to get IK chains Visual Keyed correctly, though this
doesn't seem to have improved the situation much.

Also, the decompositon for objects here now takes care of euler
rotation modes.
TODO: other rotation modes should get included here too...
2011-02-07 11:38:57 +00:00
cddaa815d6 Fix for [#25955] Hair paths under force field influence look jagged
* Effectors were applied wrong for hair.
2011-02-07 10:54:55 +00:00
1dc11c4fdf Bugfix [#25934] "Apply Visual Transform as Pose" not working?
Simplified the code for Apply Visual Transform as Pose.

This makes it work for IK chains now, since there aren't any
recalculations of the pose involved now, which were contributing to
the pose getting incorrect as the applying process went on, since the
IK chain was getting calculated differently with each successive
change to the chain.
2011-02-07 10:50:35 +00:00
Lukas Toenne
2070356a32 A simplified way of defining bNodeType structs. Instead of doing full struct member initialization for each node, this uses a couple of helper functions now. This will make it easier to change and extend the bNodeSocket interface in the future. Two examples (normal and mapping shader nodes) included, the rest should be converted too. 2011-02-07 09:33:36 +00:00
d272b70ee0 rename ID.update() --> update_tag() since this function only tags for updating and scene.update() executes the update. 2011-02-07 08:13:28 +00:00
ad8c79405a Type checks for internal ID-Property UI min/max/tip & use defines to get values from ID-Props.
Probably wouldn't cause a problem but manually editing these types through python could easily crash blender.

also changed cmake, stub-makefile default build dir to be lower case and leave out architecture string, easier for documentation.
Use ../build/linux/ rather then ../build/Linux_i686/
2011-02-07 05:05:41 +00:00
a018bfba9a comment unused var 2011-02-07 01:45:52 +00:00
a4f0c29a23 PoseLib Bugfix:
When using Pose Lib with a search string, if the search fails after
typing a character and then you try to backspace to get back to the
previous search string, the pose does not refresh until you type in
another valid letter such that the search works again.

Did a logic reshuffled in the get next preview pose function so that
this is dealt with properly
2011-02-07 01:28:47 +00:00
c9acbc6404 - own error with sound unpack operator using NULL pointer
- make stub now creates 'Release' build by default.
2011-02-07 01:13:21 +00:00
55da733eba PoseLib Preview/Browse Bugfixes:
- [#25951] Hardcoded Keys in PoseLib modal operator register twice per
use
Now only the KM_PRESS events are handled. KM_RELEASE events for these
are ignored...

- While checking the above, I also found that the view-manipulation
while previewing functionality was broken. This was one of the
benefits of this UI approach over a fixed screenshot-only listview.
Fixed now :)
2011-02-06 22:20:26 +00:00
c03064b187 Bugfix #25953
Fix in crashing displacement last friday, assumed wrongly that
the old 'new bump' failed for displacement too. It still did
work (somewhat). This restores the situation again.
2011-02-06 18:38:53 +00:00
216f9af08e Two in one:
- Bugfix #25937
  Child-of constraint now behaves like regular parent-child
  relationship when all options are set. This prevents the 
  errors that can happen when decomposing non-uniform matrices.

- Todo item
  The area corner hotspots for splitting/merging were far too
  narrow. Now it uses a circular distance to detect whether
  the hotspot is active. Also cleaned up drawing code for it.
2011-02-06 17:36:42 +00:00
0ea9271f43 Bug fix: Particles in dupligroups were mostly drawn properly in 3d view, but rendering them was a real mess.
* After countless different bugs particles should now render correctly inside dupligroups.
* Only particles with metaball visualization are still problematic, this is mostly due to the ancient metaball code.
* I'll also add a test file for some of the situations, so that hopefully these cases stay fixed :)
2011-02-06 15:50:00 +00:00
d9aa3f66a6 mathutils.Matrix.Scale(factor, size, axis)
- 'axis' arg was not coerced from a tuple like other args now do.
- 'axis' arg was being modified in-place (VERY BAD).
- also made new function matrix_3x3_as_4x4().
2011-02-06 11:17:22 +00:00
1cdab667bc - cmake was missing an inclide (IDE's wouldnt index)
- made doc generation always sumlink newly built docs to static URL. http://www.blender.org/documentation/250PythonDoc/
2011-02-06 10:18:20 +00:00
c82da98f3d bugfix [#25824] Quats + Camera + Fly = Madness
ensure quat, delta rotation is set to a unit quaternion on older files.
2011-02-06 09:01:01 +00:00
6705d5c7e7 SVN maintenance. 2011-02-06 00:49:58 +00:00
2ed0ddef04 todo list item:
3D View:
In quad-view mode, the options to set back/bottom/left views were
blocked. Now they work again.

Note: the oparator polls don't have a check for properties... so it
cannot be finegrained here. Checks are inside code.
2011-02-05 19:07:54 +00:00
00d95fb4bf Another fix for the raytracing commit, forgot that it also included vertex
reordering to be consistent with the rest of the render engine. That means
the self intersection issues with non-planar quads should also be gone now.
2011-02-05 17:54:00 +00:00
6011bac989 Bugfix #25944
Save image (F3) didn't remember the last saved path on 2nd use.
2011-02-05 16:32:56 +00:00
dbce60448f This fixes: [#25608] Video Sequence Editor: problem using cut on a strip with a custom proxy file. 2011-02-05 15:11:29 +00:00
626de1f3a2 Bugfix, own todo
Saving a file for the first time (after opening blender) didn't
use the last directory as saved/loaded from in a previous session.
2011-02-05 15:05:17 +00:00
04299657a7 Raytrace modifications from the Render Branch.
These should not have any effect on render results, except in some cases with
you have overlapping faces, where the noise seems to be slightly reduced.

There are some performance improvements, for simple scenes I wouldn't expect
more than 5-10% to be cut off the render time, for sintel scenes we got about
50% on average, that's with millions of polygons on intel quad cores. This
because memory access / cache misses were the main bottleneck for those scenes,
and the optimizations improve that.

Interal changes:

* Remove RE_raytrace.h, raytracer is now only used by render engine again.
* Split non-public parts rayobject.h into rayobject_internal.h, hopefully
 makes it clearer how the API is used.
* Added rayintersection.h to contain some of the stuff from RE_raytrace.h
* Change Isect.vec/labda to Isect.dir/dist, previously vec was sometimes
  normalized and sometimes not, confusing... now dir is always normalized
  and dist contains the distance.
* Change VECCOPY and similar to BLI_math functions.
* Force inlining of auxiliary functions for ray-triangle/quad intersection,
  helps a few percentages.
* Reorganize svbvh code so all the traversal functions are in one file
* Don't do test for root so that push_childs can be inlined
* Make shadow a template parameter so it doesn't need to be runtime checked
* Optimization in raytree building, was computing bounding boxes more often
  than necessary.
* Leave out logf() factor in SAH, makes tree build quicker with no
  noticeable influence on raytracing on performance?
* Set max childs to 4, simplifies traversal code a bit, but also seems
  to help slightly in general.
* Store child pointers and child bb just as fixed arrays of size 4 in nodes,
  nearly all nodes have this many children, so overall it actually reduces
  memory usage a bit and avoids a pointer indirection.
2011-02-05 13:41:29 +00:00
90cf78eb54 Fix bones moving when changing between editmode and posemode.
Patch #25901 by Tobias Oelgarte.

Bone transformations would be converted back and forth between different
representations when changing modes, which due to numerical errors could
lead to bone transformations slowly changing as you edit the armature.

Now the editmode head, tail and roll values are stored in bones and used
directly when entering edit mode. Head and tail were already there but
now we ensure they are the exact same value, roll was not yet there, so
we have a version patch for it.

The sub version was incremented to 1 for the version patch.
2011-02-05 13:19:14 +00:00
fe99f35210 Renamed texture.c in render module, to prevent debuggers to
complain about the same named file in blenkernel.
2011-02-05 13:10:20 +00:00
df9fade564 Bugfix 25871
Using displacement with new bump caused NaN values or crashes.
Since displace code doesn't provide derivatives, it now falls
back to "old bump" by default.
2011-02-05 13:07:51 +00:00
311f5a8d78 accidentally left scaling code commented out when testing. 2011-02-05 11:46:44 +00:00