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-05-03Fix T41739: 3D view solid draw mode missing some material node updates.Brecht Van Lommel
2015-04-13Cleanup: do not use _reportf() when not doing any string formating!Bastien Montagne
Also usual minor i18n messages stuff...
2015-04-06Multi-View and Stereo 3DDalai Felinto
Official Documentation: http://www.blender.org/manual/render/workflows/multiview.html Implemented Features ==================== Builtin Stereo Camera * Convergence Mode * Interocular Distance * Convergence Distance * Pivot Mode Viewport * Cameras * Plane * Volume Compositor * View Switch Node * Image Node Multi-View OpenEXR support Sequencer * Image/Movie Strips 'Use Multiview' UV/Image Editor * Option to see Multi-View images in Stereo-3D or its individual images * Save/Open Multi-View (OpenEXR, Stereo3D, individual views) images I/O * Save/Open Multi-View (OpenEXR, Stereo3D, individual views) images Scene Render Views * Ability to have an arbitrary number of views in the scene Missing Bits ============ First rule of Multi-View bug report: If something is not working as it should *when Views is off* this is a severe bug, do mention this in the report. Second rule is, if something works *when Views is off* but doesn't (or crashes) when *Views is on*, this is a important bug. Do mention this in the report. Everything else is likely small todos, and may wait until we are sure none of the above is happening. Apart from that there are those known issues: * Compositor Image Node poorly working for Multi-View OpenEXR (this was working prefectly before the 'Use Multi-View' functionality) * Selecting camera from Multi-View when looking from camera is problematic * Animation Playback (ctrl+F11) doesn't support stereo formats * Wrong filepath when trying to play back animated scene * Viewport Rendering doesn't support Multi-View * Overscan Rendering * Fullscreen display modes need to warn the user * Object copy should be aware of views suffix Acknowledgments =============== * Francesco Siddi for the help with the original feature specs and design * Brecht Van Lommel for the original review of the code and design early on * Blender Foundation for the Development Fund to support the project wrap up Final patch reviewers: * Antony Riakiotakis (psy-fi) * Campbell Barton (ideasman42) * Julian Eisel (Severin) * Sergey Sharybin (nazgul) * Thomas Dinged (dingto) Code contributors of the original branch in github: * Alexey Akishin * Gabriel Caraballo
2015-04-04Cleanup: use BKE_animdata_* prefixCampbell Barton
2015-03-28Cleanup: use BKE_texture_ prefixCampbell Barton
2015-02-16UI messages fixes and cleanup.Bastien Montagne
2015-02-03Compositor: Implement sampled motion blur for plane track deform nodeSergey Sharybin
Quite striaghtforward change, and in theory we can even try supporting motion blur for the corner pin node (which is tricky because coordinates actually coming from sockets, but with some black magic should be doable).
2015-02-02Cycles: Implement cubit image interpolation on CPUSergey Sharybin
Basically title says it all. Could be not totally optimized but the code is there now.
2015-01-29Node UI: add support to show text-blocks in framesCampbell Barton
Some node setups benefit from being documented like this.
2015-01-27Correction to tooltip, object texture space is supported by both SVM and OSLSergey Sharybin
2015-01-27Cycles: Support texture coordinate from another objectSergey Sharybin
This is the same as blender internal's texture mapping from another object, so this way it's possible to control texture space of one object by another. Quite straightforward change apart from the workaround for the stupidness of the dependency graph. Now shader has flag telling that it depends on object transform. This is the simplest way to know which shaders needs to be tagged for update when object changes. This might give some false-positive tags now but reducing them should not be priority for Cycles and rather be a priority to bring new dependency graph. Also GLSL preview does not support using other object for mapping. This is actually correct for BI shading as well and to be addressed as a part of general GLSL viewport improvements since it's not really clear how to support this in GLSL. Reviewers: brecht, juicyfruit Subscribers: eyecandy, venomgfx Differential Revision: https://developer.blender.org/D1021
2015-01-22Expose shading node shading compatibility to the RNASergey Sharybin
This way it is possible to probe shading compatibility of a given node from python, making things like versioning code much easier to perform. it's only valid for shading nodes, for other nodes the property also exists but reads as an empty enum. To access this compatibilities: node.shading_compatibility
2015-01-21Cycles: Support tube projection for imagesSergey Sharybin
This way Cycles finally becomes feature-full on image projections compared to Blender Internal and Gooseberry Project Team could finally finish the movie.
2015-01-21Cycles: Support sphere mapping for the image textureSergey Sharybin
2015-01-05Fix T43111: Node Editor (Slider) Draw Glitchjulianeisel
* don't allow Node Editor input max value to be less then min value * avoid the num slider drawing glitch if softmin equals softmax * assert if softmax/hardmax is smaller than softmin/hardmin With this, we sort of allow softmin/hardmin and softmax/hardmax being the same.
2014-11-30Grease Pencil - Storyboarding Features (merge from GPencil_EditStrokes branch)Joshua Leung
This merge-commit brings in a number of new features and workflow/UI improvements for working with Grease Pencil. While these were originally targetted at improving the workflow for creating 3D storyboards in Blender using the Grease Pencil, many of these changes should also prove useful in other workflows too. The main highlights here are: 1) It is now possible to edit Grease Pencil strokes - Use D Tab, or toggle the "Enable Editing" toggles in the Toolbar/Properties regions to enter "Stroke Edit Mode". In this mode, many common editing tools will operate on Grease Pencil stroke points instead. - Tools implemented include Select, Select All/Border/Circle/Linked/More/Less, Grab, Rotate, Scale, Bend, Shear, To Sphere, Mirror, Duplicate, Delete. - Proportional Editing works when using the transform tools 2) Grease Pencil stroke settings can now be animated NOTE: Currently drivers don't work, but if time allows, this may still be added before the release. 3) Strokes can be drawn with "filled" interiors, using a separate set of colour/opacity settings to the ones used for the lines themselves. This makes use of OpenGL filled polys, which has the limitation of only being able to fill convex shapes. Some artifacts may be visible on concave shapes (e.g. pacman's mouth will be overdrawn) 4) "Volumetric Strokes" - An alternative drawing technique for stroke drawing has been added which draws strokes as a series of screen-aligned discs. While this was originally a partial experimental technique at getting better quality 3D lines, the effects possible using this technique were interesting enough to warrant making this a dedicated feature. Best results when partial opacity and large stroke widths are used. 5) Improved Onion Skinning Support - Different colours can be selected for the before/after ghosts. To do so, enable the "colour wheel" toggle beside the Onion Skinning toggle, and set the colours accordingly. - Different numbers of ghosts can be shown before/after the current frame 6) Grease Pencil datablocks are now attached to the scene by default instead of the active object. - For a long time, the object-attachment has proved to be quite problematic for users to keep track of. Now that this is done at scene level, it is easier for most users to use. - An exception for old files (and for any addons which may benefit from object attachment instead), is that if the active object has a Grease Pencil datablock, that will be used instead. - It is not currently possible to choose object-attachment from the UI, but it is simple to do this from the console instead, by doing: context.active_object.grease_pencil = bpy.data.grease_pencil["blah"] 7) Various UI Cleanups - The layers UI has been cleaned up to use a list instead of the nested-panels design. Apart from saving space, this is also much nicer to look at now. - The UI code is now all defined in Python. To support this, it has been necessary to add some new context properties to make it easier to access these settings. e.g. "gpencil_data" for the datablock "active_gpencil_layer" and "active_gpencil_frame" for active data, "editable_gpencil_strokes" for the strokes that can be edited - The "stroke placement/alignment" settings (previously "Drawing Settings" at the bottom of the Grease Pencil panel in the Properties Region) is now located in the toolbar. These were more toolsettings than properties for how GPencil got drawn. - "Use Sketching Sessions" has been renamed "Continuous Drawing", as per a suggestion for an earlier discussion on developer.blender.org - By default, the painting operator will wait for a mouse button to be pressed before it starts creating the stroke. This is to make it easier to include this operator in various toolbars/menus/etc. To get it immediately starting (as when you hold down DKEy to draw), set "wait_for_input" to False. - GPencil Layers can be rearranged in the "Grease Pencil" mode of the Action Editor - Toolbar panels have been added to all the other editors which support these. 8) Pie menus for quick-access to tools A set of experimental pie menus has been included for quick access to many tools and settings. It is not necessary to use these to get things done, but they have been designed to help make certain common tasks easier. - Ctrl-D = The main pie menu. Reveals tools in a context sensitive and spatially stable manner. - D Q = "Quick Settings" pie. This allows quick access to the active layer's settings. Notably, colours, thickness, and turning onion skinning on/off.
2014-11-05Code cleanup: Replace magic number with verbose name for math node operationsSergey Sharybin
Should be no functional changes, just much less cryptic code.
2014-11-04Code cleanup: Replace magic constants with definesSergey Sharybin
From quich search didn't see where the flags are used apart from RNA currently, but i might have missed something.
2014-08-12Freestyle: Added new UV Along Stroke shader node.Tamito Kajiyama
2014-08-12Freestyle: Added "blend_type" and "use_clamp" options to the Output Line ↵Tamito Kajiyama
Style shader node.
2014-07-26New compositor node "Sun Beams"Lukas Tönne
This allows adding a "fake" sun beam effect, simulating crepuscular rays from light being scattered in a medium like the atmosphere or deep water. Such effects can be created also by renderers using volumetric lighting, but the compositor feature is a lot cheaper and is independent from 3D rendering. This makes it ideally suited for motion graphics. The implementation uses am optimized accumulation method for gathering color values along a line segment. The inner buffer loop uses fixed offset increments to avoid unnecessary multiplications and avoids variables by using compile-time specialization (see inline comments for further details).
2014-06-30Experiment with the compositor border in editorSergey Sharybin
Preserve buffer form previous runs so it's possible to make a compo of full frame, then draw a border and start tweaking nodes and see updates in that border. Main idea is to make it able to visually compare difference between what was changed inside the border and how frame looked before the tweaks outside of the border. Also implemented Clear Viewer Border in compositor, shortcut it Ctrl-Alt-B. Reviewers: lukastoenne, jbakker CC: venomgfx, sebastian_k Differential Revision: https://developer.blender.org/D582
2014-06-14Cycles: Don't show "Sharp" distribution in the Anisotropic node.Thomas Dinges
2014-06-14Cycles: glossy and anisotropic BSDF changesBrecht Van Lommel
* Anisotropic BSDF now supports GGX and Beckmann distributions, Ward has been removed because other distributions are superior. * GGX is now the default distribution for all glossy and anisotropic nodes, since it looks good, has low noise and is fast to evaluate. * Ashikhmin-Shirley is now available in the Glossy BSDF.
2014-06-14Cycles: Ashikhmin-Shirley anisotropic BSDFKarsten Schwenk
* Ashikhmin-Shirley anisotropic BSDF was added as closure * Anisotropic BSDF node now has two distributions Reviewers: brecht, dingto Differential Revision: https://developer.blender.org/D549
2014-05-07Nodes: add absolute value operation to all math nodesMatt Heimlich
Reviewed By: dingto, brecht Differential Revision: https://developer.blender.org/D507
2014-04-02Cycles: add dedicated UV Map node, easier to find and has convenient auto ↵Kevin Dietrich
complete. Fixes T37954. Reviewed By: brecht, dingto Differential Revision: https://developer.blender.org/D230
2014-04-01Code cleanup: remove TRUE/FALSE & WITH_BOOL_COMPAT defineCampbell Barton
2014-03-19Usual UI messages fixes...Bastien Montagne
2014-03-12Code cleanup: de-duplicate switch statement, style editsCampbell Barton
2014-03-08Cycles: Compile fix and some cleanup for the Image interpolation commit.Thomas Dinges
2014-03-08Add support for multiple interpolation modes on cycles image texturesMartijn Berger
All textures are sampled bi-linear currently with the exception of OSL there texture sampling is fixed and set to smart bi-cubic. This patch adds user control to this setting. Added: - bits to DNA / RNA in the form of an enum for supporting multiple interpolations types - changes to the image texture node drawing code ( add enum) - to ImageManager (this needs to know to allocate second texture when interpolation type is different) - to node compiler (pass on interpolation type) - to device tex_alloc this also needs to get the concept of multiple interpolation types - implementation for doing non interpolated lookup for cuda and cpu - implementation where we pass this along to osl ( this makes OSL also do linear untill I add smartcubic to the interface / DNA/ RNA) Reviewers: brecht, dingto Reviewed By: brecht CC: dingto, venomgfx Differential Revision: https://developer.blender.org/D317
2014-02-17Fix T38680: File output subpath file-select operator uses absolute path.Lukas Tönne
This is because the sub-paths of the individual sockets are defined as FILEPATH properties, which automatically adds the standard fileselect operator button in the uiLists. However, that operator returns full paths only, with no direct way to make them relative to the base path. So for now i've turned the subpath properties into regular strings, which removes these operator buttons but should at least avoid the confusion. Eventually new operators could be defined for this, which use the file- select operator and then make the path relative.
2014-02-17Fix T38651: Compositor Normal Node Sphere unchangable when Reset All ToLukas Tönne
Default Values is used on it. The default for the socket value was always 0. Now the default value for node socket default_value properties is chosen based on the socket subtype to give some more sensible values. NOTE: this may still be different from the values specified in the socket templates! It is not possible to directly use these template values, because all sockets share the same RNA types. At least it should work reasonably well in the majority of cases now.
2014-02-17Make sure RenderLayer/Image nodes always return a valid enum items list.Lukas Tönne
2014-02-09UI: use proportional option while dragging buttonsCampbell Barton
2014-02-08RNA API: remove unused PROP_NEVER_CLAMP flagCampbell Barton
2014-02-05Fix T38340 and T38473: fixed Scene pointers in Composite and Defocus nodes ↵Lukas Tönne
don't get updated based on context. As discussed in T38340 the solution is to use the current scene from context whenever feasible. Composite does not use node->id at all now, the scene which owns the compositing node tree is retrieved from context instead. Defocus node->id is made editable by the user. By default it is not set, which also will make it use the contextual scene and camera info. The node->id pointer in Defocus is **not** cleared in older blend files. This is done for backward compatibility: the node will then behave as before in untouched scenes. File Output nodes also don't store scene in node->id. This is only needed when creating a new node for initializing the file format. Reviewers: brecht, jbakker, mdewanchand Reviewed By: brecht Differential Revision: https://developer.blender.org/D290
2014-01-20Fix T37978: cycles nodes with multiple Material Output nodes not predictable.Brecht Van Lommel
Now it uses the last activated node like compositing does. This should have no effect on existing files until you activate another output node there.
2014-01-16Code Cleanup: no need to pass empty strings as default valuesCampbell Barton
2014-01-04RNA API: use bool's for enum itemf callbacks.Campbell Barton
2014-01-04Changed percentage and 0-1 number fields to use sliders. This is more ↵William Reynish
consistent. Reviewed by Brecht van Lommel, Thomas Dinges and Jonathan Williamson
2013-12-22Style Cleanup: remove preprocessor indentation (updated wiki style guide too)Campbell Barton
2013-12-11Sanity check in node links API: Make sure a valid node exists for bothLukas Tönne
sockets passed to the nodetree.links.new function, otherwise this could lead to invalid connections between different node trees! The ntreeAddLink function has asserts for this, but this condition needs to be checked in the RNA method calling it.
2013-12-03Cleanup: Internal degrees removal.Bastien Montagne
This patch changes most of the reamining degrees usage in internal code into radians. I let a few which I know off asside, for reasons explained below - and I'm not sure to have found out all of them. WARNING: this introduces forward incompatibility, which means files saved from this version won't open 100% correctly in previous versions (a few angle properties would use radians values as degrees...). Details: - Data: -- Lamp.spotsize: Game engine exposed this setting in degrees, to not break the API here I kept it as such (using getter/setter functions), still using radians internally. -- Mesh.smoothresh: Didn't touch to this one, as we will hopefully replace it completely by loop normals currently in dev. - Modifiers: -- EdgeSplitModifierData.split_angle, BevelModifierData.bevel_angle: Done. - Postprocessing: -- WipeVars.angle (sequencer's effect), NodeBokehImage.angle, NodeBoxMask.rotation, NodeEllipseMask.rotation: Done. - BGE: -- bConstraintActuator: Orientation type done (the minloc[0] & maxloc[0] cases). Did not touch to 'limit location' type, it can also limit rotation, but it exposes through RNA the same limit_min/limit_max, which hence can be either distance or angle values, depending on the mode. Will leave this to BGE team. -- bSoundActuator.cone_outer_angle_3d, bSoundActuator.cone_inner_angle_3d: Done (note I kept degrees in BGE itself, as it seems this is the expected value here...). -- bRadarSensor.angle: Done. Reviewers: brecht, campbellbarton, sergey, gaiaclary, dfelinto, moguri, jbakker, lukastoenne, howardt Reviewed By: brecht, campbellbarton, sergey, gaiaclary, moguri, jbakker, lukastoenne, howardt Thanks to all! Differential Revision: http://developer.blender.org/D59
2013-11-26Fix T37632: Wrong tooltip for "Motion Blur" on mask nodeSergey Sharybin
2013-11-25Blender Internal: Add "Lamp Data" shader node that allows shaders to acquire ↵IRIE Shinsuke
information such as light vector from specified Lamp. For now this provides the following outputs: - Color - Light Vector - Distance - Shadow - Visibility Factor Note: Color output is multiplied by the lamp energy. Multiplication of color*max(dot(light_vector,normal_vector),0)*shadow*visibility_factor produces the exact same result as the Lambert shader. Many thanks to Brecht for code review and discussion!
2013-11-12Make dynamic node labels possible as a registerable function 'draw_label' ↵Lukas Toenne
(simple 'label' identifier is already in use, need to avoid API breakage). This should simply return a string. The dynamic label can still be overridden by the user-defined node.label string.
2013-11-06Syncing methods for Color Balance node LGG and ASC-CDL modes. The settings ↵Lukas Toenne
for either mode are converted into equivalent settings of the other. This keeps the result of both modes roughly the same and mimics the previous behavior when settings were shared by both modes (but not equivalent). NOTE: Due to the use of additional sRGB conversion in the LGG mode the result is not entirely accurate, this should perhaps be fixed. Settings for each mode are kept in their own color values nevertheless, this avoids potential problems with float precision.
2013-11-06Fix #37333: Bad default value in Color Balance. Use independent ↵Lukas Toenne
offset/power/slope variables for the CDL mode in color balance node. This avoids stupid default values in particular for offset, which would be 1 when just using the lift value for it.