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-08-26Remove unused function NewBooleanMeshSergey Sharybin
2013-08-07code cleanup: more zero as NULL pointers.Campbell Barton
2013-05-30remove CD_MASK_NORMAL from CD_MASK_DERIVEDMESH, bmesh merge included this ↵Campbell Barton
but its not needed. Now add asserts to make sure this layer is only added once the modifier stack has been calculated. this saves normal layer being calculated whenver vertex normals need updating.
2013-05-30modifier stack: lazy initialize normalsCampbell Barton
many modifiers were calculating normals, when those normals were ignored by the next modifier. now flag normals as dirty and recalculate for modifiers that set use `dependsOnNormals()` callback. Quick test on mesh with 12 modifiers (mostly build type), calculated normals 6 times, now it only runs once - so this will give some speedup too.
2013-05-26BLI_math rename functions:Campbell Barton
- mult_m4_m4m4 -> mul_m4_m4m4 - mult_m3_m3m4 -> mul_m3_m3m4 these temporary names were used to avoid problems when argument order was switched.
2013-05-05Fix #35209: cycles generated texture coordinates did not stick to deforming ↵Brecht Van Lommel
meshes.
2013-03-22code cleanup: use NULL rather then 0 for pointers, and make vars static ↵Campbell Barton
where possible. also found unintentionally defined enum/struct variables that where only meant to be defining the type.
2013-02-05Fix #34040: Moving Normal Node with enabled Cycles Material Preview crashesSergey Sharybin
Issue was caused by couple of circumstances: - Normal Map node requires tesselated faces to compute tangent space - All temporary meshes needed for Cycles export were adding to G.main - Undo pushes would temporary set meshes tessfaces to NULL - Moving node will cause undo push and tree re-evaluate fr preview All this leads to threading conflict between preview render and undo system. Solved it in way that all temporary meshes are adding to that exact Main which was passed to Cycles via BlendData. This required couple of mechanic changes like adding extra parameter to *_add() functions and adding some *_ex() functions to make it possible RNA adds objects to Main passed to new() RNA function. This was tricky to pass Main to RNA function and IMO that's not so nice to pass main to function, so ended up with such decision: - Object.to_mesh() will add temp mesh to G.main - Added Main.meshes.new_from_object() which does the same as to_mesh, but adds temporary mesh to specified Main. So now all temporary meshes needed for preview render would be added to preview_main which does not conflict with undo pushes. Viewport render shall not be an issue because object sync happens from main thread in this case. It could be some issues with final render, but that's not so much likely to happen, so shall be fine. Thanks to Brecht for review!
2012-12-11define the size of matrix args for both rows/cols.Campbell Barton
2012-10-30remove CD_POLYINDEX customdata layer:Campbell Barton
reported as [#29376] BMESH_TODO: remove tessface CD_ORIGINDEX layer for a single mesh there could be 3 origindex mappings stored, one on the polygons and 2 on the tessfaces. (CD_POLYINDEX and CD_ORIGINDEX). as Andrew suggests, now tessfaces (which are really a cache of polygons), using origindex to point to polygons on the same derived mesh, and polygons only store the original index values.
2012-08-12new parameter in assign_material() to specify where material shall be ↵Gaia Clary
assigned: object, obdata, by userpref(default) (as discussed with ideasman_42)
2012-07-08Fixing a typo!Bastien Montagne
2012-07-08style cleanupCampbell Barton
2012-05-16Code cleanup: simplify standard GHash creation.Nicholas Bishop
Added four new functions as shortcuts to creating GHashes that use the standard ptr/str/int/pair hash and compare functions. GHash *BLI_ghash_ptr_new(const char *info); GHash *BLI_ghash_str_new(const char *info); GHash *BLI_ghash_int_new(const char *info); GHash *BLI_ghash_pair_new(const char *info); Replaced almost all occurrences of BLI_ghash_new() with one of the above functions.
2012-05-06style cleanup: modifiersCampbell Barton
2012-05-05code cleanup: naming - pose/armature/image Campbell Barton
also use ..._find_name(..., name) rather then ..._find_named(..., name) --- both were used.
2012-05-05code cleanup: function naming, use BKE_*type* prefix.Campbell Barton
2012-05-04code cleanup: double promotion & some style cleanupCampbell Barton
2012-04-29style cleanup: whitespace / commasCampbell Barton
2012-04-03stule cleanup: edits for files which were recently cleaned up.Campbell Barton
2012-03-24style cleanup: follow style guide for formatting of if/for/while loops, and ↵Campbell Barton
else if's
2012-03-20real fix for booleans and face shading this time.Campbell Barton
CDDM_tessfaces_to_faces wasbt updating the polyindex (missed incrementing the polyindex pointer). also added an assert so non release builds will complain when CDDM_calc_edges_tessface() needs to run before CDDM_tessfaces_to_faces().
2012-03-20partial fix for bug where booleans were using invalid face/poly normals.Campbell Barton
the problem remains (though not quite as bad) but think this is because of a bug elsewhere.
2012-03-09style cleanup: comment blocksCampbell Barton
2012-03-06style cleanup, brackets in else/if, some indentation.Campbell Barton
2012-02-27style cleanup (mostly whitespace)Campbell Barton
2012-02-23Fix #30320: Shading issue with boolean modifierSergey Sharybin
Seems that after converting tessfaces into faces normals should be re-calculated. At least that's what happening in some other modifiers and what makes boolean work fine with smooth normals.
2012-01-30svn merge ^/trunk/blender -r43733:43751Campbell Barton
2012-01-27Fix #30000: Boolean modifier messing up multi materialSergey Sharybin
Issue was caused by resetting face's mat_nr to zero if there's no material map sent to ConvertCSGDescriptorsToDerivedMesh. In case of boolean modifier we can't use such map because we can't affect on materials present in object. So the only way which can give reasonable result is: - Dot change mat_nr for faces from left operand (they should be fine, because materials aren't deleting by modifier) - For faces from right operand check if needed material exists in left operand and if so, use it's index as new mat_nr. - If there are materials in right operand which doesn't exist in left operand, they'll be changed to first material from left operand.
2012-01-24correct error in recent merge.Campbell Barton
2012-01-24svn merge ^/trunk/blender -r43639:43664Campbell Barton
2012-01-24Fix #29965: Crash: Memory psys node array: end corruptSergey Sharybin
Original indices from right operand were used in boolean result derived mesh which lead to crash if right operand has got more entities (faces/edges/vertices) than left operand.
2012-01-23Fix #29934: New Carve library can't execute boolean operations in some casesSergey Sharybin
Issue was caused by left boolean operand consist of several intersecting manifolds which make Carve triangulator confused and which can't be resolved in general case. Added mesh pre-processing before actual applying boolean operator on it. This preprocessing applies union operation on intersecting manifolds of the same object so intersection edge loop with second object wouldn't confuse tesselator and correct result would be returned. Detecting of intersecting manifolds is based on AABB intersection check which leads to some extra union operation called, but it's possible to speed things up from Carve side so union operation of two not intersecting meshes would work faster. Additional condition for running union for manifold is this manifolds intersects AABB of second operand, so mesh topology wouldn't be changed at all in areas where there's definitely no intersection between operands. It might be improved so only manifolds which actually intersects second operand would be joined together, but it'll slow things down a bit and prefer to do it only if it'll be really a problem. Additional change is fixed memory leak when boolean operation fails to run - it was missed "delete" call if exception happens in Carve library. From side effects of this change might be named boolean operation between suzanne and another object: suzanne is consist of three intersecting open manifolds, so this new meshes preprocessing leads to missed eyes in result because of failure of merging two open manifolds. Don't think making suzanne work for all setups should really be a goal, it's a bit crappy mesh for CSG algorithms.
2012-01-06renameCampbell Barton
* CDDM_calc_edges --> CDDM_calc_edges_tessface * CDDM_calc_edges_poly --> CDDM_calc_edges
2012-01-03for modifiers that are stull creating MFaces - call CDDM_tessfaces_to_faces ↵Campbell Barton
rather then making an entire copy with CDDM_copy(result, 1)
2011-12-17svn merge ^/trunk/blender -r42669:42670Campbell Barton
2011-12-16Math lib: matrix multiplication order fix for two functions that wereBrecht Van Lommel
inconsistent with similar functions & math notation: mul_m4_m4m4(R, B, A) => mult_m4_m4m4(R, A, B) mul_m3_m3m4(R, B, A) => mult_m3_m3m4(R, A, B) For branch maintainers, it should be relatively simple to fix things manually, it's also possible run this script after merging to do automatic replacement: http://www.pasteall.org/27459/python
2011-10-24svn merge ^/trunk/blender -r41226:41227 .Campbell Barton
2011-10-24svn merge ^/trunk/blender -r41100:41150Campbell Barton
2011-10-23remove $Id: tags after discussion on the mailign list: ↵Campbell Barton
http://markmail.org/message/fp7ozcywxum3ar7n
2011-10-20BLI_ghash.h was including BLI_blenlib.h, remove from ghash header and ↵Campbell Barton
include in each file
2011-06-22Fix for boolean modifier:Geoffrey Bantle
---------------------------------------------- Patch for making faces stop dissapearing when using the boolean modifier submitted by howardt in IRC.
2011-04-15=bmesh= modifiers can now be applied with shapekeysJoseph Eagar
2011-02-27merge with/from trunk at r35190Joseph Eagar
2011-02-25doxygendoxygen: blender/modifiers tagged.Nathan Letwory
2011-02-23doxygen: prevent GPL license block from being parsed as doxygen comment.Nathan Letwory
2011-02-13many functions in blender are not marked static but should be.Campbell Barton
most local modifier,GPU,ImBuf and Interface functions are now static. also fixed an error were the fluid modifier definition and the header didnt have the same number of args.
2011-01-07split BKE_utildefines.h, now it only has blender specific defines like GS() ↵Campbell Barton
MAKE_ID, FILE_MAXDIR, moved the generic defines to BLI_utildefines.h. no functional changes.
2010-12-05Dependency graph: changed DAG_id_flush_update to DAG_id_tag_update. Now itBrecht Van Lommel
only tags the ID and does the actual flush/update delayed, before the next redraw. For objects the update was already delayed, just flushing wasn't yet. This should help performance in python and animation editors, by making calls to RNA property update quicker. Still need to add calls in a few places where this was previously avoided due to bad performance.
2010-09-04merge with trunk at r31523Joseph Eagar