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-01-20Another crappy approach to spirals on hairs, crazy expensive though.Lukas Tönne
Conflicts: source/blender/blenkernel/intern/particle.c
2015-01-20Spiral kink mode for particles.Lukas Tönne
This is BAD code, but the particle kinking does not make it easy to write a non-local modifier that requires neighboring positions, curvature, etc. The feature is needed for Gooseberry.
2015-01-20Optional clumping noise feature for simulating twisted hair strands.Lukas Tönne
This adds another level of clumping on child hairs. When enabled, child hairs chose a secondary clumping target using a Voronoi pattern. This adds visual detail on a smaller scale, which is useful particularly when the number of parents is relatively small. Natural fibres behave in a similar way when they become sticky and intertwined. Hairs close to each other form a first twisted strand, then combine into larger strands. Similar features can be found in ropes: http://en.wikipedia.org/wiki/Hair_twists http://en.wikipedia.org/wiki/Rope Conflicts: source/blender/blenloader/intern/versioning_270.c
2015-01-20Disable scope updates in texture and image paint modes.Lukas Tönne
Scope update is very slow for high resolutions, and currently blocks the UI thread(!). This is especially terrible in paint modes, where each stroke causes a scope update and unacceptable freezing. The scopes update method tries to avoid this somewhat by skipping if the toolbar is disabled, but this doesn't help when painting where brush tools etc. are frequently needed. It's also a bad-level poll, with the core system accessing a UI element. Eventually scope updates should become a low-priority background job, as well as becoming threaded. Until then this polling provides a usable workaround to the most outrageous cases.
2015-01-20Curve-based control for "roughness" (noise displacement) of child hair.Lukas Tönne
2015-01-20Curve-based control for child path tapering.Lukas Tönne
This is an alternative method to the current fixed function with a clump factor and "shape" parameter. This function is quite limited and does not give the desired result in many cases (e.g. long, parallel rasta strands are problematic). So rather than trying to add more parameters there is now a fully user-defined optional curve for setting the tapering shape.
2015-01-20Presets for hair dynamics.Lukas Tönne
This is necessary because the hair dynamics settings are not part of the ParticleSettings datablock, but part of the convoluted cloth modifier inside the particle system struct. In the future this will be recoded properly, but in the meantime presets provide a simple an unobtrusive way to have reusable dynamics settings for hair. Conflicts: release/scripts/startup/bl_ui/properties_particle.py
2015-01-20Randomness factor for hair bending stiffness.Lukas Tönne
This helps to create some variation in a hair system, which can otherwise become very uniform and boring. It's yet another confusing setting in a system that should have been nodified, but only option for now (broken windows ...) Conflicts: source/blender/blenkernel/intern/particle_system.c source/blender/physics/intern/BPH_mass_spring.cpp
2015-01-20Use dedicated debug values in cloth settings instead of abusing unusedLukas Tönne
other values. Conflicts: source/blender/physics/intern/BPH_mass_spring.cpp
2015-01-20Implementation of a target density feature for the hair simulation.Lukas Tönne
This allows setting a target density which the fluid simulation will take into account as an additional term in the pressure Poisson equation. Based on two papers "Detail Preserving Continuum Simulation of Straight Hair" (McAdams et al. 2009) and "Two-way Coupled SPH and Particle Level Set Fluid Simulation" (Losasso et al. 2008) Currently the target pressure is specified directly, but it will be a lot more convenient to define this in terms of a geometric value such as "number of hairs per area" (combined with hair "thickness"). Conflicts: source/blender/physics/intern/BPH_mass_spring.cpp
2015-01-20Use a fixed, uniform cell size for hair continuum grids.Lukas Tönne
This is a bit more awkward for artists to use, but necessary for a stable solution of the hair continuum calculation. The grid size is defined by the user, the extent of the grid is then calculated based on the hair geometry. A hard upper limit prevents bad memory allocation in case too small values are entered. Conflicts: source/blender/physics/intern/BPH_mass_spring.cpp
2015-01-20Debug drawing feature to visualize the hair continuum grid.Lukas Tönne
2015-01-20Reorganizing hair dynamics UI layout a bit to make settings slightlyLukas Tönne
more intuitive. Also removed a couple of unused or useless features from the UI: * collider friction is unused and replaced in favor of true collision * spring damping refers to structural springs (stretch), which is not noticable in hair due to extreme stiffness atm. * pressure factors are not sure since this feature is too unstable atm. Conflicts: release/scripts/startup/bl_ui/properties_particle.py
2015-01-20New hair editing feature "Shape Cut", for cutting hair based on a meshLukas Tönne
shape instead of a brush tool. The brush cutting tool for hair, while useful, is not very accurate and often requires rotating the model constantly to get the right trimming on every side. This makes adjustments to a hair shape a very tedious process. On the other hand, making proxy meshes for hair shapes is a common workflow. The new operator allows using such rough meshes as boundaries for hair. All hairs that are outside the shape mesh are removed, while those cutting it at some length are shortened accordingly. The operator can be accessed in the particle edit mode toolbar via the "Shape Cut" button. The "Shape Object" must be set first and stays selected as a tool setting for repeatedly applying the shape.
2015-01-20Guide hair drawing for hair particles.Lukas Tönne
Without this the particle system only shows the actual non-simulated hairs ("guide hairs") during edit mode. These hairs are used for goals as well, so showing them in the regular viewport is pretty important. Also the usual hair curves are interpolated along the entire length, which makes it very difficult to see exact vertex positions, unless using exact powers of 2 for the segment number and match the display steps. Conflicts: source/blender/blenkernel/intern/particle.c
2015-01-20Added separate damping for bending springs.Lukas Tönne
The bend damping factor was hardcoded to the same value as the stiffness. Now it has its own factor in the settings and button in hair dynamics.
2015-01-20Basic solver result feedback from the mass-spring (cloth/hair) solver.Lukas Tönne
This returns a general status (success/no-convergence/other) along with basic statistics (min/max/average) for the error value and the number of iterations. It allows some general estimation of the simulation quality and detection of critical settings that could become a problem. Better visualization and extended feedback can follow later.
2015-01-20Disabled the velocity filtering feature for now, since the weighting isLukas Tönne
incorrect. The voxel grid needs better tool support to make it usable, so fixing the filtering is not high priority right now.
2015-01-20Added basic filtering feature for velocity smoothing.Lukas Tönne
This is part of the original method from "Volumetric Methods for Simulation and Rendering of Hair". The current filter is a simple box filter. Other energy-preserving filters such as gaussian filtering can be implemented later. The filter size is currently given as a cell count. This is not ideal, rather it should use a geometrical length value, but this is too abstract for proper artistical use. Eventually defining the whole grid in terms of spatial size might work better (possibly using an external object).
2015-01-20Made the voxel grid size for hair interaction configurable and increasedLukas Tönne
the default to 32. Conflicts: source/blender/blenloader/intern/versioning_270.c
2015-01-20Debug drawing for simulations, to aid in visualizing abstract data suchLukas Tönne
as forces, velocities, contact points etc. This uses a hash table to store debug elements (dots, lines, vectors at this point). The hash table allows continuous display of elements that are generated only in certain time steps, e.g. contact points, while avoiding massive memory allocation. In any case, this system is really a development feature, but very helpful in finding issues with the internal solver data.
2015-01-20Implemented internal hair pressure to prevent hair from collapsing inLukas Tönne
on itself. This uses the same voxel structure as the hair smoothing algorithm. A slightly different method was suggested in the original paper (Volumetric Methods for Simulation and Rendering of Hair), but this is based on directing hair based on a target density, which is another way of implementing global goals. Our own approach is to define a pressure threshold above which the hair is repelled in the density gradient direction to simulate internal pressure from collisions.
2015-01-20Support for various data properties of the hair grid in the voxelLukas Tönne
texture.
2015-01-20New voxel texture mode "Hair", for displaying the internal hair volumeLukas Tönne
structure as a texture. This is mostly a debugging feature that may be removed again later.
2015-01-19I18n tools minor update.Bastien Montagne
2015-01-19Viewport: Add adjustable safe areas, 3d-view & VSECampbell Barton
Also adds safe-area presets. D325 by Diego Gangl with own edits.
2015-01-19RNA/API: name outliner sort option like UIListCampbell Barton
2015-01-19Outliner: Make alphabetical sorting optionaljulianeisel
A new option to the Outliner's View menu is added to enable/disable sorting of items.
2015-01-16Show buttons for particle system modifiers render/viewport togglesLukas Tönne
in the particle buttons list. This is much more convenient than having to switch back and forth between particle and modifier buttons. The modifier box for particles does not contain anything useful other than these two toggles anyway.
2015-01-15Review for the gsoc UI cleanup for the BGEInes Almeida
Review for the gsoc UI cleanup for the BGE. Surviving commits are: - Game Engine UI cleanup: removing Scene/Active Clip - Game Engine UI cleanup: Adding missing 'not available' labels in empty panels The rest was reverted for being subjective and polluting the UI code with an if for every button: http://wiki.blender.org/index.php/User:Brita/GSoC_BGE_cleanup_and_support/reports/final#UI_Review Reviewers: kupoman Subscribers: dingto Projects: #game_ui Differential Revision: https://developer.blender.org/D982
2015-01-14Cycles: Adding field-of-view options to the equirectangular panorama cameraLukas Stockner
This patch adds the option to set minimum/maximum latitude/longitude values for the equirectangular panorama camera in Cycles, as discussed in T34400. The separate functions in kernel_projection.h are needed because the regular ones are also used as helper functions for environment map sampling. Reviewers: #cycles, sergey Reviewed By: #cycles, sergey Subscribers: dingto, sergey, brecht Differential Revision: https://developer.blender.org/D960
2015-01-14PyAPI: name OrientationHelper (io prefix in module name already)Campbell Barton
2015-01-14Py IO utils: Add helper class to handle orientation (axes).Bastien Montagne
Also 'fix' T43243, since we can easily add a common better behavior now when both axis settings are incompatible, by systematically changing the other axis. Will update 'main' addons in next commit, contrib ones I'll let to the authors (old behavior is still possible anyway).
2015-01-14UI: Eyedropper for view-depthCampbell Barton
Currently this is mainly useful for picking camera DOF depth. - EKey over a distance field prompts you to pick a depth from the camera. - WKey (Specials menu) to pick from the 3D view (when the active camera's selected).
2015-01-13FileBrowser: minor tweak/UI consistency: add 'viewzoom' icon to search field.Bastien Montagne
2015-01-13FileBrowser: Add an 'hidden file' icon, and use it instead of named checkbox ↵Bastien Montagne
for 'show hidden' param.
2015-01-13Pataz-Gooseberry Request: Limits on Volume Preservation for Spline IKJoshua Leung
This commit adds a new type of volume preservation mode to Spline IK which makes it possible to set limits on the minimum and maximum scaling of bone "fatness". * The old volume preseving mode has been kept but renamed, to avoid breaking old rigs. "Volume Presevation" uses the new method, while "Inverse Preservation" is the old one. * The code and settings for this new xz scale mode are directly lifted from the improved Stretch To constraint
2015-01-12correct last commit: less cryptic camera checkCampbell Barton
2015-01-12Fix T43206: region_2d_to_origin_3d has no ortho offsetCampbell Barton
With ortho views the value would be aligned to the 'rv3d->ofs' Now it works in camera ortho & regular ortho views.
2015-01-12Second try to fix missing previews of mat/tex/etc. in .blend files.Bastien Montagne
This time, it's a dedicated operator user has to run before saving the file. And it recursively check all IDs linked from each scene, therefore rendering materials etc. previews using a scene they are used in. Note the renderengine issue is not completely addressed this way (existing code for icon previews seems to ignore completely other engines, and IDs not linked anywhere (fake-user ones) will be rendered with current scene's engine as fallback, also you can get a material linked to an hidden object in a scene, etc.). Reviewers: sergey, campbellbarton Reviewed By: campbellbarton Differential Revision: https://developer.blender.org/D980
2015-01-12Fix typo in OCIO configuration fileSebastian Koenig
2015-01-11Transfer data: cleanup: Remove 'vertex_group_transfer_weight' operator.Bastien Montagne
We can now use 'generic' data transfer instead. Note new one is not an exact replacement, it should be able to do everyting old op could do though, and more.
2015-01-10Transfer data: add modifier.Bastien Montagne
Not much to add, modifier uses same code as operator basically, only key difference is that modifier will never create data layers itself, you have to use dedicated operator for that.
2015-01-09Transfer Data: add main core code and operators.Bastien Montagne
This add code needed to map a CD data layout from source mesh towards destination one, and code needed to actually transfer data, using BKE's mesh remap generated data. This allows to transfer most CD layers (vgroups, vcols, uvs...) as well as fake, boolean ones (like smooth/sharp edges/faces, etc.). Some types are not yet transferable, mainly shape keys, this is known TODO. Data transfer can also use some advanced mixing in some cases (mostly, vgroups and vcols). Notes: * New transfer operators transfer data from active object towards selected ones. * Modifier will be committed separately. * Old weight transfer code (for vgroups) is kept for now, mostly because it is the only usable one in weightpaint mode (it transfers from selected object to active one, this is not sensible in Object mode, but needed in WeightPaint one). This will be addressed soon. Again, heavily reviewed and enhanced by Campbell, thanks!
2015-01-09Gooseberry animation request: Paste flipped pose in actionAntony Riakiotakis
and graph editor. This was a tricky commit that was not so straightforward to make work. The information for bones is not easy to come by in the animation curves, however we do have some string manipulation tricks to make it happen. Testing in gooseberry worked for the rigs there, commiting to master now
2015-01-06Submodules: Make them pointing to the master branchSergey Sharybin
Otherwise it gives all sort of weird and wonderful artifacts.
2015-01-06Remove slurph shape-key featureCampbell Barton
This is an old option which wasn't working in over a year without complaint.
2015-01-06Point submodules ot latest release tagsSergey Sharybin
2015-01-06Expose viewer panels also when backdrop is active. Allows to selectAntony Riakiotakis
proxy size, render type etc.
2015-01-06Cycles: Repot CPU and CUDA capabilities to system info operatorSergey Sharybin
For CPU it gives available instructions set (SSE, AVX and so). For GPU CUDA it reports most of the attribute values returned by cuDeviceGetAttribute(). Ideally we need to only use set of those which are driver-specific (so we don't clutter system info with values which we can get from GPU specifications and be sure they stay the same because driver can't affect on them).