Commit Graph

270 Commits

Author SHA1 Message Date
902b239aa8 no functional changes: SETLOOPER macro assumed a scene was defined called 'sce' used to loop over, now make this an argument, helps to make it clear what's going on. 2010-12-17 15:37:59 +00:00
6b2b56c35e Fix for [#25218] No smoke is emitted when particle system starts and ends on same frame
* Depsgraph wasn't updated properly for smoke flow collision object dependencies.
* Smoke also wasn't properly using the actual emission frame of the flow particles.
* There was a lot of bloated logic in some parts of particle code so this fix turned into a small scale cleanup operation.
** As a result particle updating and cache usage should be a bit more stable too.
2010-12-15 17:05:34 +00:00
40af167b09 Bug fix: normal (from particles) child particles didn't use the rough parameters properly
* Also child particles didn't do particle trail properly.
2010-12-08 11:02:56 +00:00
1a8665ac45 Fix for [#25079] Duplicating object with particles system on it make Blender crashs
* pointcache->cached_frames wasn't set to NULL when copying pointcaches
* also set pointcache->edit to null just in case
2010-12-07 22:17:58 +00:00
b110c7c8f2 Dependency graph: changed DAG_id_flush_update to DAG_id_tag_update. Now it
only tags the ID and does the actual flush/update delayed, before the next
redraw. For objects the update was already delayed, just flushing wasn't
yet.

This should help performance in python and animation editors, by making 
calls to RNA property update quicker. Still need to add calls in a few
places where this was previously avoided due to bad performance.
2010-12-05 18:59:23 +00:00
263830f000 Enabled GCC -Wwrite-strings warning for CMake and replaced many 'char's for 'const char's,.
Only one functional change where Transform orientations passed "" to BIF_createTransformOrientation() which could then have the value written into.
2010-12-03 17:05:21 +00:00
b45c3363fd fix for some pedantic warnings. 2010-12-03 01:52:28 +00:00
ad0dd98f26 fix for some mistakes in recent commit. 2010-12-01 02:40:13 +00:00
17cd5811e7 Smoke now uses only one point cache where both normal and high resolution smoke are stored together:
* Separate caches were causing quite a lot of problems both in principle and practice.
* For example it doesn't really make sense to have different frame ranges for normal and high resolution smoke, but this was fully possible before.
* Also to fully bake the smoke you had to do a "Bake All Dynamics", which completely defeats the whole point of the feature!
* As a result of this change the smoke cache usage is much much simpler and less error prone.
* This is quite a big change, but hopefully there should be less rather than more problems as a result :)

Some other related changes:
* Changing the cache name now works for disk caches properly too, it now just renames the cache files so should be faster too!
* Smoke is now always forced to disk cache with step 1 on file load as there were some strange cases where smoke was trying to use memory cache.
* Disabled smoke debug prints from console.
* Disabled changing smoke parameters when smoke is baked.

Note to users: The unfortunate side effect of this is that old high resolution simulations have to be baked again, but in return you get much better and more logical functionality. Sorry none the less!
2010-11-30 21:31:18 +00:00
22b3f2228f Possible fix for the issue that came up in [#24890] Vector Blur node is Buggy
* Apparently some compilers don't respect proper operator precedence, so added some parentheses around to make inline conditionals unambiguous.
2010-11-25 11:38:55 +00:00
f15187cfcd Fix for [#24597] Option External in Smoke cache affects settings of start and end frame of simulation
* Don't change anything in the pointcache unless a valid external cache is found.
2010-11-08 11:19:53 +00:00
8bbf27dfbd Temporary fix for "freezing when pointcache is baked":
* WM_timecursor is broken somehow, so pointcache baking makes the cursor disappear.
* For user this seems like blender has frozen although it's just a matter of no progress indication.
* This fix just sets the default "busy" cursor for the whole duration of baking and reports progress in the console.
* If there's and easy fix for this then it should probably be done straight away, but I want to re-implement baking using the job system soon anyways, so a proper fix for this is not strictly necessary.
2010-11-04 20:17:38 +00:00
fe8d5b81b0 use c90 compatible static initializers. 2010-11-03 06:31:53 +00:00
130088300b Fix for [#24501] Apeend object with cloth sim from another file crash. 2010-11-02 15:21:43 +00:00
4d37cf90b9 remove G.sce, use G.main->name instead.
Both stored the filename of the blend file, but G.sce stored the last opened file.
This will make blender act differently in some cases since a relative path to the last opened file will no longer resolve (which is correct IMHO since that file isnt open and the path might not even be valid anymore).

Tested linking with durian files and rendering to relative paths when no files is loaded however we may need to have some operators give an error if they are used on the default startup.blend.
2010-10-18 06:41:16 +00:00
8268a4be71 most unused arg warnings corrected.
- removed deprecated bitmap arg from IMB_allocImBuf (plugins will need updating).
- mostly tagged UNUSED() since some of these functions look like they may need to have the arguments used later.
2010-10-16 14:32:17 +00:00
d3bf6b7224 Fix for [#24237] Hair dynamics with zero particles generates a segmentation fault 2010-10-14 09:01:03 +00:00
8a4fe62843 misc fixes found with clang's static checker. 2010-10-07 10:04:07 +00:00
20d0236f10 Fix for [#24134] pointcache memory error (crash) 2010-10-06 07:57:55 +00:00
636e555ec2 Fix for [#24118] Hair particles can not be edited
* Own mistake from a previous fix.
2010-10-04 08:48:50 +00:00
30bd26d435 [#24028] Minor fixes to BLI_math_vector
+ minor warning fixes.
2010-09-28 11:48:13 +00:00
92fd0680cb Fix for [#23732] Smoke / load external cache doesn't work 2010-09-28 10:04:41 +00:00
8d50b283cb Fix for own recent commit 32147
* Pointcache wasn't checked to be valid before allocating the cached frames array
2010-09-28 09:27:35 +00:00
12be522cbe Fix for [#24031] Baked Physics with Phsics set to NO can't be freed
* Should fix the cause ("no physics" gets baked) and old files that are effected (ui allows freeing if cache isn't really used)
2010-09-28 08:47:59 +00:00
afa4b855ca Fixed: Showing pointcached frames in the timeline was terribly slow when using disk cache.
* The existence of cached frames was checked each frame causing hundreds of disk operations per frame update.
* Pointcache now keeps an updated array of the cached frames for fast "frame exists in cache" queries.
* This fix also speeds up some other pointcache operations nicely.
2010-09-27 09:58:37 +00:00
baadd70ea1 Fix for [#23794] Particle System + FS Motion Blur corrupts some frames and possibly cache 2010-09-14 12:17:09 +00:00
0738ae7688 2.5: more removal of G.main. 2010-08-13 14:23:44 +00:00
15669532a2 header re-shuffle, some headers contained unneeded refereces to other headers, better include inline with the C files that need them 2010-08-10 05:41:51 +00:00
5fa7d1c1b4 2.5: code changes to reduce the usage of G.main and pass it along
or get it from the context instead.
2010-08-01 12:47:49 +00:00
f24bcc689c bugfix [#22988] Duplicating Lights by Frame Causes Hangup 2010-07-24 02:51:51 +00:00
6b6cdbe322 pointcache support for relative external paths with the useual // prefix as well as library path option. 2010-07-14 07:47:03 +00:00
9cbbc9d3af rename some rna properties filename --> filepath
* filename == "foo.ext"
 * filepath == "/path/to/and/including/foo.ext"

this was alredy followed in some places not not everywhere.
2010-06-02 17:58:28 +00:00
88743740b8 dont use a thread for baking in background mode, its not really any advantage since it starts a single thread that runs a loop. 2010-05-18 14:38:25 +00:00
aaa7c493e4 merge of last commit to trunk 2010-05-11 20:06:20 +00:00
3409eb429e fix for crash reading pointcache, was reading over the buffer size, use lzo1x_decompress_safe rather then lzo1x_decompress 2010-05-11 19:37:17 +00:00
c8a0592288 option to use the linked path or the local path for pointcache.
needed for sintels hair to be baked locally.
2010-05-06 17:12:44 +00:00
23ccac18cd Fix [#22199] Cloth Cache Panel > Disk Cache doesn't work
Condition for this to work (.blend file must be saved) was poorly communicated 
in the UI (printfs are no good for this - ideally should use reports). Tweaked this a bit.
2010-05-03 03:02:27 +00:00
08c3bfdfaf NULL check for pointcache. not sure this should be fixed elsewhere, commented this needs further checking. 2010-04-29 17:57:17 +00:00
33acae1a15 only override start and end frames with particle's if the partices are emitters. Was very confusing for hair baking. 2010-04-22 16:23:44 +00:00
f7717b2e80 option to use curve point weights to influence particle effectors. 2010-04-21 11:59:47 +00:00
7c7d93e664 fix for own mistake, from r27961. 2010-04-15 21:58:49 +00:00
953d938ad1 Testing for the need to quick cache was causing slowdowns on files with many duplis.
* The test is now only done when some object that uses cache has actually changed.
* The added scene->physics_settings->quick_cache_step is only an internal counter, not a user changeable value.
2010-04-13 20:06:55 +00:00
18fb3aa5bf Fix for [#21983] Entering Particle Edit mode crash 2010-04-13 19:44:16 +00:00
d4340289a6 Set Scenes and Physics
- objects in a set scene now are evaluated with the frame from the current scene.
- pointcache now loops over all set scene objects.
2010-04-02 14:57:12 +00:00
515592438f Baking for dupligroup & linked library objects
- library data allows pointcache writing (hard to know how this should work long term so ifdef'd for now)
- changing the frame now updates the dupligroup objects
- BKE_ptcache_ids_from_object(), option to get the id's from duplis

note! scene_update_tagged() is called from the main() loop, and runs BKE_ptcache_quick_cache_all(), this could become a performance issue, especially with duplis, should probably not call BKE_ptcache_quick_cache_all() all the time, even when not playing back animation.
(commits 27856 by Campbell from render25 branch)
2010-03-30 12:23:13 +00:00
386e97f73a Purging compiler warnings 2010-03-26 03:10:58 +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
546ca400d8 removed unused includes, except for physics and particle related files 2010-03-21 13:42:25 +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