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
2015-02-27cleanup: typosCampbell Barton
2014-12-02Freestyle: Avoid quietly ignoring errors in parameter_editor.lineset_pre ↵Tamito Kajiyama
callbacks.
2014-11-25Freestyle: Py-Hooks for custom pre/post-processing line styleTamito Kajiyama
Patch D839, needed for SVG-render to be made into an addon.
2014-10-19Revert "Freestyle: Built-in SVG exporter."Campbell Barton
This reverts commit 61a330baca0ff9bb3cf477c04f539ef276a0356f. This completes reverting D785 This feature is to be reworked into an addon.
2014-10-19Revert "Fix for rB61a330baca0f: Changed SVG file encoding from UTF-16 to UTF-8."Campbell Barton
This reverts commit 490f2aeb8247463a7ea1a86a3a8c4246fcf45f23.
2014-10-19Revert "Freestyle: rename module to export_svg"Campbell Barton
This reverts commit db249b787fe0875944e00df1a3d12a58d9a07249.
2014-10-19Revert "Freestyle: add GPL headers"Campbell Barton
This reverts commit 3cbb066b838b4d52673f3fd76c2f695a3491b8b6.
2014-10-19Revert "Cleanup: pep8"Campbell Barton
This reverts commit 06cdc35a68d9a0bd2a84fd92bda2be11318d46ff.
2014-10-19Revert "Cleanup: unused import"Campbell Barton
This reverts commit fc7752b53c793a6985525d4c099108a97cd7867e.
2014-10-19Revert "Freestyle: lazy load 'export_svg'"Campbell Barton
This reverts commit c35a649a0a6c3c07bb8d56caba680887f726b9e9.
2014-10-18Freestyle: lazy load 'export_svg'Campbell Barton
Loading XML module, registering etree namespaces... etc on startup for everyone on chance someone may want to export an SVG from Freestyle is unacceptable. This shouldn't have got through the review. also disable loading when built without freestyle.
2014-10-18Cleanup: unused importCampbell Barton
2014-10-18Cleanup: pep8Campbell Barton
2014-10-18Freestyle: add GPL headersCampbell Barton
2014-10-18Freestyle: rename module to export_svgCampbell Barton
Convention for existing export modules
2014-10-18Fix for rB61a330baca0f: Changed SVG file encoding from UTF-16 to UTF-8.Tamito Kajiyama
2014-10-18Freestyle: Built-in SVG exporter.Tamito Kajiyama
Features: * Both still image and animation rendering, as well as polygon fills are supported. * The exporter creates a new SVG layer for every Freestyle line set. The different layers are correctly sorted. * SVG paths use data from line styles, so the base color of a line style becomes the color of paths, idem for dashes and stroke thickness. * Strokes can be split at invisible parts. This functionality is useful when exporting for instance dashed lines or line styles with a Blue Print shader * The exporter can be used not only in the Parameter Editor mode, but also from within style modules written for the Python Scripting mode. Acknowledgements: The author would like to thank Francesco Fantoni and Jarno Leppänen for their [[ https://github.com/hvfrancesco/freestylesvg | Freestyle SVG exporter ]]. Differential revision: https://developer.blender.org/D785 Author: flokkievids (Folkert de Vries) Reviewed by: kjym3 (Tamito Kajiyama)
2014-10-13Fix T42198: Linked lines only work with linked objects.Tamito Kajiyama
The reported issue was caused by a backward incompatibility due to careless code changes made when per-material Freestyle line colors were introduced in rB7915d7277ac8c605f016f30f943080556244fb59. In 2.71 line style Material color/alpha/thickness modifiers was retrieving alpha transparency from Material.alpha, whereas in 2.72 Material.line_color[3] was referenced. The present fix reverts the aforementioned code changes. This issue is a regression from 2.71, so the fix is appropriate for inclusion in the 2.72a release.
2014-10-08D801: Freestyle: remove old and unused stroke shadersTamito Kajiyama
This patch removes several stroke shaders written in C++ that are unused and don't serve a real purpose any more. The removed shaders are: - BPy_ColorVariationPatternShader - BPy_StrokeTextureShader - BPy_TextureAssignerShader - BPy_ThicknessVariationPatternShader - BPy_fstreamShader - BPy_streamShader and a few more that weren't even exposed to the Python API. Some minor edits were made by the reviewer. Differential Revision: https://developer.blender.org/D801 Reviewed by: kjym3
2014-10-01Freestyle: New line style options for sorting and chain selection.Tamito Kajiyama
The following two sort keys are added for sorting chains. * Projected X - Sort by the projected X value in the image coordinate system. * Projected Y - Sort by the projected Y value in the image coordinate system. A new line style option for the selection of first N chains is also added. Moreover, the chain sorting and chain selection operations are now executed in this order instead of the reverse order used previously. The UI has also changed accordingly. This functional change is backward compatible and won't result in visual differences.
2014-10-01Freestyle: Fix for a typo in the definition of NotBP1D.Tamito Kajiyama
This is a safe fix for a regression from 2.71, so should be back ported to 2.72.
2014-09-19Freestyle: Fix for irrelevant docstring showing up in Python API docs.Tamito Kajiyama
2014-09-19Freestyle: Python API documentation updates.Tamito Kajiyama
Fixed dead references of API identifiers (e.g., freestyle.types.Interface0D) due to relocations of the identifiers into submodules. Also made various minor revisions of mark-ups and typos.
2014-09-18Fix for missing Freestyle sections in the Blender Python API documentation.Tamito Kajiyama
Freestyle sections of the API docs were empty due to Freestyle module reorganization in commit rB6498b96ce7081db039354228213d72e8c70bd3aa. Module __all__ property was added to submodules so as to properly exclude irrelevant documentation elements such as mathutils.Vector.
2014-09-02Better fix for T41464: Material Boundary bug in Freestyle.Tamito Kajiyama
The problem addressed here is that there was no mean to check if an iterator points the last of the elements being iterated over. Such checking is necessary to reliably dereference the iterator (i.e., calling the operator*() method of the underlying C++ iterator object). Now Interface0DIterator and StrokeVertexIterator have an .at_last property to check if an iterator points the last element. Using this new API feature, the present commit partly reverts the previous commit rBeb8964fb7f19 to better address T41464. Differential revision: https://developer.blender.org/D752 Author: flokkievids (Folkert de Vries) Reviewed by: kjym3 (Tamito Kajiyama)
2014-08-20Fix T41464: Material Boundary bug in Freestyle.Tamito Kajiyama
The reported issue was caused by an old bug combined with another bug introduced by recent Freestyle Python API updates. The old bug was that a mutable reference to CurvePoint was treated as if it were immutable. Iteration over CurvePoint objects is implemented by the C++ CurvePointIterator class, whose dereference method CurvePointIterator::operator*() returns a reference to a mutable data member (probably originally intended for better performance). Hence the returned reference may vary upon iteration over different CurvePoints. This implementation detail was overlooked and the returned reference was treated as immutable (which is the case in fact for other Interface0D subclasses except for CurvePoint). This bug was surprisingly old as it existed before the beginning of Freestyle integration into Blender. The other bug was in the MaterialBoundaryUP0D predicate class that was not properly handling the end of iteration. It is noted that when the iter() and next() built-in functions are applied to Interface0DIterator, it is no longer possible to reliably check the end of iteration by the .is_end property of the iterator. Namely, the .is_end property works as expected only when iteration is carried out in combination with the conventional .increment() and .decrement() methods of the iterator. For this reason the commit rBb408d8af31c9 was partly reverted to recover the previous definition of MaterialBoundaryUP0D.
2014-08-12Freestyle: Fix for git merge glitches.Tamito Kajiyama
Also made minor code cleanup.
2014-08-12Freestyle: an improved workflow of line style shading nodes.Tamito Kajiyama
Removed the previous changes for passing a line style through the Controller, and revised the BlenderTextureShader to assign the shader node tree of a line style (if specified) to strokes. This way the assignment of shading nodes can be done through both the Freestyle GUI and Python scripting.
2014-08-12WIP commit just for a record of a working snapshot of code revisions for ↵Tamito Kajiyama
node-based textured strokes.
2014-07-24Freestyle: minor revisions of Python API docstrings and comments.Tamito Kajiyama
2014-07-24A follow-up to Patch D623: minor code updates and style cleanup.Tamito Kajiyama
2014-07-24Freestyle Python API: Updates and speedups for the parameter editorTamito Kajiyama
In addition to D319, this patch updates the parameter editor, the UI of Freestyle. Using new API functionality and experience gained in making D319, this patch provides a quite noticable speedup for commonly-used Freestyle linestyle modifiers. As this patch touches a lot of code (and mainly the foundations) it is likely that mistakes are made. The patch has been tested with a regression suite for Freestyle (https://github.com/folkertdev/freestyle-regression-tests/tree/master), but testing with scenes used in production is very much appreciated. Differential revision: https://developer.blender.org/D623 Author: flokkievids (Folkert de Vries) Reviewed by: kjym3 (Tamito Kajiyama)
2014-07-07Per-material line color settings for Freestyle.Tamito Kajiyama
New properties 'line_color' and 'line_priority' are added to Material ID data blocks. The 'line_color' property allows users to specify a per-material line color that can be used as a Freestyle line color through Material color modifiers of line style settings. The new line color property is intended to provide a solution for line color stylization when a proper Freestyle support for Cycles is implemented (likely as part of the upcoming Blender 2.72 release; see Patch D632). Materials in Cycles are usually set up using shader nodes, and Freestyle won't be capable of retrieving colors and other properties from node-based materials any soon. The new line color property of materials addresses this foreseen limitation by providing artists with an intuitive alternative mean to specify line colors on a per-material basis independently from node trees. The 'line_priority' property gives users a way to control line colors at material boundaries. When a line is drawn along a feature edge at material boundaries, one of the two materials on both sides of the edge has to be picked up to determine the line color. So far there was no way to control this selection (which was in effect at random). Now the material with a higher line color priority will be selected. The new per-material line settings are shown in the new Freestyle Line tab in the Material context of the Properties window (only when Freestyle is enabled).
2014-06-24Freestyle: Fix for a couple of missing names in ↵Tamito Kajiyama
freestyle.chainingiterators.__all__.
2014-06-24D319: Freestyle Python scripts update.Tamito Kajiyama
This revision is meant to update Freestyle's Python scripts to make full usage of the new features of Python and Freestyle's Python API. Freestyle's Python scripts are pretty old already, and were never given much attention. With the 2.7x generation of Blender coming up, this is an excellent time to update Freestyle's Python scripts, hopefully adding some new features and achieving some speed improvements on the way. Main goals: * use for loops where possible * general cleanup, making use of more recent python features (generators, ternary operator, ect.) * update the documentation on the way (it's lacking atm) Differential revision: https://developer.blender.org/D319 Author: flokkievids (Folkert de Vries) Reviewed by: kjym3 (Tamito Kajiyama)
2014-06-05Freestyle: Fix for a wrong formula used for RGB to grayscale conversion.Tamito Kajiyama
This bug fix is likely to affect the visual results of existing Freestyle setups using the Material color/alpha/thickness modifiers with the 'material_attribute' parameter set to either 'Diffuse' (default) or 'Specular', and also the Ramp option enabled in the case of the Material color modifier.
2014-05-26Fix for thinning strokes at intersections between visible and background ↵Tamito Kajiyama
hidden lines. This commit is intended to fully fix the problem described in https://developer.blender.org/T36425#19 (see also the previous commit rB08528f577dcb). Addition of a small offset (to avoid singularity in stroke rendering due to overlapping vertices) was not performed for all overlapping vertices. Removed the StrokeCleaner and related helper functions which were added as a temporary workaround in rB2a5b6d9c8f16.
2014-05-21Fix for a regression in rBe84732858590.Tamito Kajiyama
2014-05-09Freestyle: Fix for dashed lines when applied to invisible stroke segments.Tamito Kajiyama
Dashed lines were resetting stroke segment visibility by mistake (making invisible segments visible, for example when applied to the results of square blueprint geometry modifier).
2014-05-06Freestyle: minor code clean-up.Tamito Kajiyama
2014-05-03Patch D246: Texture Marks for freestyle strokes, written and contributed by ↵Tamito Kajiyama
Paolo Acampora. Reviewers: brecht, kjym3, #freestyle Reviewed By: brecht, kjym3 Differential Revision: https://developer.blender.org/D246
2014-04-18Freestyle: New options for sorting to arrange the stacking order of lines.Tamito Kajiyama
Line styles now have a set of new options for rearranging the stacking order of lines. This gives artists more control to determine which lines should be drawn on top of others. Two available sort keys are the distance from camera and curvilinear 2D length. Since the distance of a line from camera may vary over vertices, another option called integration type is used to compute the sort key for a line from the values computed at individual vertices. Available integration types are MEAN, MIN, MAX, FIRST and LAST (see the tool tips for more detail).
2014-04-18Freestyle: Added logical operators for binary predicates for 1D elements.Tamito Kajiyama
The implemented operators are: freestyle.predicates.AndBP1D freestyle.predicates.NotBP1D freestyle.predicates.OrBP1D
2014-04-18Freestyle: Fix ImportError in anisotropic_diffusion.pyIRIE Shinsuke
2014-04-17Revised freestyle.predicates.pyZBP1D so that the constructor accepts an ↵Tamito Kajiyama
integration type.
2014-04-11Fix for Sinus Displacement and 2D Offset stroke geometry modifiers.Tamito Kajiyama
These modifiers were not working properly when they were applied to strokes whose backbone was already modified by other geometry shaders. This problem was due to the use of Normal2DF0D that compute 2D vertex normals based on the underlying FEdges up on which initial stroke geometry is defined. Now vertex normals are computed on the basis of modified stroke vertices. A helper function 'stroke_normal' for computing normals of stroke vertices was added to the 'freestyle.utils' API module.
2014-02-12Freestyle: Fix for chaining operators not concatenating edges with Freestyle ↵Tamito Kajiyama
edge marks and at material boundaries. Problem report by Postoman on the BlenderArtists.org Freestyle thread, thanks a lot!
2014-01-28Code cleanup: pep8Campbell Barton
2014-01-28Fix for a typo reported by flokkievids through code review comments D163#1.Tamito Kajiyama
2014-01-28Moved the Operators class from the 'freestyle' module to the ↵Tamito Kajiyama
'freestyle.types' submodule.