December 10, 2013, 11:23 (GMT) |
Temporary remove derivedRender Couldn't say the idea was wrong, but some nasty bugs were discovered with the approach and to make life simpler for now it's easier to do hacks needed for boolean modifier from the render pipeline by tagging needed operands for the update. |
December 10, 2013, 10:28 (GMT) |
Update metaballs in a single thread Mballs evaluation uses BKE_scene_base_iter_next which calls duplilist for all objects in the scene. This leads to conflict accessing and writing same data from multiple threads. Ideally Mballs shouldn't do such an iteration and use DAG queries instead. For the time being we've got new DAG let's keep it simple and update mballs in a ingle thread. |
December 10, 2013, 08:37 (GMT) |
Code cleanup - Add some additional cases to mallocn_intern to cover FreeBSD and add missing include for OSX. - Move DAG_init/DAG_exit functions to the top, they're kind of global and it's not so much logical to keep them under "Threaded Update" comment. |
December 10, 2013, 08:30 (GMT) |
Merge branch 'master' into soc-2013-depsgraph_mt |
December 9, 2013, 18:00 (GMT) |
merge with master a930fb154f47a7473848254ad0b0b83c9edd1850 |
December 8, 2013, 12:00 (GMT) |
Cycles Volume: materials without a surface shader now act transparent when there is a volume shader. This is the behavior you would expect I think and makes setup easier. More optimizations are possible in this case to avoid surface shading altogether, but it's probably not so noticeable altogether as this will early out and not get to any expensive computations as far as I know. Note that these still count as transparent bounces even if there is no BSDF. Not entirely happy with that, but there should be some way to limit the depth? |
December 8, 2013, 12:00 (GMT) |
Cycles Volume: remove use volumetrics option. In general it should not be needed to turn on such features, cycles should auto-detect if there is a volume shader and just use it. It would be useful at some point to have global options to turn off effects, but we better group those options somewhere then. |
December 8, 2013, 12:00 (GMT) |
Cycles Volume: rename isotropic to scatter volume, g to anisotropy, scattering to volume bounces. |
December 8, 2013, 12:00 (GMT) |
Merge branch 'master' into soc-2013-dingto |
December 8, 2013, 09:32 (GMT) |
Skeleton files for all remaining point cache user types, so we can start replacing the old point cache entirely. |
December 8, 2013, 08:02 (GMT) |
Moved object/modifier/sim resets out of the BKE_ptcache_id_reset function. This is a design cleanup, the point cache methods should only write to the DNA when retrieving state data. There were already a number of cases where such resets occured outside of this function (such as with rigid body worlds or smoke sims). The BKE_ptcache_object_reset function still exists and includes these reset calls, but there the cache user data types are accessed directly. |
December 8, 2013, 08:02 (GMT) |
Added XXX comment about the BAKING flag, left it in for now to not lose track of the purpose. |
December 8, 2013, 08:02 (GMT) |
Removed the BAKED flag from point cache state. The cached now has a new flag LOCK_SETTINGS instead, which should indicate more clearly that it is about preventing cache modification by disabling user settings changes. The cache should not have to care about this setting in the first place. It becomes increasingly difficult to control changed simulation settings anyway (scripting!), and the cache should not even try to exert control over sims this way. Eventually this flag should be a feature of simulations and modifiers, using it as a 3rd option beside enabled/disabled and using only existing cached data. |
December 8, 2013, 08:02 (GMT) |
Removed the SIMULATION_VALID flag entirely. This was only used by the bake operators. |
December 8, 2013, 08:02 (GMT) |
Completely removed the "bake" operators for point cache. This feature will get a complete replacement, removing it altogether makes this much easier. |
December 8, 2013, 08:02 (GMT) |
Marked the PTC_STATE_SIMULATION_VALID flag as deprecated. This is only used by the bake operator, but keeping track of the sync state of cache data vs. simulation settings needs to be radically simplified. The API should provide a way of detecting whether a valid simulation state can be obtained for a certain frame. /* check if a frame can be read from the cache (no data is modified) */ PTCReadSampleResult PTC_test_sample(struct PTCReader *reader, float frame); /* try to obtain a cache sample and write to DNA data */ PTCReadSampleResult PTC_read_sample(struct PTCReader *reader, float frame); Beyond that the cache should be oblivious of the simulation state. When settings or dependencies are changed which invalidate the simulation cache state this should invalidate all cache samples (or possible a certain frame range), but the cache itself should not need to keep track of the simulation as a whole. |
December 8, 2013, 08:02 (GMT) |
Build the archive filename inside the base Reader/Writer constructor from info in the PointCache. This way we can replace it more flexibly with other data streams, packed files, memory buffers etc. |
December 8, 2013, 08:02 (GMT) |
Make the archive file name construction based on PointCache settings internal to the path utility function. |
December 8, 2013, 08:02 (GMT) |
Partial cleanup of the point cache UI panel, using a number of booleans to store all the stupifying special cases. Not complete and will need a general overhaul anyway ... |
December 8, 2013, 08:02 (GMT) |
Removed or disabled remaining BKE_pointcache calls in particle_system. Only DNA read(!) access to PointCache is allowed (otherwise would have to wrap all the flag checks etc., this could be done later still). Particle edit mode uses a lot of badly designed point cache DNA writing, so for now is disabled (or broken). |
|
|
|


Master Commits
MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021