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
2012-04-09use 'const float[3]' for derived mesh callback args.Campbell Barton
2012-03-21spelling cleanup: tesselate -> tessellate (last of these found)Campbell Barton
2012-03-19Fix [#30234] Various problems with CD layers and tesselation, related to ↵Bastien Montagne
modifiers stack. Should also fix [#30266], [#29451], and partly [#30316]. Here are the changes made by this commit: * It adds a "dirty" flag to DerivedMesh struct (for now, only DM_DIRTY_TESS_CDLAYERS, but more might be added as needed). * It adds a new func, DM_update_tessface_data, which assumes tessfaces themselves are valid, but updates tessellated customdata from their poly/loop counter parts. * At end of modstack, when valid tessellated faces are present in finaldm , but the cdlayers dirty flag is set, call that function (instead of recomputing the whole tessellation). * Edits to the codes concerned (UVProject, DynamicPaint, and Subsurf modifiers). * Also add to subsurf dm generation code the creation of a CD_POLYINDEX layer (mandatory for DM_update_tessface_data to work well, and imho all tessellated dm should have one). Note: some pieces of old code are just #if 0’ed, will clean them later.
2012-03-18spelling cleanupCampbell Barton
2012-03-17Reduce poly map memory usage (used by sculpt smooth brush.)Nicholas Bishop
Changed the create_vert_poly_map function to return a more compact structure. Memory saved will vary depending on the mesh, but typically it should be about one third of the old size.
2012-03-14Add DerivedMesh.gridHidden and CCGDM implementation.Nicholas Bishop
2012-03-11remove Object member from BMesh struct - was only used for undo and ↵Campbell Barton
BMEditMesh already stores an object pointer. also fix for own mistake with mesh conversion refactor, shape key index was off by 1 when switching editmode.
2012-03-09style cleanup: spelling.Campbell Barton
also remove large, duplicate comments from sunsky.h
2012-03-08Code cleanup: use named values for options in DerivedMesh drawing.Nicholas Bishop
The DMSetDrawOptions[Tex] callbacks return 0 (skip), 1 (draw), or 2 (either stipple or skip mcols.) In the CDDM, EDDM, and CCGDM draw functions, as well as the callbacks in drawmesh/drawobject, replace these numbers with values from an enum, DMDrawOptions.
2012-03-07Code cleanup: simplify the DerivedMesh.drawMappedFaces interface.Nicholas Bishop
This function pointer's 'setDrawOptions' parameter took a slightly different type than the other drawing callbacks. In particular, it could set a 'drawSmooth' value to indicate that smoothing should always be enabled, overriding the face flag. However, all callbacks either did not set this value, or set it unconditionally to 1. Replaced this by adding a new 'flag' parameter to drawFacesMapped, which can be set to DM_DRAW_ALWAYS_SMOOTH where appropriate. Also removed the 'useColors' parameter and replaced it with another flag value, DM_DRAW_USE_COLORS. Removed the 'wpaint__setSolidDrawOptions' callback, was only being used to set the shading to smooth.
2012-03-07Code cleanup: use typedefs for DerivedMesh drawing callbacks.Nicholas Bishop
There are still fairly bewildering set of callbacks being tossed around, but it's at least a little less verbose now.
2012-03-06Draw individual face's material and shading correctly in the PBVH.Nicholas Bishop
Previously, the shading and material was set once per PBVHNode when drawing. This is still the case, but PBVHNodes are now built to contain only one material and shading mode. This is done with an extra partitioning step; once the number of primitives in the node falls below the PBVH leaf limit, it's primitives are checked for matching materials. If more than one material or shading mode is present in the node, it is split and partitioned (partitioned by material rather than 3D location.) Given a sufficiently 'annoying' input, like a dense mesh with thousands of materials randomly scattered across it, this could greatly increase PBVH build time (since nodes might end up containing a single primitive), but in general this shouldn't come up. In order to support materials for grids, the CCGDM is building another grid array (of DMFaceMat structs). This could be used to replace CCGDM.faceFlag for some small memory savings (TODO).
2012-03-06Code cleanup: remove unused drawFacesColored from DerivedMesh.Nicholas Bishop
This function pointer isn't called anymore, so removing it and the cddm/ccgdm/gpu code associated with it.
2012-03-04style cleanup / comment formatting for bli/bke/bmeshCampbell Barton
2012-03-02style cleanupCampbell Barton
- spelling - turns out we had tessellation spelt wrong all over. - use \directive for doxy (not @directive) - remove BLI_sparsemap.h - was from bmesh merge IIRC but entire file commented and not used.
2012-02-29Code Cleanup: remove non existing function declarations.Campbell Barton
added some missing functions too - which are not used yep but should be there for api completeness. * CDDM_set_mloop * CDDM_set_mpoly * BLI_mempool_count
2012-02-28Remove DerivedMesh.getFaceMap and create_vert_face_map().Nicholas Bishop
Not used anymore, both have BMesh replacements (DerivedMesh.getPolyMap and create_vert_poly_map.)
2012-02-18svn merge ^/trunk/blender -r44189:44204Campbell Barton
2012-02-17unify include guard defines, __$FILENAME__Campbell Barton
without the underscores these clogged up the namespace for autocompleation which was annoying.
2012-02-12bmesh minor refactorCampbell Barton
* add DM_to_bmesh_ex, DM_to_bmesh for converting a derived mesh to a BMesh (rather than a BMEditMesh) * have a generic variable for allocsize: bm_mesh_allocsize_default, rather than copying the values about.
2012-02-12rename CDDM_To_BMesh to DM_to_editbmesh, since theres no requirement forCampbell Barton
the input to be a CDDM. remove conversions to CDDM for edge split and bevel (will give some speedup).
2012-02-05support for 'origspace' data layer - used for hair on subsurf mesh.Campbell Barton
currently only works for 3/4 sided faces.
2012-02-05add function for getting a polygon map: dm->getPolyMap(ob, dm).Campbell Barton
polygon version of dm->getFaceMap(ob, dm) sculpt uses this for checking connectivity.
2012-01-23Merged with trunk (-r43609:43611): updated modifier preview.Bastien Montagne
Noted preview code for DynamicPaint is currently disabled, will see if I can re-enable it…
2012-01-22Add weight preview to WeightVG modifiers, and first, simple/basic refactor ↵Bastien Montagne
of how modifiers can generate preview. User side: * Preview for DynamicPaint should keep the same behavior (for now). Weight preview should be somawhat quicker, though. * Preview for WeightVG modifiers is only active in WeightPaint mode, and if the affected vgroup is the active one. * Last active preview modifier in stack wins! Note: that modifier preview topic is yet to be further refined, quite raw/incomplete for now. Dev side: * In draw code, renamed DRAW_DYNAMIC_PAINT_PREVIEW flag to DRAW_MODIFIERS_PREVIEW * Removed use of MOD_DPAINT_PREVIEW_READY in DynamicPaint code (seems unecessary, and if it was, should be of more general scope). * Added eModifierTypeFlag_UsesPreview to ModifierTypeFlag, for modifiers that can generate some preview data. * Added three new modifier funcs, to handle preview modifiers in draw code / mod stack. * For weights preview: added the generic DM_update_weight_mcol func, which can update WEIGHT_MCOL layer with either a given array of weights (currently used by DynamicPaint only), or from current active vgroup(s). So now, draw code is fully generic (i.e. no more modifier-type checking in it). Mod stack code is generic to some extent, but will need more work.
2012-01-19svn merge ^/trunk/blender -r43482:43524Campbell Barton
2012-01-19debug function DM_debug_info / DM_debug_print, with access from pythonCampbell Barton
through Object.dm_info('SOURCE/DEFORM/FINAL') this is to help tracking down issues with modifiers where loosing data layers between modifiers can cause bugs, also to helo with comparing bmesh/trunk's modifier stack.
2012-01-05added a function to ensure derived mesh has tessface's, in preparation for ↵Campbell Barton
removal of tessface recalculation after each modifier runs.
2011-12-10svn merge ^/trunk/blender -r42521:42550Campbell Barton
2011-12-10fixes scale on derivative mapsMorten Mikkelsen
2011-12-02move editmesh derived mesh functions into their own file to match bmesh, ↵Campbell Barton
without this all merges in this area have to be done manually.
2011-12-02svn merge ^/trunk/blender -r42303:42329Campbell Barton
2011-12-01Slight refactor of VBO code to deal with multiple textures.Sergey Sharybin
Added compareDrawSettings callback to driver mesh's callbacks which are drawing textured faces (mapped and not mapped). This new callback checks if two faces are drawing with the same settings (testures, shading etc) and if they not, flush of faces happens into ogl using glDrawArrays and next face would be drawn with it's own settings. Currently implemented compareDrawSettings is used to resolve issue from bug report only, probably there are extra places where this callback is needed, but haven't seen configuration where current logic will fail, so it should be ok. Also reordered arguments passing to drawMappedFaces DM's callbacks, so now all drawing callback are accepting list of callbacks and then userData, instead of using mixed order of callbacks and userData which was a bit confusing to work with. This commit fixes: - #26410: VBO & multitexture doesnt work - #29464: VBO enabled causes UV coruption
2011-11-30More DM func renames, fixing some build breaks, renaming more stuff, also ↵Andrew Wiggin
seems like it might be fixing the recent CDDM_copy corruption/leak bug
2011-11-29More DM func renames, this one includes renames of the function pointer ↵Andrew Wiggin
members of the DerivedMesh struct
2011-11-29Rename DM *_face_* funcs to be either *_tessface_* or *_poly_* to avoid ↵Andrew Wiggin
confusion This is the first step in a few changes to cleanup confusing/missing DM funcs
2011-11-26svn merge ^/trunk/blender -r42139:42172Campbell Barton
2011-11-26minor edit - weight_to_rgb() and ramp_blend() now take a float vector rather ↵Campbell Barton
than 3 float pointers. also make particle draw use a float vec.
2011-11-16quiet compiler warnings for BLI_array defines, split BLI_array_append into ↵Campbell Barton
BLI_array_append / BLI_array_append_r, the latter returning the new array location.
2011-11-15svn merge -r41751:41779 ^/trunk/blenderCampbell Barton
2011-11-13Add CD_POLYINDEX layer to reduce need for retesselationsAndrew Wiggin
2011-11-11correct indentation and some whitespace edits (no functional changes)Campbell Barton
2011-11-10svn merge -r41650:41655 ^/trunk/blender --- cycles merge, this wont copile, ↵Campbell Barton
still need to manually update some funcs
2011-11-08Texturing: texture and 3d view draw type changes, these should only have anyBrecht Van Lommel
effect for a render engine using new shading nodes. In short: * No longer uses images assigned to faces in the uv layer, rather the active image texture node is what is edited/painted/drawn. * Textured draw type now shows the active image texture node, with solid lighting. * Material draw mode shows GLSL shader of a simplified material node tree, using solid lighting. * Textures for modifiers, brushes, etc, are now available from a dropdown in the texture tab in the properties editor. These do not use new shading nodes yet. http://wiki.blender.org/index.php/Dev:2.6/Source/Render/TextureWorkflow
2011-10-24svn merge ^/trunk/blender -r41226:41227 .Campbell Barton
2011-10-23remove $Id: tags after discussion on the mailign list: ↵Campbell Barton
http://markmail.org/message/fp7ozcywxum3ar7n
2011-09-23some speedup for drawing mesh in texture mode.Campbell Barton
- only pass if the mesh has vertex colors to drawParams() rather then the mcol its self, this saves a lookup on the color. - drawing textures in editmode with no vertex colors would still lookup vertex colors on each face, instead cache this info for all faces.
2011-08-30svn merge -r39765:39781 https://svn.blender.org/svnroot/bf-blender/trunk/blenderCampbell Barton
2011-08-29Fix #28347: VBO's highlights wrong faces when Mirror modifier is in useSergey Sharybin
Added callback to drawMappedFaces which checks if two faces have got equal draw options. After discussion with Brecht we found it's nicest solution for now: - Disabling VBOs in edit mode for this case wouldn't be nicer for this case - some additional flag stored in DM should be added in this case. - Adding new callback in DM isn't nicer that this solution. - Handling face selection in drawobject would lead to duplicated code which is also not nice. Hopefully, this callback could handle all cases in the future. Also, Brecht mentioned current VBO implementation isn't perfect, so maybe when we'll redesign this area dealing with edit mode wouldn't be so tricky.
2011-08-16svn merge -r39286:39385 https://svn.blender.org/svnroot/bf-blender/trunk/blenderCampbell Barton