Commit Graph

1092 Commits

Author SHA1 Message Date
Ton Roosendaal
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
Nils Thuerey
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
Geoffrey Bantle
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
Ton Roosendaal
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
Ton Roosendaal
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
Peter Schlaile
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
Campbell Barton
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
Ton Roosendaal
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
Willian Padovani Germano
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
Willian Padovani Germano
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
Willian Padovani Germano
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
Erwin Coumans
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
Ton Roosendaal
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
Ton Roosendaal
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
Martin Poirier
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
Ton Roosendaal
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
Ton Roosendaal
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
Ton Roosendaal
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
Ton Roosendaal
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
Ton Roosendaal
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
Ton Roosendaal
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
Brecht Van Lommel
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
Erwin Coumans
6839ec6640 applied Charlies patch for game engine graphics. display list support, and bumpmapping shader improvements. 2006-04-02 21:04:20 +00:00
Daniel Dunbar
1d5cca805b - fix some minor typing/redefinition errors, should
not be misconstrued as "working" by myself
2006-04-02 18:11:02 +00:00
Ton Roosendaal
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
Ton Roosendaal
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
Ton Roosendaal
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
Nils Thuerey
f350b18291 - fixed elbeem header include problems 2006-03-29 14:57:14 +00:00
Nils Thuerey
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
Kent Mein
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
Peter Schlaile
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
Campbell Barton
915cd5b80b Added python image pack/unpack per image. 2006-03-26 09:25:30 +00:00
Ton Roosendaal
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
Ton Roosendaal
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
Ton Roosendaal
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
Ton Roosendaal
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
Brecht Van Lommel
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
Ton Roosendaal
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
Tom Musgrove
72d92b6b1a ==compile fix==
ffmpeg compile fix for cygwin by Peter
2006-03-09 20:14:18 +00:00
Ton Roosendaal
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
Tom Musgrove
aa31da2abf ==compile fix==
added RE_RenderLayer to stubs.c so we can compile gameengine
2006-03-09 00:34:49 +00:00
Ton Roosendaal
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
Ton Roosendaal
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
Ton Roosendaal
2858229e9f Compositor now checks for cyclic nodes too, and skips them while executing.
This prevents eternal loops. It prints error message in console.

Note that the Shader nodes dont need this, since they're just executed in
presorted order. The compositing nodes use threading, with a call asking
for the next job... if this includes cyclic nodes, the 'next job' will
always return  NULL.
2006-03-08 13:06:32 +00:00
Ton Roosendaal
d0011f3318 Compositing workflow goodie; each 'render result' node now has a button
option to re-render that specific node. Also works for nodes using other
scenes.
2006-03-07 21:26:37 +00:00
Peter Schlaile
327d413eb3 this patch features several cleanups and bugfixes for the sequencer:
- blur works again (this was a serious bug in gamwarp...)
- seperates all sequence effects into a seperate file with a clean interface
- thereby fixing some obscure segfaults
- seperates the scope views into a seperate file
- adds float support to all effects and scope views
- removes a bad level call to open_plugin_seq
- FFMPEG seeking improved a lot.
- FFMPEG compiles with debian sarge version cleanly
- Makes hdaudio seek and resample code really work
2006-03-07 20:01:12 +00:00
Ton Roosendaal
aa1d8162be Curves with bevel, but without front/back or extrude depth, now render
as a full circle instead of 2 halves.
2006-03-06 21:44:08 +00:00
Ricki Myers
7cf600be30 Adds menu item in text editor under format menu to convert whitespace to
Spaces or to tabs.
Adds function void convert_tabs(struct SpaceText *st, int tab)
int tab is eather 0 or 1; 1 if converting to tabs
I was going to make this auto run when running a script but did not know what that would do to the GE or any thing else.
2006-03-05 19:50:14 +00:00