Commit Graph

11497 Commits

Author SHA1 Message Date
f2c043082a Recode of the "Set Scene chaining" patch from Nathan.
- code for detecting loops was overly complex, and detected loops wrong
  even (when chains partially overlap it gave error)
- that code could NULLify sets of other scenes than the one you tested
- and that code should be in blenkernel, so it can be called in more
  locations, like fixing potential loops in old files

- the code for looping over the chained scenes was bad too, I created a
  nice #define to keep code readable. (See SETLOOPER in BKE_scene.h)

ALso fixes reports in tracker :)
2006-05-15 10:46:04 +00:00
Alexander Ewering
ab30cf7489 As nobody else ever felt like doing it, and I work too much with official
CVS these days in order not to be terribly annoyed by its absence, here it
is: instinctive-blender's "Recent files list".

It's in the CTRL-O menu. No UI / muscle memory changes -- the first entry is
the same as the only entry that used to be in the former popup.
.
2006-05-14 19:42:48 +00:00
422d2e3a89 === BPY ===
Proper typed return. NULL != 0
2006-05-14 14:14:32 +00:00
eaa12a2e93 Basic support in modifiers_isDeformedByArmature for multiple armatures per mesh- use Selected armature object first, if no armatures are selected then return the last/only found armature. 2006-05-14 12:45:13 +00:00
bee09fc6ce Patch #3994
Added simplified fix as proposed by Stephan Kassemeyer to allow scaled
Armatures to still have a working 'stride bone'. Only works for uniform
scaled armatures though.

In general, for properly working armatures, I'd recommend to never scale
it at all, and certainly not non-uniform scaling. It will give issues with
constraints, IK and drivers all over...
2006-05-14 10:02:24 +00:00
f0a5fe5c76 New Compositer option: "Free Unused". In the Node Editor header.
This will free all Node output buffers, while compositing, when not needed
anymore. Saves a whole lotta memory, and will enable to use many many more
nodes (or high resolution images).
2006-05-12 11:27:01 +00:00
6d935aee42 - New options for mesh voxelization: shell only (also
works for non closed objects), volume ("normal"/old way of
  doing it), and a combination of both:
  http://www10.informatik.uni-erlangen.de/~sinithue/blender/voltcomp_sm.jpg
- Finally included bjornmose MSVC6 fixes
- Added support for animated meshes, e.g. meshes with
  parented skeletons. Is enabled for obstacles with a new button.
  A simple example with Bassam's mancandy can be found here:
  http://www10.informatik.uni-erlangen.de/~sinithue/blender/fluid2_mancandy.mpg
  http://www10.informatik.uni-erlangen.de/~sinithue/blender/fluid2_mancandy.blend
  (Warning - keep meshes as simple as possible, e.g. turn off subsurf
  for baking. Export probably shoulb be further optimized.)
- Changed handling of no/free/part slip obstacles, see:
  http://www10.informatik.uni-erlangen.de/~sinithue/blender/bndtcomp_sm.jpg
- Removed surface particle option for upcoming release,
  needs more testing & tweaking
- Added tracer particles instead (swimming along in the fluid)
- Updated wiki (description of IPOs still missing).
2006-05-11 08:09:02 +00:00
1fc1d769fb -> Fix for Bug #4167
https://projects.blender.org/tracker/?func=detail&aid=4167&group_id=9&atid=125

Stored selections (mselect array in mesh) were not getting freed along with their mesh blocks.
2006-05-10 21:08:38 +00:00
d0acd78ad8 Bugfix #4175
Copying a Mesh did set the "texco mesh" pointer to zero... very weird code
from NaN days, which is a line that should just be removed. :)
2006-05-10 17:22:49 +00:00
12e2f68bff Potential bugfix #4141
The curves tool didn't extend after last point correctly, in linux/windows.
Stupid bug found by Joeedh. thanks!
2006-05-09 20:26:34 +00:00
390380e97b Bugfixes for frame number boost:
- Found several places, where people explicitly casted the frame number
  to short.
- Fixed the crash in BPY_interface by adding an empty line (to make it
  recompile everywhere, make clean doesn't help...)

  For the build system maintainers:

  Problem was: The change in makesdna changed the position of the
  scriptlink structure. BPY_interface.c somehow didn't get recompiled
  (not even after a make clean!!!) which triggered crashes on adding
  scriptlinks.
2006-05-07 08:23:51 +00:00
cb67cba19a Multiple armatures<>mesh objects now work with name flipping.
previously would only work if the armature was the first in the meshes modifier list,
in that case the armature would be name flipped but the mesh would not)
2006-05-04 00:59:02 +00:00
e80099d921 Bugfix for Node editing;
When multiple output nodes exist (Material), the active Output flag could
get copied and wasn't reset properly. Now the depenendency sorting code
ensures only 1 output node is the active output for execution.
2006-05-03 13:20:25 +00:00
35b8dac2ca As mentioned in the pydrivers commit, I had to change the order in
exit_usiblender() to finalize Python before main library data was freed.
This solved a somewhat specific sigsegv with pydrivers, but as Ken
Hughes found out (thanks!) caused one with scripts that called Blender.Exit().

Now running scripts (G.main->script) are freed in BPY_end_python()
itself (so before the rest of the library data is freed), before
Py_Finalize(). Works fine in all my tests so far.

The file script.c should become obsolete with this change (I added a
comment about it there). If all is indeed fine, it will be removed
later.
2006-05-02 02:42:08 +00:00
066a2b2ed2 Small update for pydrivers: force reloading the pydrivers.py Blender
text module when user edits the input text box of any pydriver
(Transform Properties panel, Ipo window).

It's enough to click in and out of a single pydriver's text input box
for the module reloading and also re-evaluation of all pydrivers
available. Maybe this "refreshing" should also be available from a
menu, let's see.

Note for Python fans:

Definitions and redefinitions in a reloaded module are properly handled
in Python, but previously defined data in the module doesn't disappear.
So if you define a function "f" inside a module, import it, then change
the function's name to "g" and reload the module, both "f" and "g" will
be available. This is considered a feature, check reload's documentation:
http://docs.python.org/lib/built-in-funcs.html#l2h-59
2006-04-30 22:10:39 +00:00
89dab4397d Pydrivers: Ipo Drivers controlled by Python expressions
wiki with info: http://mediawiki.blender.org/index.php/BlenderDev/PyDrivers

(there are two sample .blends in the patch tracker entry, last link in
the wiki page)

Notes:

In usiblender.c I just made Python exit before the main library gets
freed. I found a situation with pydrivers where py's gc tried to del
objects on exit and their ID's were not valid anymore (so sigsegv).

Ton needs to check the depsgraph part.

For now pydrivers can reference their own object, something normal
ipodrivers can't. This seems to work fine and is quite useful, but if
tests prove the restriction is necessary, we just need to uncomment a
piece of code in EXPP_interface.c, marked with "XXX".

Thanks Ton for the ipodrivers code and adding the hooks for the py part
and Martin for the "Button Python Evaluation" patch from which I started
this one.

Anyone interested, please check the wiki, the .blends (they have
README's) and tell me about any issue.
2006-04-30 16:22:31 +00:00
b18763a265 make Bullet default physics engine. However, it still loads some default .blend that set's sumo default. todo: find out about this.
commented out some code that makes Blender crashing, after leaving the game engine (armature deletes some pose, which deletes constraints, which are still in the dependency graph. Ask Charlie)
2006-04-27 04:37:20 +00:00
5768e9a9dd Bugfix #3683
When the 'reference shape key' (drawn yellow) was not the first key, the
channels as drawn in IpoWindow didn't match the actual shape keys.
This was caused by an exception in code that skips drawing the reference
shape when 'relative' was used.

Now I've added a rule that the first shape in a list always becomes the
reference, that way you can also edit it. To keep backwards compatibility,
this is only activated on translating the shape key lines.
2006-04-17 17:35:20 +00:00
fa5f95efa5 Fix #4111
Objects with a Pose, but which is not an armature, crashes on duplicating.

Now have to find out how it can happen even... only Armatures uses poses.
2006-04-17 14:26:41 +00:00
1c89ae39cc === Animation ===
Patch #4044 patch to change the step when changing frame with up or down arrow keys.

This adds a per Scene setting to specify the number of frames skipped by the up and down arrow.
This setting can be changed in the Timeline header and in the Anim/Playback section of the Scene settings.

Upon loading a file without that setting or creating a new scene, it is set to 10

Also fixed the Start and End frame buttons in the Scene buttons to do a proper refresh.
2006-04-16 16:50:26 +00:00
f6fb4a30a1 Bugfix #3698
Crash fix for deleting all vertices in a Mesh when this Mesh had a
Vertex parent.
2006-04-11 10:17:15 +00:00
2c42d342d9 Bugfix #3720
Using stride-bone in an NLA, on a path without speed Ipo, didn't correct
the case when an action starts on a non-zero value.
Patch provided by Roland Hess. Thanks!
2006-04-10 10:31:11 +00:00
3be0c804ae Bugfix #3725
When you disable a texture channel using Displacement in a Material, the
initialize code and renderconvert code still though this was active.
2006-04-10 10:14:26 +00:00
5dd21d368f Bugfix #3860
Ipo Driver on a curve-path speed Ipo was not assigned yet to dependency
graph, so it appeared as if it didnt work.
2006-04-09 16:43:03 +00:00
a64c9f7a6a #bugfix #3791
Missing depsgraph update tag in Object made dxf import seem as if it
didn't import anything.
2006-04-09 16:36:19 +00:00
958ab951c6 Hrms... the fix for bug #4010 didn't work as expected.
The issue was that particle emittors were still transformed by the object
matrix itself. That was solved in the previous commit, but there was
still an error in correctly evaluating dependencies for the object...
Current commit uses depsgraph to recalculate all objects that influence
the emittor.

The depsgraph code doesn't like particles much (because it uses baking).
Current construct is still weak, is on the list to solve nice.
2006-04-08 18:13:47 +00:00
db80e251f7 Undo Campbell's last commit that disabled face select mode on fluidsim
meshes, and actually fix the bug that caused the crash. The fluidsim result
doesn't preserve a mapping to the original mesh, so it shouldn't be displayed
in face select mode.
2006-04-07 02:46:20 +00:00
Ken Hughes
dfb545a77c Fix some warning for unsigned vs signed comparisons. 2006-04-03 20:31:10 +00:00
6839ec6640 applied Charlies patch for game engine graphics. display list support, and bumpmapping shader improvements. 2006-04-02 21:04:20 +00:00
1d5cca805b - fix some minor typing/redefinition errors, should
not be misconstrued as "working" by myself
2006-04-02 18:11:02 +00:00
04a7653412 Bugfix #3996
Particles were fully recalculated each time on frame advance, when they
had an animation itself (like Ipo). Was not needed for dynamic particles.
2006-04-02 17:44:14 +00:00
609fe2d575 Fix for #4048
Camera was excluded from depsgraph when not visible in current layer...
resulting in camera animations to not move.

Solved with just an exception, but it certainly is attention point for the
depsgraph cleanup.
2006-04-02 12:08:34 +00:00
546cf1d5ba Bugfix #4051
- particle duplicators should not include parent animation (error in
  duplicator recode of last december)
- added exception for 'died' particles to keep correct orientation

Also in this commit:

- added comment in code to explain why vertexnormals in mesh are equal to
  vertex location when no faces exist
- cleanup of BKE_object.h for functions that don't need export.
2006-04-02 11:48:22 +00:00
f350b18291 - fixed elbeem header include problems 2006-03-29 14:57:14 +00:00
0a63b3c0ca Several minor fixes:
- Added part of Austin's msvc8 fixes (vector::erase function
  was "misused"), hopefully compiles better now.
- Ctrl-b now also bakes a selected fluidsim domain
  similar to the softbodies.
- Added surface smoothing option for domains: default is
  1, higher values result in a smoother surface (and probably
  slightly higher comupation times), while 0 means the surface
  is not modified at all.
- Added BLENDER_ELBEEMBOBJABORT environment variable in readBobj,
  if >0 quits blender when a not yet existing fluidsim
  frame should be loaded. Useful for rendering simulations
  as far as possible from the command line.
- Surface normals pointer is now set to NULL in readfile.c
- Fixed win32 error string handling, now uses a function
  to return the string from the solver.
- Fixed fluidsim particle halo scaling problem.
- Solver update
2006-03-29 07:35:54 +00:00
Ken Hughes
ac31b20448 Move variable declaration to beginning of code block, to avoid compiler
warnings or errors.
2006-03-27 22:20:24 +00:00
abd9113fbf another couple of uninitalized variables get the axe.
This is only to make things predictable until that section of the
code is finished.  Ton said it'd be a good idea to drop in in for now.

Kent
2006-03-27 16:15:44 +00:00
2dce179e9d ==Sequencer==
This patch is mostly a usability patch for the sequencer, mainly written by
Anders Gudmundson and twisted a little bit by me.

- Lock Time to other windows
- Possibility to switch the X-Axis between frames and seconds-display
- IPO-Frame Locking for plugins (T-Key)
- Additional Popup to add HD-Sound and Movie at once
- In Timeline-Window: Sequencer windows only playback
- Make the IPOs a little bit IPO-Frame-Lock friendlier (doesn't jump;
  the frame that is drawn has the right dimension)
- Wheel-Mouse buttons make the sequencer window zoom again.
- The "This is not a sound/movie-file message" now reads "... or
  FFMPEG-support not compiled in!" since I learned some prominent
  people who complained, that hdaudio does not work for them ;-)
- Make SPACEKEY open up the "Add Strip"-Popup on the timeline and start
  playback in the preview window.
2006-03-26 21:36:42 +00:00
915cd5b80b Added python image pack/unpack per image. 2006-03-26 09:25:30 +00:00
578ab76bd4 Bugfix: when compositor reads incomplete renders, when using the new
render option "save result to disk" and ESC from rendering, it crashed...

Note; reading partially saved exr files still crash... but that's an issue
within the openexr lib. I've mailed the openexr dev list for assistance
how to properly close a partial saved tile-file.
2006-03-15 10:44:58 +00:00
6401244afd Crashfix in compositing RenderLayer that doesn't exist... can happen on
appending a scene, which used again another scene to do compomagic with. :)
2006-03-14 20:01:53 +00:00
34a5739a8a Two fixes in renderpipe...
- Renderwin still used a thread-unsafe malloc, in the header text print

- Setting clipping flags in vertices for parts required a mutex lock after
  all... I thought it would go fine, but noticed on renders with small
  amounts of faces that sometimes faces disappear from a render.
  (was doing movie credits, so all faces are visible! Otherwise it would
  have hardly been noticable...)
2006-03-13 11:01:17 +00:00
de0262e4c8 New: Import/Export of Cineon and DPX image files. The first is Kodak's
standard for film scanning, 10 bits/channel and logarithmic. DPX is
derived from Cineon as the ANSI/SMPTE industry standard.
DPX supports 16 bits color/channel, linear as well as logarithmic.

Code has been gratefully copied from CinePaint and was integrated in
Blender by Joe Eagar.

According to CinePaint's dev Robin Rowe the DPX code defaults to log
colorspace. Can't find in the code clues yet how to enable/disable that.
However, tests with write/read of DPX seems to show no visible loss by
log conversion code. Might be because it uses the entire 16 bit range...

CinePaint dpx files have been succesfully imported in a Quantel IQ HD/2K
finishing/grading set without problem, so for now I guess we can
use it! :)

Changes in code: added tests for image magic numbers before entering
the actual reading code. Prevents error prints, and makes it faster too.
(Note; this because Blender doesn't check for extensions, but calls
reading functions on every file until one accepts it. :)
2006-03-12 14:11:23 +00:00
7d5be54fec Fix for bug #3802: Display problems with modifiers and uv face select
The bug reported here was already fixed some weeks ago, but there were
more issues. Modifier display in face select and paint modes was never
properly finished.

This fixes some small drawing update glitches, and only allows modifiers
that preserve a mapping to the original mesh to be applied. Otherwise
selection and painting isn't even possible.
2006-03-11 16:13:10 +00:00
85ac48c782 With the commit last week to have curve bevels nice circular (when no
front/back is selected), the UV coordinates for curves should also be
corrected.
This commit re-uses the same code as for Nurbs, to make sure UV coordinates
wrap around nicely.

BUT! I've noticed that Daniel's commit of august in this code actually
broke this UV correction... in his craze to cleanup old code, he missed
the actual functionality. Meaning that in 2.40 and 2.41, "UV orco" texture
coordinates wrap around ugly in Nurbs Surfaces, something that was fixed
in NaN days.

Got no time for tracker now... but I'm sure it's in there! :)
2006-03-11 12:34:50 +00:00
72d92b6b1a ==compile fix==
ffmpeg compile fix for cygwin by Peter
2006-03-09 20:14:18 +00:00
610a813c0c Bugfix... very ancient one even. When you use multiple screens in a project
with each having different scenes, changing screens didn't call the proper
set_scene() call, which left quite some stuff improperly initialized.

With depsgraph code even causes crashing.
2006-03-09 12:48:13 +00:00
aa31da2abf ==compile fix==
added RE_RenderLayer to stubs.c so we can compile gameengine
2006-03-09 00:34:49 +00:00
973b442075 Compositing goodie: ESC now works to stop, but it will finish the node it
was working on.
2006-03-08 21:12:48 +00:00
5d1f64fc19 Bugfix: Sofbody baking included the 'start frame' for the object in
calculus, causing empty keys in the bake, and crashes.
2006-03-08 17:00:48 +00:00