The last three weeks were mainly spent for bug fixes and consolidation of the Freestyle renderer.
- A bug in stroke rendering with round/square caps was fixed. A freeze of the program was caused by a stroke having two vertices that reside (exactly or almost) at the same position in the 3D space.
- The Parameter Editor mode was improved so that it accepts quote symbols within the names of scene render layers and linesets.
- Incorrect vertex normals in the case of smooth surfaces were fixed. Many thanks to Stéphane for his careful code review and bug report!
- Compilation errors with CMake on Linux were fixed by a patch from Écrivain through the BA Freestyle thread. Thanks!
In addition, the Freestyle Python API has been slightly extended by wrappers of the following Operators class methods in the C++ layer:
- getViewEdgeFromIndex(index): Returns a ViewEdge object in the current set of ViewEdges (0 <= index < Operators.getViewEdgesSize()).
- getChainFromIndex(index): Returns a Chain object in the current set of Chains (0 <= index < Operators.getChainsSize()).
- getStrokeFromIndex(index): Returns a Stroke object in the current set of Strokes (0 <= index < Operators.getStrokesSize()).
When you want to iterate over all objects in the current set of ViewEdges, Chains, or Strokes (for instance, in order to find the minimum and maximum Z depths, or sum up the lengths of all strokes), these API functions give a procedural programming way of accessing the objects, instead of relying on implicit side-effects of declarative rules (such as predicates and shaders).
Advertisement
yet another great update, thank you for your continued hard work to bring the blender community this awesome toolset :-)
Comment by blenderificus — December 29, 2010 @ 9:34 AM
Is there anyway to save the configuration of parameter edit mode as style module?
I sometime face the situation to use same setting for another .blend file.
And I think it makes more easier to write a style module than writing one from scratch.
Comment by tksg8086 — December 29, 2010 @ 5:10 PM
tksg8086,
At the moment, there is no way to export a Parameter Editor (PE) mode setup
in the form of a style module. I am not sure if such a code generating
functionality is worth implementing, because generated scripts will be just
a cut-and-paste version of parameter_editor.py. In addition, the generated
scripts are likely to be messy and not suitable for further manual editing.
As you may know, parameter_editor.py is the Python script that works as
a style module in conjunction with the PE mode GUI. So, if you are interested
in the implementation of an artistic option in the PE mode, then
parameter_editor.py is the only file that you need to look into. There is no
secret, and all the imlementation details are available in the file.
For ease of reusing a PE mode setup, I have been thinking of allowing users
to create presets (as in render presets for defining various rendering
resolutions) through the Misc tab in the PE mode. Using presets, you will be
able to apply a PE mode setup of a .blend file to other .blend files quite easily.
If time permits, I am also interested in allowing users to link/append line
styles between two .blend files (as in linking/appending scenes, objects,
meshes, materials, and so on). This is possible because line styles are a
distict data block type.
Comment by The dev team — December 31, 2010 @ 1:04 AM
thanks as usual
Comment by ike — January 3, 2011 @ 3:26 AM
less of a comment and more of a question, I have blender 2.49b, where can I get the scripts to use it with that? the new layout of 2.5 is really confusing. please help! a guide of how to get the scripts out of the 2.5 build would work also.
Comment by Armando — January 12, 2011 @ 10:43 PM
Armando,
It is recalled that Freestyle for Blender is a custom version of Blender in which Freestyle is an
integrated part of Blender. Freestyle is not just a set of scripts. You need a third-party build
of the Blender Freestyle branch. You can download a Freestyle branch build from GraphicAll.org.
For instance, a build for Windows can be found in:
http://www.graphicall.org/builds/builds/showbuild.php?action=show&id=876
It is also noted that the Freestyle integration work has moved on from the 2.4x code base to the
2.5x code base since October 2009. The 2.4x-based Freestyle branch has not been updated at all
(and won’t be). Many bug fixes and functionality improvements have been made in the new 2.5x-based
Freestyle branch. It is likely that you will find the 2.4x-based Freestyle program quite buggy
and unstable. If you prefer to use it, please be prepared :)
Comment by The dev team — January 15, 2011 @ 11:52 AM
Hi
First many thanks for the freestyle blender port, it’s really awsome.
I have a question about getting mesh texture on vertex color to drive strokes parameters.
Is it planed, or maybe already doable ?
thank
Comment by mr_dooo — January 18, 2011 @ 10:31 AM
mr_dooo,
I am afraid I don’t get exactly what you mean by “mesh texture on vertex color”.
To my knownledge, mesh texture and vertex color are two different things.
At the moment, Freestyle does not use either of them to determine stroke attributes.
Controling stroke attributes based on mesh texture and vertex color is a good idea.
I would like to implement it when time permits.
Comment by The dev team — January 19, 2011 @ 10:07 PM
I was wondering… where can I find a gallery of modern works done in freestyle? Especially the latest ones? I’m a huge fan of sketch rendering.
Comment by Leo — January 30, 2011 @ 2:38 AM
Leo,
There is no gallery of Freestyle renders at the moment. You might be interested in the
Freestyle thread in BlenderArtists.org, where branch users have been exchanging rendering
results using Freestyle. I personally have a small blog site collecting my Freestyle renders.
Comment by The dev team — January 31, 2011 @ 7:12 PM
Hi
thanks for you answer, I meant “mesh texture or vertex color” :)
Regards
Comment by mr_dooo — February 1, 2011 @ 10:52 AM
Mind telling me what settings were used for this: http://vimeo.com/2085343? could you post a .blend file somewhere (if you have it)? I have been looking for shading exactly like this for over a month! (I have freestyle on 2.5)
Comment by Armando — February 9, 2011 @ 3:55 PM
Armando,
The shader setup is indeed very simple. Here is an example .blend file:
http://www.pasteall.org/blend/5173
In the list of comments on the video clip on Vimeo, you will find my explanation of a similar shader setup using material nodes. In the .blend file above, I just used the color ramp of the diffuse component instead of relying on a color ramp node. Both achieve the same result.
Comment by The dev team — February 10, 2011 @ 11:51 PM
I’ve just installed 2.5 and your new version of freestyle = http://graphicall.org/builds/builds/showbuild.php?action=show&id=1235
Problem: I went to your FAQ where it says to activate freestyle on the “output tab” of the render buttons, but there is no such button to do so.
I installed 2.5 and dragged/dropped your build files into it, and blender 2.5 does not seem reflect any presence of freestyle functionality.
I’m most likely doing something wrong.
Comment by Leo — February 23, 2011 @ 8:48 PM
Leo,
Try this… (it’s just the bare-bones basic)
Under the ‘Render’ menu, open the ‘Post Processing’ sub-menu. Select the ‘Freestyle’ box.
Under the ‘Render’ menu, open the ‘Freestyle’ sub-menu. Find the empty ‘Freestyle Control Mode’ box (label may appear as ‘Control Mo’), and select ‘Python Scripting Mode’. Then click on ‘Add Freestyle Module’, a default will appear.
Hit F12 to render.
Comment by Camp — February 24, 2011 @ 2:19 AM