Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-01-30Code cleanup: add BLI_testextensie_n, replacing multuple calls to ↵Campbell Barton
BLI_testextensie also use attributes for BLI path functions
2014-01-30Fix T38409: Snapping BugBastien Montagne
Issue partially caused by own errors (glicth in new BKE_boundbox_ray_hit_check() code causing segfault in volume snapping, and we have to treat ortho and persp differently in case of face snapping, because in persp our ray_start might very well already be *inside* the boundbox of the checked object), and partly due to the fact that ED_view3d_win_to_vector() was returning wrong vector (negated one) for ortho views (see previous commit).
2014-01-29Fix T38358: Face snapping fails on Orthographic viewBastien Montagne
Issue is caused by start point of ray used to detect faces under the mouse is set rather far away in ortho 3dviews. The loss of precision on the ray location induced by this can lead to face snapping failures. Solution is to do the raycasting with a temp start point, much closer to the object we check, and add back to the found distance the diff to the real start point once detection is done (as we need all hit distances from all tested objects to be relative to a common point!). Note this commit only addresses the "face snapping on mesh" case, other kind of snapping do not seem to suffer from this issue. Reviewers: brecht, campbellbarton Differential Revision: https://developer.blender.org/D268
2014-01-29Fix T38388: Creating a new scene with full copy sets rigidbody collision ↵Sergej Reich
shapes to box. Tweak world rebuilding logic, so it's not done before object data was updated.
2014-01-29Move depsgraph debug print under --debug-depsgraph command line argumentSergey Sharybin
2014-01-29UI: Refactor timecode functions into BLI_timecodeCampbell Barton
- deduplicate timecode_simple_string from image.c - replace V2D_UNIT_SECONDSSEQ with V2D_UNIT_SECONDS - avoid possible buffer overflow bugs (sprintf -> BLI_snprintf) - remove option not to use timecode and split into 2 functions Patch D227 by Andrew Buttery with own refactoring.
2014-01-28Followup to the previous commitSergey Sharybin
Need to take weight into account when drawing per-frame track reprojection curve and when computing per-track average error.
2014-01-28Code cleanup: remove references to svn and code styleCampbell Barton
2014-01-28Rework detector API and implement Harris detectorSergey Sharybin
Switch the detector API to a single function which accepts a float image and detector options. This makes usage of feature detection more unified across different algorithms. Options structure is pretty much straightforward and contains detector to be used and all the detector-specific settings. Also implemented Harris feature detection algorithm which is not as fast as FAST one but is expected to detect more robust feature points. It is also likely that less features are detected, but better quality than quantity. Blender will now use Harris detector by default, later we'll remove FAST detector.
2014-01-28libavcodec API usage: use new video encoding APIAnton Khirnov
avcodec_encode_video() has been replaced with avcodec_encode_video2() in new libavcodec versions.
2014-01-28Change libavcodec CODEC_ID_* to AV_CODEC_ID_*Anton Khirnov
CODEC_ID_* have been replaced with AV_CODEC_ID_* in new libavcodec versions. Update the code to use those new identifiers. Added a compatibility code to ffmpeg_compat.h
2014-01-27Revert the removal of Blender Internal Edge rendering, after artist feedback.Thomas Dinges
This reverts commit fb91a602c756f3ee5a122efa1862b8be7604186b.
2014-01-27Code cleanup: use booleans where appropriateCampbell Barton
2014-01-27Use includes for blenderplayer stubsCampbell Barton
exposes many incorrect and redundant stubs
2014-01-27Implement clipboard for mask splinesSergey Sharybin
So now it's possible to copy-paste splines between layers. Implementation is pretty much straightforward and duplicates some logic which we've got in sequencer/tracking clipboards. Will work on a common routine for clipboards later, for now it's not so much crucial to have.
2014-01-27Code Cleanup: de-duplicate nested node tree checkingCampbell Barton
2014-01-27Curves: save active point to fileKevin Mackay
Changed curve active point from pointer to index. Allows curve active point to be saved to file and retained between modes for free. Also some small optimisations by removing pointer look up code. - Made active point access functions into BKE API calls. - Fixes operators where curve de-selection resulted in unsel-active point. - Split curve delete into 2 functions
2014-01-26Cleanup of BLI_smallhashBastien Montagne
Factorized a bit the code here, think it's more readable now... No performance enhancement though. Reviewed by: campbellbarton Differential Revision: https://developer.blender.org/D259
2014-01-26Code Cleanup: style and correct API class refCampbell Barton
2014-01-24Fix currently harmless issue with converting ImBuf from sequencer spaceSergey Sharybin
2014-01-23Fix T38337: Crash when calling to_mesh() on a Curve object after clearing ↵Sergey Sharybin
its parent This is rather a workaround which only works because curve evaluation is only called for a temporary object. Not a big deal if we'll skip path creation for such objects. Still would need to think of general solution.
2014-01-23Cleanup: int/short to bool in BKE_cdderivedmesh.h functions (and TRUE/FALSE ↵Bastien Montagne
to true/false in code using them).
2014-01-23Fix crash when changing space type to 3D space when having multiple windowsSergey Sharybin
it is possible that different windows shares scene but displays different layers. And it's also possible that different areas in the same window will show different layers. First case was violated in `dag_current_scene_layers()` which only checked scene layers only once and if multiple windows shares the same scene only one window was handled. Now made it so layers from all windows will be squashed together into a single `DagSceneLayer`. This mainly solves issue with `DAG_on_visible_update()` which didn't work reliable with multiple open windows. Second case required call of `DAG_on_visible_update()` when changing space are type. This commit slows things a bit actually because `dag_current_scene_layers()` is actually called on every main WM loop iteration. It is possible to speed some logic up perhaps. Not sure it's so much critical to do now because there are unlikely to be more than few windows open anyway. Will rather think of skipping all that flushing things if no objects are tagged for update actually.
2014-01-23Code Cleanup: whitespaceCampbell Barton
2014-01-23Fix T38284: Crash with several shrinkwrap constraint using same targetSergey Sharybin
Issue is caused by the race condition between getting custom data layers from target's derived mesh (for vertices and faces) and releasing this derived mesh from other threads. When one releases the derived mesh it'll free temporary data from it, and it'll also update data layers mapping. General rule for threading is that no one is ever allowed to modify data he doesn't own. This means that no temp layers are to be allocated in derived mesh and making it so `CustomData_free_temporary()` doesn't update mapping if nothing was freed will solve the race condition. It is still possible to do other improvements, namely detect which additional data/layers are to be present in derived mesh and create it as a part of `object_handle_update()`, but this is to be solved separately.
2014-01-23Removed the omat matrix from DupliObject.Lukas Tönne
This was storing the original object matrix, which builds on the assumption that obmat is modified during dupli construction, which is a bad hack. Now the obmats are still modified, but this only happens outside of the dupli system itself and the original ("omat") is stored as local variables in the same place where the obmat manipulation takes place. This is easier to follow and avoids hidden hacks as much as possible. Reviewed By: campbellbarton Differential Revision: https://developer.blender.org/D254
2014-01-23Fix T38328: GLSL display shows texture mapping completely messed up in some ↵Bastien Montagne
cases Own stupid typo in rB28ca299d4dfc...
2014-01-23Tab theme colorsCampbell Barton
patch D234 from Jonathan Williamson with edits - de-duplicate rna_def_userdef_theme_space_gradient and rna_def_userdef_theme_space_generic - ui_theme_init_new_do now always sets theme settings (no need to test), used by bpy.ops.ui.reset_default_theme()
2014-01-22Fix T38316: Half of a Face is Missing on Newly Created Cubes or Cylinders.Bastien Montagne
Own bug from rBc691551249f3. Now at least I understand why `test_index_face()` is needed for tessellated quads! Added a bunch of comments to explain the issue, as it's far from an obvious one... We loose some performances, but it's still much quicker than org code.
2014-01-22Fix T37198: Vorbis encoding is brokenSergey Sharybin
Issue was caused by wrong PTS calculation. This commit makes this calculation closer to what's happening in FFmpeg itself. Seems everything is working now including newer FFmpeg, but there's one thing which still doesn't work: writing avi files with h264 codec and Vorbis audio doesn't play correct in mplayer here. But didn't manage to get this working even using FFmpeg CLI, so this might be just a bug in FFmpeg/mplayer. Since this file works fine in blender just fine wouldn't consider this is crucial thing to look into at this moment.
2014-01-22Fix for particle emission bug, reported on IRC by Thomas BeckLukas Tönne
(@plasmasolutions): When the particle emitter is parented to a fast moving object, the emission locations will not be interpolated over subframes. This works if the particle emitter is animated itself. Particle system evaluates the emitter location for each subframe, but has to do this for the parent objects as well to get reliable results.
2014-01-22Fix T38312: Crash when using snap transform in edit modeSergey Sharybin
Issue was caused by uninitialized boolean flag.
2014-01-22Fix T38306: dupliframes causing viewport render to continually restart.Brecht Van Lommel
Evaluating the animation is causing the object to get tagged as changed, but in this case it's not a permanent change so no one should be notified. Also found a case where the persistent ID for duplis wasn't unique, fixed that as well.
2014-01-21Code Cleanup: reduce sign conversionCampbell Barton
2014-01-21Code Cleanup: use bool for return values and correct commentsCampbell Barton
also remove CDDM_Check, theres no need for it.
2014-01-21Optimize tessellation code (min 20% better, up to 300% with some CD layers ↵Bastien Montagne
to tessellate). The main idea is to store (during tessellation) or recreate (during tessdata update) a tessfaceverts-to-loops mapping, and then update all tessdata in one pass, instead of calling `BKE_mesh_loops_to_mface_corners` repeatedly for all tfaces! Differential Revision: https://developer.blender.org/D226 Reviewed by Campbell, thanks a lot!
2014-01-21Fix T38302: sequencer animation data lost in original scene when copying scene.Brecht Van Lommel
2014-01-21Fix for dupli's using float for id's and signed/unsigned conversionCampbell Barton
Enable strict flags exposed some strange issues.
2014-01-21Code cleanup and structural improvements for dupli generation.Lukas Tönne
This is a first step toward improving our dupli system. It implements a more generic way of treating the various methods of dupli generation by adding a few structs: * DupliContext holds a number of arguments commonly used in the recursive dupli functions and defines a recursion state for generating sub-duplis (nested groups). It also helps to prevent bloated argument lists. * DupliGenerator is a type struct that unifies the different dupli creation methods (groups, frames, verts, text chars, faces, particles). (As with context there should be no overhead from pointer indirection because everything can still be inlined inside anim.c) Beside making the code more easily understandable this implementation should also help to avoid weird side effects from custom matrix hacks by defining clearly what a generator does. The DupliContext is deliberately made const, so a generator can not simply add hidden matrix or flag modifications that are hard to track down. The result container for the generated duplis is stored in the context instead of being passed explicitly. This means the generators are oblivious to the storage of duplis, all they need to do is call the make_dupli function. This will allow us to implement more efficient ways of storing DupliObject instances, such as MemPools or batches. These can be implemented alongside the current ListBase so we can improve dupli bottlenecks without having to replace each and every dupli use case at once. Differential Revision: https://developer.blender.org/D189
2014-01-21Code Cleanup: styleCampbell Barton
2014-01-21Fix T38264: undo/redo broken with text overwrite mode in text editor (insert ↵Justin Dailey
key).
2014-01-20Fix T38294: enabling hair dynamics very slow / hangs with many hairs.Brecht Van Lommel
This function call was accidentally placed inside a loop which gave O(n^2) behavior, but there's no reason for it.
2014-01-20Fix T38267: dynamic paint Use Object Material not working correct in some cases.Brecht Van Lommel
2014-01-20Fix T38221: node fcurves in compositor get deleted when muting a node.Lukas Tönne
This is because of the animdata cleanup in rBd2e55cb. This works ok in general, but causes issues with the localized node trees used for compo/ shader/texture previews. These localized trees share the same default action as their original trees, and then remove fcurves when removing muted nodes (which should affect the localized tree only). node_free_node_ex now has an argument for disabling animdata cleanup, which is also not necessary when freeing the whole node tree (because animdata is freed in advance anyway). In addition to that it also checks the NTREE_IS_LOCALIZED flag to prevent freeing of fcurves in the action.
2014-01-20Followup for 1728c1e: we don't need to replace flags at allSergey Sharybin
Replacing the flags isn't thread safe and could lead to bi troubles. Such things are to be handled by the dependency graph.
2014-01-20Fix for flag not being restored in BKE_vfont_to_curve_exCampbell Barton
2014-01-18Increase maximum allowed amount of points for Splines in both U and V directionsSimon Repp
Increase the maximum allowed amount of points in a spline from currently 32,767 (short) to 2,147,483,647 (int). Change variables that get assigned the value from pntsu/pntsv to int type all over the codebase. Change function parameters that previously passed the count as short to int type as well. (because https://developer.blender.org/T38191) Reviewed By: sergey Differential Revision: https://developer.blender.org/D212
2014-01-18Send sequencer render context as const pointer rather than as valueSergey Sharybin
No functional changes just creepy to send rather huge structure by value.
2014-01-17Sequencer: don't cache frames during proxy rebuild jobSergey Sharybin
2014-01-17Followup to d03e768: was wrongly (void) non-existing argumentSergey Sharybin