Commit Graph

562 Commits

Author SHA1 Message Date
9659d47d8b Fix for [#23642] Particle system "Lifetime" setting does not animate 2010-09-03 06:12:40 +00:00
f611fa80af Fix for [#23298] Kill particle breaks when baking simulation
* Cached particle die times are now read from cached data
2010-09-02 10:26:19 +00:00
35535c2cb9 Fix for [#23136] Particle display percentage "forgotten" after render
* The actual problem was that the total amount of particles was rendered at all, since only the displayed percentage was calculated correctly.
* New behavior is that before baking (baking is always done for full % of particles) the display % is used for rendering too for dynamic particles.
* Also added a warning below the display % slider to inform about the situation.
2010-09-02 06:58:54 +00:00
e50bdef683 Fix for [#23596] Particle Harmonics cache problem
* Non-dynamic particles weren't reset properly because they don't use pointcache
2010-09-01 09:47:19 +00:00
728b713d86 use more BLI math functions. 2010-08-15 15:14:08 +00:00
0990e3a9a6 Fix #23003: setting particle number to 0 was not working correct,
committing patch #23119 by Jeroen Bakker to fix this, thanks!
2010-08-04 16:14:03 +00:00
708ef64663 include cleanup, no functional changes
- removed DNA_brush_types.h from DNA_scene_types.h (and some other similar cases)
- removed DNA_wave_types.h (never used)
- removed Main.wave
2010-08-04 04:01:27 +00:00
8eb31b6bcb Fix for [#22073] Particle Emit From Volume Button No Different Than Emit From Faces Button 2010-07-26 10:31:51 +00:00
6ec87e6095 Fix for [#22128] particle sizes and physics
* size wasn't updated at all for particles with keyed or no physics
2010-07-25 14:40:18 +00:00
21cb1f82db Revert part of commit 29079, cleanup of particle path drawing logic
This commit and other commits attempting to fix it broke various things. The
main thing that changed was that instead of computing children/paths in
advance as part of particle_system_update, this was moved to do it just before
drawing or rendering. I've changed back that behavior and tried to keep the
other fixes in the commit.

When the new particle system was just committed, it also worked this way but
gave various problems, and I had to remove that behavior to get things working
stable. Basically it meant that you could get have a path cache that was
outdated in various situations, and it doesn't fit well with dependency graph
evaluation order.

This fixes:
#22823: Children Particle Rendering is broken
#22733: Particle objects not displayed
#22888: SigSegV when rending hair particles
#22820: Another SigSegV when undo adding hairs in particel edit mode
Some particle setups in dupligroups.

The three bugs that the original commit fixed are now also still working in
my tests:
#21316: Hair weight drawing is wrong
#21923: Consistent Crash When Rendering Particle Scene.
#21950: Path rendering option for particles causes crash
2010-07-17 17:07:50 +00:00
e37cbe9461 Bugfix [#22811] Dupli-Instancing for particles broken.
commit r29079 removed 2 lines that are needed for instancing particles.
2010-07-10 18:11:01 +00:00
faf1c9a4bb Bugfix #22685: Screen update slow, animation player ALT-A, files created with 2.4x
Modifiers were being mistakenly recalculated at every frame as long as the object had animation, slowing things down due to incorrect depsgraph recalc tags.

Renamed OB_RECALC -> OB_RECALC_ALL to reduce future confusion. During this process, I noticed a few dubious usages of OB_RECALC, so it's best to use this commit as a guide of places to check on. Apart from the place responsible for this bug, I haven't changed any OB_RECALC -> OB_RECALC_OB/DATA in case that introduces more unforseen bugs now, making it more difficult to track the problems later (rename + value change can be confusing to identify the genuine typos).
2010-07-05 03:55:28 +00:00
03fa4bb999 Partial cleanup of timing system, with some guidance from Joshua:
* Fractional frames support has been changed to use a new var, scene->r.subframe. 
This is a 0.0-1.0 float representing a subframe interval, used in generating a final float 
frame number to evaluate animation system etc.
* Changed frame_to_float() and some instances of bsystem_time() into a convenience function:
float BKE_curframe(scene) which retrieves the floating point current frame, after subframe
and frame length corrections.
* Removed blur_offs and field_offs globals. These are now stored in render, used to 
generate a scene->r.subframe before render database processing.
2010-06-27 05:39:55 +00:00
e4c9381f14 Fix for [#22479] Hair is left our when moving emitter unless Hair Dynamics is set on 2010-06-18 11:34:45 +00:00
f8ecc3fd2f Some cleanup of particle path drawing logic:
* Path drawing now works for non hair particles.
* Should fix the following bugs too:
  [#21316] Hair weight drawing is wrong
  [#21923] Consistent Crash When Rendering Particle Scene.
  [#21950] Path rendering option for particles causes crash
2010-05-30 14:53:26 +00:00
0790df09b7 fix for hair distrobution changing when rendered with a different number of threads (manifested flickering hair back from renderfarm) 2010-05-14 18:09:59 +00:00
f7717b2e80 option to use curve point weights to influence particle effectors. 2010-04-21 11:59:47 +00:00
392e1da179 bugfix and cleanup
- BGE Shader.setSampler(name, index): index range check was wrong.
- Compositor check for an invalid channel was incorrect.
- getting the center of selected verts used an uninitalized z axis.
- do_init_render_material() used && rather then & when testing for MA_TRANSP.
- weight paint activate flipped bone used && rather then & for flag checking.
2010-04-17 15:47:00 +00:00
919565f196 Subframe calculations for particles, original patch by Raul Fernandez Hernandez
* Increasing subframe count increases stability for SPH fluid and Newtonian particles
* Also small tweaks into physics ui panel to better fit new subframes value
* This commit also fixes the moving fluid emitter problem as described by Raul in the mailinglist
2010-04-12 17:34:06 +00:00
12f2a75294 Fix for [#21928] Can't assign hair 2010-04-06 08:23:28 +00:00
8b7d1775c3 Fix for [#21908] SPH fluids - crash when editing while playing 2010-04-05 09:46:01 +00:00
c5871b8750 Fluid physics for particles by Raul Fernandez Hernandez (Farsthary) and Stephen Swhitehorn:
This patch add SPH (Smoothed Particle Hydrodynamics)fluid dynamics to the
blender particle system. SPH is an boundless Lagrangian interpolation
technique to solve the fluid motion equations.
 
From liquids to sand, goo and gases could be simulated using the particle
system.
 
It features internal viscosity, a double density relaxation that accounts
for surface tension effects, static internal springs for plastic fluids,
and buoyancy for gases.

---------------------------------------

This is a commit of the core fluid physics. Raul will work on proper
documentation soon and more features such as surface extraction from
the particle point cloud and increasing stability by sub-frame calculations
later.
2010-04-04 12:29:06 +00:00
666cca69e9 Cloth simulation can now use a group to specify which objects
to collide with, in addition to the effectors group.
(commit 27746 by Brecht from render25 branch)
2010-03-26 10:52:55 +00:00
1e9bf0cfdb spaces -> tabs, (4 spaces == 1 tab, only for white space preceding text) 2010-03-22 09:30:00 +00:00
df7b696b73 Big cleanup of particle system core, also some minor pointcache cleanup. Shouldn't contain any functional changes. 2010-03-21 20:36:06 +00:00
54b4266bef Fix for [#21411] Particles jitter when resting on a collision object
* Particle now take particle acceleration during collisions into account.
2010-03-10 03:41:41 +00:00
1708ac0723 rename some functions to use easier to understand names.
'BLI_makestringcode' --> 'BLI_path_rel'
'BLI_convertstringcwd' --> 'BLI_path_cwd'
'BLI_convertstringframe' --> 'BLI_path_frame'
'BLI_convertstringframe_range' --> 'BLI_path_frame_range'
'BLI_make_cwdpath' --> 'BLI_path_cwd'
2010-03-09 17:36:23 +00:00
9352c9f0c1 use negate_v3 rather then multiplying a vector by -1.0 (no functional changes) 2010-02-26 09:02:52 +00:00
88d6250005 Fix for [#20647] Children from particles on a subsurf mesh don't render correct 2010-02-25 01:57:09 +00:00
8b9e0e941c Particles with "no physics" didn't stick to the emitter like they were supposed to. 2010-02-25 00:03:49 +00:00
03590eb8a9 allow cloth sim for linked duplicates, not many people use this but we need for using hair on linked characters, if there are bugs with this we'll need to fix so enabling for now with comments that its experemental. 2010-02-24 15:35:15 +00:00
32aea49b6d Fix #20171: properties of hair are not animateable. 2010-02-14 14:37:26 +00:00
be575aa3a0 Fix #20282: particle normal force can be animated but not driven. 2010-02-14 14:18:23 +00:00
081c1205a3 correct fsf address 2010-02-12 13:34:04 +00:00
820517ba91 Fix semi-exit of particle edit mode after adding/removing hairs, when
child particles were enabled, should only free edit in case the parent
particle amount changes.
2010-02-02 18:54:23 +00:00
08ee31990e missed these last commit 2010-01-30 22:50:32 +00:00
cbb23d96bb Added simplification back for quicker preview renders with less subdivision
levels, child particles, and shadow/SSS/AO quality.. Now also works on what
is displayed in the 3d view instead of only rendering, see panel in the scene
properties.

Most file changes were to make scene available in the isDisabled modifier
callback function.
2010-01-25 11:39:56 +00:00
d99d68684b only reallocate memory for child particles if the size changes. 2010-01-20 11:32:11 +00:00
c1f2fd0a46 particle weight brush back (mostly the same as in 2.4x), needed to control long hairs movement. 2010-01-14 08:53:10 +00:00
c6e40798fb Stickness factor for particle collisions, patch submitted by Raul Fernandez Hernandez (farsthary). 2010-01-03 14:51:34 +00:00
74829be79a Fix for [#20430] Boids options for Flying and climbing do not work
* Boids didn't yet use global gravity
2009-12-30 15:58:59 +00:00
20ab9a4d9b Particles bug fix: Particle birth location between frames weren't calculated correctly for moving emitters as the functionality of where_is_object_time has changed a bit in the new anim system. 2009-12-26 15:59:07 +00:00
7a19832a78 Fix for [#20294] Switching to particle mode after changing number of hair particles causes blender to crash.
* Particle edit mode wasn't freed when the particle amount was changed.
2009-12-26 00:17:54 +00:00
fc066a6a5d Fix for [#20458] Segmentation fault when trying to enable Hair dynamics
* The hair mesh vertex index was stored as a short, but vertex counts can easily go higher than what fits in a short so changed this to an int.
* Also removed particle life looping, which didn't work correctly anyways. Similar functionality will become available when I get to recoding reactor particles into a better system.
2009-12-25 23:51:29 +00:00
82ddfbf99f Sculpt Branch:
svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r24889:25180
2009-12-07 19:22:48 +00:00
4a23c3f9e1 Particles: child editing bugfixes
* Make partial update work again for faster editing.
* Draw parents over children again, nicer for editing.
* Fix crash with remove tools & showing child particles.
* Fix children not disappearing always when setting to None.
* Fix wrong normal for last point in child path.
* Fix a python error in the hair dynamics panel.
2009-12-07 17:55:58 +00:00
47b457f19e Bug fix: Verlet integration didn't work properly with moving particle emitters.
Thanks for mcreamsurfer for reporting and Farsthary for the patch!
2009-12-02 20:53:28 +00:00
323aa65671 Verlet integration method for particles (patch provided by farsthary). 2009-11-25 17:46:10 +00:00
a1bf207be3 Sculpt: Subsurf
* Now uses the CCG DerivedMesh also in object mode, used to be edit mode only.
* Create CD_ORIGINDEX layer on demand, to save memory.
* Removed ss_to_cdderivedmesh function, and instead create ccgdm and then
  convert that to cddm, to avoid code duplication.
* Added and implement DerivedMesh interface functions to obtain face grids.
* Store edge/face flags more memory efficient.
* Export CCGDerivedMesh struct in BKE_subsurf.h
2009-11-25 13:11:44 +00:00
37e4a311b0 Math Lib
* Convert all code to use new functions.
* Branch maintainers may want to skip this commit, and run this
  conversion script instead, if they use a lot of math functions
  in new code:
  http://www.pasteall.org/9052/python
2009-11-10 20:43:45 +00:00