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
2013-05-10Cycles: bump node changes to add a Distance input that controls the overall ↵Brecht Van Lommel
displacement distance, and an Invert option to invert the bump effect.
2013-05-10Fix #35278: textures nodes Mix RGB node did not have a Use Alpha option likeBrecht Van Lommel
the compositing node. Note the shader nodes can't have this because color sockets there are only RGB, not RGBA.
2013-05-09Cycles bump node: change the Strength value to work better, previously it wouldBrecht Van Lommel
give results that were either too weak or too strong, this makes it give more predictable results. The downside is that it breaks backwards compatibility but the previous behavior was almost broken.
2013-05-08Fix #35246: cycles has no simple way to combine bump and normal mapping. NowBrecht Van Lommel
the Bump node has a Normal input, so you can chain it after a Normal Map node. Note that normal mapping always has to be done first because it is tied to the particular mesh surface and tangents.
2013-05-07Fix #35122: Blenderplayer crashes when loading levelSergey Sharybin
Issue was caused by ntreeUpdateTree calling for a ntree which is not in G.main. This lead to issues in ntreeVerifyNodes (which is called from ntreeUpdateTree). Made is so ntreeUpdateTree now accepts main as an argument. Will work for the release, later we could either solve the TODO mentioned in ntreeUpdateTree which will eliminate need in main there or make it so context's main is used from all over where ntreeUpdateTree is called (currently there're still some usages of G.main).
2013-05-05correction for uv template, also some doxygen comment corrections. Campbell Barton
2013-04-24Fix material node editor not working when Blender Game is selected as render ↵Brecht Van Lommel
engine.
2013-04-20Removed the group_tree_idname property from node types. This was a bit of a ↵Lukas Toenne
hack to associate node group types to specific tree types for node group operators. Since the node group operators now work independent from this property (see r56183) that property is no longer needed and just pollutes the bNodeType struct.
2013-04-18Fix for #35010, Node Groups don't show up anymore in Material Surface. ↵Lukas Toenne
Fixing the node tree view was a bit of a todo item after pynodes. To make the type-dependent socket linking in this template a bit more manageable, there are now separate functions that generate "items" for a particular node type consisting of the socket index, name and possibly additional properties required (currently only node groups vs. all other types). This is still nowhere near flexible enough to be used as a generic template all node systems, but works for now. In order to make this usable as a generic tool we will have to devise a way of storing, comparing, applying node settings *outside of actual node instances*. Then each node needs to tell how sockets are generated based on these properties. For the current nodes this would be far too complicated ...
2013-04-16Cycles Hair: Strand Minimum Pixel SizeStuart Broadfoot
Code is added to restrict the pixel size of strands in cycles. It works best with ribbon primitives and a preset for these is included. It uses distance dependent expansion of the strands and then stochastic strand removal to give a fading. To prevent a slowdown for triangle mesh objects in the BVH an extra visibility flag has been added. It is also only applied for camera rays. The strand width settings are also changed, so that the particle size is not included in the width calculation. Instead there is a separate particle system parameter for width scaling.
2013-04-12Paint refactoring commit, non-disruptive (in theory :p)Antony Riakiotakis
* Fix precision overflow issue with overlay previews, * Expose alpha mask mapping to UI (still not functional but coming soon). * More overlay refactoring: Overlay now does minimal checking for texture refresh. Instead, we now have invalidation flags to set an aspect of the brush overlay as invalid. This is necessary because this way we will be able to separate and preview different brush attributes on the overlays, using different textures: These attributes/aspects are: Primary texture (main texture for sculpt, vertex, imapaint) Secondary texture (mask/alpha texture for imapaint) Cursor texture (cursor texture. It involves brush strength and curves) Modified the relevant RNA property update functions and C update callback functions to call the relevant cursor invalidation functions instead of checking every frame for multiple properties. Properties that affect this are: Image changes, if image is used by current brush, Texture slot changes, similarly Curve changes, Object mode change invalidates the cursor Paint tool change invalidates the cursor. These changes give slightly more invalidation cases than simply comparing the relevant properties each frame, but these do not occur in performance critical moments and it's a much more elegant system than adding more variables to check per frame each time we add something on the system.
2013-04-082D stabilization default filter to bilinearSergey Sharybin
2013-04-08Exposed the bNodeSocket->limit value in RNA, so it can be redefined by ↵Lukas Toenne
pynodes. All sockets will have strict n-to-1 connectivity by default, which is fine for data sockets, but things like geometry nodes with a more data-flow based connectivity for certain socket types will need to change this.
2013-04-06Node UI:Thomas Dinges
* After PyNodes merge, many node sockets had sliders, instead of the arrow buttons (as the PROP_FACTOR subtype now actually was used). Change those back now, after artists feedback.
2013-04-05code cleanup: include orderCampbell Barton
2013-04-04fix for referencing freed memory when rendering materials (could crash ↵Campbell Barton
material preview).
2013-04-03code cleanup: unused functionsCampbell Barton
2013-04-03Fix #33628, Segmentation fault after pasting a closed group of nodes into an ↵Lukas Toenne
open group. Finally now there is a proper check for pasting nodes into groups. It uses the poll_instance callback of node types to determine if a node can be added into a specific node tree. Currently this is only implemented for group nodes and does a recursive check to avoid pasting a node group into itself (on any level, also nested groups).
2013-04-03Fix for missing integer 'type' of the virtual extension socket in group ↵Lukas Toenne
nodes. This could lead to crash in node groups when trying to undefined stack values of the extension socket. type just needs to be set to SOCK_CUSTOM==-1, so the BI execution knows not to look for a stack entry.
2013-04-02Cycles: initial subsurface multiple scattering support. It's not working asBrecht Van Lommel
well as I would like, but it works, just add a subsurface scattering node and you can use it like any other BSDF. It is using fully raytraced sampling compatible with progressive rendering and other more advanced rendering algorithms we might used in the future, and it uses no extra memory so it's suitable for complex scenes. Disadvantage is that it can be quite noisy and slow. Two limitations that will be solved are that it does not work with bump mapping yet, and that the falloff function used is a simple cubic function, it's not using the real BSSRDF falloff function yet. The node has a color input, along with a scattering radius for each RGB color channel along with an overall scale factor for the radii. There is also no GPU support yet, will test if I can get that working later. Node Documentation: http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Cycles/Nodes/Shaders#BSSRDF Implementation notes: http://wiki.blender.org/index.php/Dev:2.6/Source/Render/Cycles/Subsurface_Scattering
2013-03-31style cleanupCampbell Barton
2013-03-28Fix for node groups, now exposing a socket will copy the default value from ↵Lukas Toenne
internal nodes again. Also this value can be changed in the node group Interface panel.
2013-03-28style cleanup: osl and NULL pointer use, also correct sequencer gap operator ↵Campbell Barton
id's
2013-03-27Fix #34779: Channels disappear from multilayer exr sequenceSergey Sharybin
Issue was caused by delayed or missing image user frame number update, which lead to image loading failure in cases node is updating from image signal callback. Solved in a way that file from image datablock is used for sockets detection instead of loading image for current frame.
2013-03-24fix for struct definition building with msvc2008 and some style cleanup.Campbell Barton
2013-03-22Node preview merge function now has an additional option "remove_old", which ↵Lukas Toenne
could be used if previous previews should be retained after recalculating (not used currently, old previews are dropped entirely for now, because it could be confusing). Also moved the sync and merge for previews into the respective tree callbacks for consistency. This way the handling of previews can be changed for each tree type individually if necessary.
2013-03-19Removed the is_local_tree property from compo/shader/texture node trees. ↵Lukas Toenne
This was using an ID property, which causes trouble with 2.62 builds (possibly later) due to an old bug that causes ID properties in local node trees not loaded correctly. The bug has been fixed since then, but creating id properties will break with these builds. The property was not really necessary, so removing it will make it work as long as users don't add id properties themselves.
2013-03-19Cycles / Mix Shader:Thomas Dinges
* Made "Fac" Socket a "PROP_FACTOR", like the other Fac sockets in the compositor.
2013-03-19Nicer handling of undefined node, tree and socket types.Lukas Toenne
When nodes are loaded from a .blend file they can potentially have undefined types. This can happen if a type has been deprecated and removed, or if node types were defined in a python script that has not been loaded correctly. Previously all such nodes would automatically be removed from a node tree, assuming that their types were deprecated and no longer in use (more commonly caused by loading new nodes in an older Blender version). Due to the possibility of dynamic registration it is no longer feasible to simply delete such nodes. Display and handling of node trees was simply disabled before this patch, so that a node tree where any node or socket type was undefined would not be displayed at all. To give more information and avoid problems caused by necessary checks for the typeinfo pointer, there is now a 'Undefined' fallback type for trees, nodes and sockets. These types are used as placeholders in case the real type is not registered and can provide useful visual feedback on undefined nodes.
2013-03-19Fix for GLSL shader nodes when using Cycles nodes with shader sockets. These ↵Lukas Toenne
did not get a stack index assigned, but for GLSL they are simply replaced by colors.
2013-03-19Fixes for context updates of the node editor:Lukas Toenne
* If the node tree can be updated from context (tree has get_from_context callback defined), reset the pointers first to clear the editor path if no tree can be found. * Stupid mistake: snode->from != snode->from is always false. * Shader nodes context update: set the 'from' pointer to the active object, even if it doesn't have a material or node tree.
2013-03-19Added alpha output to movie clip compositor nodeSergey Sharybin
Pretty much straightforward change, made in the same way as texture input node. Shall not be any regressions or crashes when mixing usage of 2.66 and current trunk.
2013-03-18Node poll_instance callback is optional, check if it exists before executing.Lukas Toenne
2013-03-18code cleanupCampbell Barton
2013-03-18Fix for stupid MSVC compiler, float array cast not supported.Lukas Toenne
2013-03-18Merge of the PyNodes branch (aka "custom nodes") into trunk.Lukas Toenne
PyNodes opens up the node system in Blender to scripters and adds a number of UI-level improvements. === Dynamic node type registration === Node types can now be added at runtime, using the RNA registration mechanism from python. This enables addons such as render engines to create a complete user interface with nodes. Examples of how such nodes can be defined can be found in my personal wiki docs atm [1] and as a script template in release/scripts/templates_py/custom_nodes.py [2]. === Node group improvements === Each node editor now has a tree history of edited node groups, which allows opening and editing nested node groups. The node editor also supports pinning now, so that different spaces can be used to edit different node groups simultaneously. For more ramblings and rationale see (really old) blog post on code.blender.org [3]. The interface of node groups has been overhauled. Sockets of a node group are no longer displayed in columns on either side, but instead special input/output nodes are used to mirror group sockets inside a node tree. This solves the problem of long node lines in groups and allows more adaptable node layout. Internal sockets can be exposed from a group by either connecting to the extension sockets in input/output nodes (shown as empty circle) or by adding sockets from the node property bar in the "Interface" panel. Further details such as the socket name can also be changed there. [1] http://wiki.blender.org/index.php/User:Phonybone/Python_Nodes [2] http://projects.blender.org/scm/viewvc.php/trunk/blender/release/scripts/templates_py/custom_nodes.py?view=markup&root=bf-blender [3] http://code.blender.org/index.php/2012/01/improving-node-group-interface-editing/
2013-03-17use const pointers for file loading and booleans for animation system return ↵Campbell Barton
values passed as pointers.
2013-03-15Fix #34617, Track Position Node outputs had a limit value of 1 instead of ↵Lukas Toenne
the usual 0 (multiple connections allowed). Common problem with the explicit limit value in socket C templates, should be removed ...
2013-03-04patch [#34103] use boolean in path functions and add comments.Campbell Barton
path_util_1.patch from Lawrence D'Oliveiro (ldo)
2013-03-04patch [#34103] use booleans for extensions testing.Campbell Barton
bli_testextensie.patch - from Lawrence D'Oliveiro (ldo)
2013-02-27Bug fix #34436Ton Roosendaal
Two example files that crashed texture nodes. - On delete texture nodes, it should free the exec cache (because this cache stores the node pointer. - On redo, nodes can exist can exist without typeinfo set. Exec (free) code was not checking for that. Don't ask me why this happens... tex nodes are weird.
2013-02-22Simple preset function for setting common node sizes based on enum instead ↵Lukas Toenne
of explicit numbers. Most nodes use the default size now and don't need explicit function calls. Most remaining nodes can also use the preset variant instead of explicit size values, these are only needed for a few special nodes. Thanks to Sebastian König for suggesting this and doing the monkey work of changing node definitions.
2013-02-15And more UI messages issues fixing... Thanks again to Gabriel Gazzán and ↵Bastien Montagne
Leon Cheung!
2013-02-15skip fix from r54579 when holes aren't used (keeps bmesh ngon filling fast)Campbell Barton
2013-02-15Fix #34254: cycles brightness/contrast node was missing for GLSL material view.Brecht Van Lommel
2013-02-14Divide by 3 instead of multiplying by variations of 0.333Sergej Reich
Fixes small precision problems.
2013-02-12Composite node "Alpha over" didn't allow to be dragged wide enough.Ton Roosendaal
2013-02-10Added option to composite/viewer nodes which specifys whether alpha inputSergey Sharybin
is straight or not (premultiplied is default). This is useful in cases when you want to check on output of such nodes as keying which does have straight alpha output. Also added missing do_version code to previous compo do_versions.
2013-02-05remove stringify macro from alloc'sCampbell Barton
2013-02-04style cleanup: spaces -> tabsCampbell Barton