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-04Separate scene simplification into viewport and renderSergey Sharybin
This way it is possible to have viewport simplification bumped all the way up, making viewport really responsive but still have final render to use highest subdivision possible. Reviewers: lukastoenne, campbellbarton, dingto Reviewed By: campbellbarton, dingto Subscribers: dingto, nutel, eyecandy, venomgfx Differential Revision: https://developer.blender.org/D1273
2015-04-28Fix T44530 UV islands fail on subsurf after mirror modifier.Antony Riakiotakis
Caused by own commit that changed island detection code. In the case of modifiers we don't want to take winding information into account, but left the code since there are use cases (like painting) which could use this.
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-02-05Add Custom Loop Normals.Bastien Montagne
This is the core code for it, tools (datatransfer and modifier) will come in next commits). RNA api is already there, though. See the code for details, but basically, we define, for each 'smooth fan' (which is a set of adjacent loops around a same vertex that are smooth, i.e. have a single same normal), a 'loop normal space' (or lnor space), using auto-computed normal and relevant edges, and store custom normal as two angular factors inside that space. This allows to have custom normals 'following' deformations of the geometry, and to only save two shorts per loop in new clnor CDLayer. Normal manipulation (editing, mixing, interpolating, etc.) shall always happen with plain 3D vectors normals, and be converted back into storage format at the end. Clnor computation has also been threaded (at least for Mesh case, not for BMesh), since the process can be rather heavy with high poly meshes. Also, bumping subversion, and fix mess in 2.70 versioning code.
2015-01-20De-duplicate large block of shared code for GL vert attribsNicholas Bishop
Code in ccgdm_draw_attrib_vertex() was entirely the same as the top portion of the code in cddm_draw_attrib_vertex(). Moved this code to a new function, DM_draw_attrib_vertex(). ccgdm_draw_attrib_vertex() was removed in favor of calling DM_draw_attrib_vertex(). cddm_draw_attrib_vertex() still does a couple extra things, so it still exists but calls DM_draw_attrib_vertex(). In the interest of easy code review, no changes made to the code in DM_draw_attrib_vertex() other than the new name and an added comment. Reviewers: campbellbarton Reviewed By: campbellbarton Differential Revision: https://developer.blender.org/D1010
2015-01-13Cleanup: fixes for building with recent clangCampbell Barton
2014-12-10Fix T42748: Crash in subsurf, threaded accessCampbell Barton
Allocating the iterator from a BLI_memarena wasn't threadsafe. Change the API to use stack memory for iterators. Thanks to @mont29 for finding exact cause of the bug.
2014-11-29Cleanup: unused headersCampbell Barton
2014-11-27Addition/correction to previous commit:Antony Riakiotakis
subsurf needs the same modifications in its derived mesh function or materials don't get updated at all anymore.
2014-11-27Fix T42653, solidify modifier not displaying correctly under edit mode.Antony Riakiotakis
Basically, our drawing code assumed we always use the edit mesh materials, which can be different from the derived mesh materials in modifiers doing overrides. We usually we want to use the derived mesh when it is available instead. There are two fixes here for both solid and textured mode. Unfortunately the fixes do not help to make the display code less labyrinthian but I expect this "should work" (tm and famous last words) Solid mode fix is 95% from Bastien, thanks!
2014-10-18Fix T42281, crash in subsurf with texture painting.Antony Riakiotakis
2014-10-08Ghost Context RefactorJason Wilkins
https://developer.blender.org/D643 Separates graphics context creation from window code in Ghost so that they can vary separately.
2014-09-02Fix T41682.Antony Riakiotakis
Bring back shading in texture painting. This works now but it uses 3 texture units instead of two. Most GPUs of DirectX 8 (OpenGL 1.4 should cover that) functionality even should have those, but some old GPUs might not work with that. In any case, I hope we will be moving to OpenGL 2.1 requirement soon anyway where 4-8 texture units are usually the norm.
2014-07-21GSOC 2013 paintAntony Riakiotakis
Yep, at last it's here! There are a few minor issues remaining but development can go on in master after discussion at blender institute. For full list of features see: http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.72/Painting Thanks to Sergey and Campbell for the extensive review and to the countless artists that have given their input and reported issues during development.
2014-06-18Fix memory leaks in subsurfCampbell 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-06-13GSet, GHash: Add BLI_gset_add, since its common to add members to a setCampbell Barton
also rename BLI_edgeset_reinsert -> BLI_edgeset_add, in this case its the same.
2014-06-02Fix T40457: Subsurf modifier with Freestyle edgesSergey Sharybin
You can't use ORIG index as an index to copy CD from source DM.
2014-05-03Fix T39997: Multiple boolean modifiers sharing the same right operand crashesSergey Sharybin
The issue was caused by the temporary CD layers being allocated for subsurf meshes, same as we've got back in 881fb43. In the long run this temporary storage is to be re-considered, but it'll also imply re-considering of the Derivedmesh interaction as well. For now let's use a simpler solution which is forbidding modifiers to call getArray for other objects' derivedMeshes but use an API calls which would allocate local copy of the data preventing race condition of shared data in DM.
2014-04-30Code cleanup: remove unused includesCampbell Barton
Opted to keep includes if they are used indirectly (even if removing is possible).
2014-04-23Fix T39839: Applying the subsurf modifier deletes the freestyle edge marksCampbell Barton
2014-04-23Subsurf: minor optimization setting edge origindexCampbell Barton
2014-04-23Fix T39781: Autosmooth feature: erroneously showing hidden vertices' normals ↵Bastien Montagne
too when in "vertex per face" display So, turned out after all we need a foreachmapped helper for loops as well... :/ CDDM and EBDM were reasonably simple, but I fought hours with CCGDM (subsurf) to find only a bad working solution (see D478). So I fallback to a code similar to CDDM one. Probably not nice for performances, but loops and subsurf are not matching well... Reviewers: campbellbarton CC: brecht Differential Revision: https://developer.blender.org/D478
2014-04-21Split Normals: more fix for EditMode shading and modifiers (subsurf special ↵Bastien Montagne
case, this time). CCGDM did not generate a valid tessellated loop normals CD layer...
2014-04-17Code cleanup: use bools for DMCampbell Barton
2014-04-13Split Normals I (3/5): Add 3Dview shading support of split normals.Bastien Montagne
Mostly monkey coding in gpu ("modern" VBO drawing) and DM variants ("legacy" drawing) code... Reviewers: brecht Reviewed By: brecht CC: campbellbarton Differential Revision: https://developer.blender.org/D367
2014-04-13Split Normals I (1/5): basis for split normals (nearly nothing user-visible ↵Bastien Montagne
here): * Add a new calcLoopNormals function to DerivedMesh struct, and implement it for CDDM and CCGDM (subsurf). EditDerivedBMesh (edit mode DM) only gets a dummy one in this commit. * Add a tessellated version of CD_LOOPNORMAL layer (CD_TESSLOOPNORMAL), with relevant code to handle it (tessellation, rna access, etc.). * Change auto_smooth options of Mesh (angle now in radian internaly, and toggle is now used to enable/disable split normals in DM creation process). Note BI render code is not touched here, hence its behavior regarding this option is now incoherent, will be addressed in a separate commit. Reviewers: campbellbarton CC: brecht Differential Revision: https://developer.blender.org/D365
2014-04-01Make matcaps suck lessAntony Riakiotakis
This commit does various changes for matcaps: One is taking advantage of drawing with pbvh (which would only happen with dyntopo previously) and drawing with partial redraw during sculpting. The second one is support for masks. To make this work in the special case of multires, which uses flat shading, I use the only available flat shaded builtins in OpenGL 2.0 which are color and secondary color. Abusing colors in that way is also essential for flat shading to work if we are to use pbvh draw in multires, since it is the color that is being interpolated flatly, not the normal (which can only interpolated smoothly). The pbvh drawing code for multires used last triangle element's normal to compute the shading which would only produce smooth results. This could change if we did the shading in the vertex shader for flat shaded primitives, but this is more complex and makes it harder to have one shader to rule the mole. Also increased the brightness of the default diffuse color for sculpting. This should be useful since artists like to tweak the lighting settings and it will give them the full dynamic range of the lights, but also it helps with correct brightness of sculpted matcaps. Reviewers: brecht Differential Revision: https://developer.blender.org/D435
2014-04-01Code cleanup: remove TRUE/FALSE & WITH_BOOL_COMPAT defineCampbell Barton
2014-03-15Code cleanup: use r_ prefix for return argsCampbell Barton
2014-01-12Style Cleanup: whitespaceCampbell Barton
2013-12-26Code Cleanup: remove object arg to CDDM_from_mesh mesh_create_derivedCampbell Barton
2013-12-12Code Cleanup: move mesh mapping functions into their own file/headerCampbell Barton
2013-10-17Fix for GCC bing stupid and not casting float*[3] to const float*[3] without ↵Sergey Sharybin
a wanring :S
2013-10-17Fix #37109: missing cycles texture display in edit mode.Brecht Van Lommel
My previous fix for uninitialized texture coordinates was not working well, and in fact there was a bigger issue with GLSL drawing and missing attributes with immediate draw mode. Now it will explicitly pass zero rather than having it use whatever value was set last.
2013-10-14code cleanup: remove duplicate assignmentsCampbell Barton
2013-10-10add MEM_SIZE_OPTIMAL to avoid memory fragmentation & waste lost to slop-space.Campbell Barton
2013-10-01Mark some CCG funcrions as inlinedSergey Sharybin
This seems to be giving speedup up to 10% in own tests. -- svn merge -r60104:60105 ^/branches/soc-2013-depsgraph_mt
2013-09-12more localized fix for [#36299], only changes behavior for subsurf with orco ↵Campbell Barton
in editmode
2013-09-04debug option for modifier stack calculation USE_MODIFIER_VALIDATE,Campbell Barton
checks that every modifier gives a valid mesh (very slow) - so off by default even in debug mode.
2013-08-26replace hashes with sets where possible.Campbell Barton
2013-08-24use reserve argument for more edgehashsCampbell Barton
2013-08-24when the size of an edgehash is known or can be guessed,Campbell Barton
pass in the argument to reserve the size.
2013-08-24edge hash: take an arg for the guarded-malloc string (as ghash does)Campbell Barton
2013-08-07code cleanup: more confusion with 0/NULL/falseCampbell 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-07-23optimization: only calculate the normals for passing into derivedMesh ↵Campbell Barton
foreachMappedVert/foreachMappedFaceCenter when needed, this means in editmode with wire draw, face and vertex normals don't have to be calculated at all. in most cases the normals are not used so add a flag that makes calculating them only for functions that need them. also fix face normal calculation for CDDM, was using quad calculation for ngons too.
2013-07-19code cleanup: use boolean for derived mesh face test functionCampbell Barton
2013-07-03fix for own error in 57226, broke subsurf-uvCampbell Barton
2013-06-14fix for building c++ rna api with recently added smoothgroup api call.Campbell Barton