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
2017-10-06Merge branch 'master' into blender28Campbell Barton
2017-10-05Sculpt Mode: 2D falloff optionCampbell Barton
This makes brush influence into a tube instead of a sphere. It can be used along the outline of a mesh to adjust it's silhouette. Note that all this takes advantage of changes from vertex paint, from testing this seems useful so exposing from the brush options.
2017-10-05Vertex Paint: apply when cursor isn't over facesCampbell Barton
This behavior makes more sense for sculpt, less so for painting. Restores non PBVH behavior, adding `BKE_pbvh_find_nearest_to_ray` - similar to ray-cast except it finds the closest point on the surface.
2017-10-05Cleanup: rename dist -> depthCampbell Barton
Prepare to add code that stores distance to the ray, avoid confusion.
2017-09-27Merge branch 'master' into blender2.8Campbell Barton
2017-09-27Vertex/Weight Paint: Use PBVH for paintingCampbell Barton
2016 GSOC project by @nathanvollmer, see D2150 - Mirrored painting and radial symmetry, like in sculpt mode. - Volume based splash prevention, which avoids painting vertices far away from the 3D brush location. - Normal based splash prevention, which avoids painting vertices with normals opposite the normal at the 3D brush location. - Blur mode now uses a nearest neighbor average. - Average mode, which averages the color/weight of the vertices within the brush - Smudge mode, which pulls the colors/weights along the direction of the brush - RGB^2 color blending, which gives a more accurate blend between two colors - multithreading support. (PBVH leaves are painted in parallel.) - Foreground/background color picker in vertex paint
2017-06-19Gawain API naming refactorCampbell Barton
Use consistent prefix for gawain API names as well as some abbreviations to avoid over-long names, see: D2678
2017-05-12Sculpt: Move sculpt drawing to engines.Clément Foucault
Only mask are handled by sculpt mode engine and are multiplied on top of the render. There is room for improvement: - Shaded meshes don't have correct tangents or uvs. - Masks are in range 0.8 - 0.2 thus always darkening at least 20% the render. - It only uses the first material slot of the mesh.
2017-05-11DWM: Use draw manager for sculpt PBVH drawingCampbell Barton
Add a shader-group type to draw generated geometry by running a callback.
2016-02-13Optimize sculpt undo, avoid redundant updatesCampbell Barton
On undo, sculpting regular meshes would update _all_ GPU VBO's. Avoiding the update gives noticeably faster undo. This is also a fix/workaround for strange behavior with NVidia's driver (T47232), Where locking and unlocking all buffers for updating slows down redraw speed permanently after the first undo. However the problem isn't avoided entirely since a single brush stroke might modify most of the mesh.
2015-11-26cleanup: C99 and vertex array commentsMike Erwin
GPU_buffer no longer has a fallback to client vertex arrays, so remove comments about it. Changed a few internal structs/function interfaces to use bool where appropriate. Use for-loop scope and flexible declaration placement. PBVH does the same thing but needs ~150 fewer lines to do it! The change to BLI_ghashIterator_init is admittedly hackish but makes GHASH_ITER_INDEX nicer to use.
2015-07-16Split ray_face_intersection into quad/tri versionsCampbell Barton
Since many callers only need a single triangle
2015-07-16Add tessellation data to DerivedMesh (LoopTri)Campbell Barton
This stores loop indices into the loop array giving easier acess to data such as vertex-colors and UV's, removing the need to store an MFace duplicate of custom-data. This doesn't yet move all internal code from MFace to LoopTri just yet. Only applies to: - opengl drawing - sculpting (pbvh) - vertex/weight paint Thanks to @psy-fi for review, fixes and improvements to drawing!
2015-07-14Display optimizations part 1.Antony Riakiotakis
This patch changes the way we draw meshes by introducing indexed drawing. This makes it possible to easily upload and rearrange faces ad lib according to any criteria. Currently we use material sorting but textured sorting and hiding will be added to optimize textured drawing and skip per face testing. It also adds support for vertex buffers for subsurf modifiers (Except from GLSL drawing), making drawing of subsurf much faster without need for bogus modifiers. Tests show that we gain approximately 20-25% performance by that for solid mode drawing with up to 50% gains for material drawing. Textured drawing should also have a small performance gain, but more substantial optimizations are possible there. Reviewers: campbellbarton Differential Revision: https://developer.blender.org/D1406
2015-07-11Use const for sculpt varsCampbell Barton
resolves building with gcc4.9
2015-07-10Cleanup: use const for mesh functionsCampbell Barton
2015-05-27Fix T44745 non manifold edges of mesh do not work when smoothing inAntony Riakiotakis
multires. Code had special guards for such edges to stop this from happening. I don't see why this is needed though since code above assigns smoothed positions for all vertices in the grid. After removing the guards I saw that this in fact was the only place where grd adjacency was used, so I completely removed it.
2015-05-18Fix T44553: Dyntopo ignores front-face optionCampbell Barton
When 'Front Faces' brush option was enabled, dyntop would still adjust detail on back-faces.
2015-04-30Cleanup: styleCampbell Barton
2015-04-17Fix T44390: Clay brush weirdness part-1Campbell Barton
Clay brush had a feedback loop with dyntopo, getting the plane from the cursor center didn't support original data.
2015-04-15dyntopo: don't allocate tessfaces while sculptingCampbell Barton
Tessellation data isn't used for drawing or sculpting. This frees up some memory ~approx 10% in own tests. Also slight spee-up since it avoids calculating it in the first place.
2015-03-28Cleanup: redundant struct declarationsCampbell Barton
2014-10-10Cleanup: use bool and const argsCampbell Barton
2014-06-13BLI_bitmap: rename macrosCampbell Barton
- BLI_BITMAP_SET -> BLI_BITMAP_ENABLE - BLI_BITMAP_CLEAR -> BLI_BITMAP_DISABLE - BLI_BITMAP_GET -> BLI_BITMAP_TEST - BLI_BITMAP_MODIFY -> BLI_BITMAP_SET
2014-05-29Fix T40381 and revert previous commit.Antony Riakiotakis
Looks like the normal update flag is used internally in the modifier itself. So as a workaround just pass normal update to the nodes when flood filling
2014-05-07Style cleanupCampbell Barton
2014-05-05Hidden PBVH nodes:Antony Riakiotakis
Set hidden when rebuilding the PBVH tree if all primitives are hidden.
2014-04-21PBVH: replace ghash with gset for storing unique facesCampbell Barton
2014-04-17Refactor to Dyntopo node customdata commit.Antony Riakiotakis
Don't use a dedicated node layer but use temporary int layer instead. Works like a charm as long as we are careful resetting the layer when needed (after pbvh clearing and always after bmesh has been filled in undo) Tip by Campbell, thanks!
2014-04-17Code cleanup: use bools for DMCampbell Barton
2014-04-10Dyntopo: Minor display optimization.Antony Riakiotakis
While hiding, flush the hidden flags to the faces. This avoids iterating through all the loops while updating the GPU buffers.
2014-04-07Code cleanup: remove unused functions and convert int -> boolCampbell Barton
2014-04-01Code cleanup: remove TRUE/FALSE & WITH_BOOL_COMPAT defineCampbell Barton
2014-03-24Code Cleanup: PBVH, avoid sqrt and use bool for raycast functionsCampbell Barton
2014-03-23Detail sampling operatorAntony Riakiotakis
Located on topology panel. To use just click on button and click on mesh. Operator will just use the dimensions of the triangles below to set the constant detail setting. Also changed pair of scale/detail size with nice separate float percentage value.
2014-03-22Flood fill for dyntopo constant detail mode.Antony Riakiotakis
Nothing spectacular here, fill tools are easy. Just take the dyntopo code and repeat until nothing more to do. The tool can be located in the dyntopo panel when the dyntopo constant detail is on. Also added scale factor for constant detail. This may change when detail sampling gets in, I am not very happy with having two numbers here, still it will give some more control for now.
2014-03-07Fix crash when changing and using between layer and other brushes inAntony Riakiotakis
dyntopo Layer brush would not invalidate the layer_disp arrays in dyntopo mode, checking only for the existence of the array. This means that if a tool resized the node due to topology changes, the layer brush code could index (and write!) out of bounds in the array. Solution is to invalidate the layer data prior to each stroke in dyntopo.
2014-02-19MSVC: improve warnings for scons and cmakeCampbell Barton
Some int/float conversion warnings were disabled by buildsystems but re-enabled by BLI_winstuff.h, the warnigns relate to conversions not considered issues on other systems so better just quiet them.
2014-02-03Code cleanup: use bools where possibleCampbell Barton
2013-12-18Comment fix to previous commitAntony Riakiotakis
2013-12-18Fix T37177, sculpting can act on opposite side of mesh in orthographic camera.Antony Riakiotakis
Summary: Issue here most probably is that the start point in ray-casting is too far away from the mesh. As a result the triangle intersection code can sometimes miss the ray intersection. To solve this, we project the ray segment to the boundary of the root node. Reviewers: brecht, sergey, campbellbarton Reviewed By: brecht Maniphest Tasks: T37177 Differential Revision: http://developer.blender.org/D115
2013-11-16Code cleanup: Use different redraw options for sculpt mask operators.Antony Riakiotakis
Current redraw options also did an unnecessary normal recalculation on updated nodes. Also, for the box and lasso mask only push an undo node if any vertex has actually been influenced.
2013-08-28avoid calling CustomData_bmesh_get to get CD_PAINT_MASK per vertex while ↵Campbell Barton
sculpting, store offset directly.
2013-08-26replace hashes with sets where possible.Campbell Barton
2013-07-23remove the pointer from BLI_bitmap's typedef, Campbell Barton
hides that an arg passed is really an array which may be modified by other functions.
2013-05-30remove redundant includes from cmake and scons.Campbell Barton
2013-05-08rename BLI_ghashIterator_notDone() -> BLI_ghashIterator_done()Campbell Barton
was renamed fairly recently but other similar iterators not negated like this, would prefer to keep it as it was
2013-03-26style cleanup:Campbell Barton
also rename mesh_getVertexCos() --> BKE_mesh_vertexCos_get() to match curve function.
2013-03-07Change !BLI_ghashIterator_isDone to BLI_ghashIterator_notDone. It isAntony Riakiotakis
always used in that context so we can at least avoid reverting it twice :p.
2013-01-20Update object bounding box during sculptNicholas Bishop
Fixes the sculpt object being incorrectly clipped during drawing due to an out-of-date bounding box making it seem that the object had gone outside the view. Added a BKE_pbvh function to get the top-level bounding box. In sculpt_flush_update(), where the PBVH bounds are updated, the result is copied to the object's bounding box. Fixes bug [#33790] projects.blender.org/tracker/?func=detail&aid=33790&group_id=9&atid=498