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
2007-12-24Step 3 for the initial commits for 2.5: removing src/ and python,Ton Roosendaal
adding new windowmanager module, and the first bits of new editors module.
2007-09-29-> Active face wasn't getting set properly on editmode exitGeoffrey Bantle
Active face was being set for the editmesh instead of the mesh on editmode exit. Fixed.
2007-09-22added an active face for the mesh editmode and normal mesh - this is needed ↵Campbell Barton
because the TFace flag was not always easy to access from editmode. using the last selected face was almost good enough however when selecting verts and edges the last selected face would become inactive and the space image would flicker about too much. The active face is used for getting the space image at the moment and keeps scripts that use this flag working also. This has 2 commands to get and set, so the variable is not accessed directly. all "UV Calculate" scripts work now last commit crashed when in solid draw mode, it seems subsurf modifier is ignoring the displayMask since MTFACE is available. just made it do a null check for now. uvcalc_follow_active_coords.py - should be done inC and put in the snap menu.
2007-09-12Added UV face rotate and mirror to editmode and re arranged some of the ↵Campbell Barton
editmode keys The WKey menu was way too big and not well organized, re-arranged keys like this. Ctrl+V - Vert Menu (remove doubles, smooth...) Ctrl+E - Edge Menu - left as is Ctrl+F - Face Menu - (flip normals, shading, Rotate and Mirror UV's/Colors) Wkey menu only has subdivide in it now. filesel.c - only show the relative paths option if the file is saved, (flag on by default caused the image to silently fail loading on my system, and gave permission errors on a users), also removed a warning.
2007-09-11-> Selection History FixGeoffrey Bantle
Old bug in selection history meant that face selections were getting erased from history on editmode toggle.
2007-09-10Changes to "Face Select" modeCampbell Barton
* Does not indicate that UV's exist, nor does it add UV's when used. * Only accessible for texturepaint, vertexpaint and weightpaint from a button in the header (Paint Selection Mask) * Not accessible from the mode menu, this is only an option that applies to paint modes. This dosnt effect DNA, face select (G_FACESELECT) can be enabled at any time but is only used when paint modes are enabled. Other changes * UKey is uv unwrap in editmode, Ukey for undo was editmode only anyway. * UVCalc in editmode adds a UV Layer if there is not one alredy. * texture draw in editmode does not draw the face dots (they are get in the way of texturing) * some missing updates were added. * removed manipulator from when paint modes are enabled since the manipulator is not drawn in the 3d view.
2007-09-10UV Editing is now done in editmode rather then UV/Face Select mode.Campbell Barton
Notes * you cant edit UV's in the image window in "UV Face Select" mode. (removed UV from the name) * going into Face Select mode no longer adds UV's and does not need UV's to work. * The UV Calculation menu is now in editmode (Alt+W) Todo.. * Image replace - partly broken in stable also. * Rotate/Mirror UV/VCol are still only in Face Select mode. * Hide/Reveal is not quite right, (issue with editmode flushing)
2007-06-04-> Custom Properties for Mesh entitiesGeoffrey Bantle
In order to give import/export script authors the ability to add properties to inidividual faces, vertices and edges in the same manner as they are able to do with ID structures three new custom data types have been added to blender for floats, integers and strings. Things to note: -Since property Layers are custom data, they are added to all verts, edges or faces at once. -Only one property layer for each unique property name may exist. In other words, you cannot have a float layer as well as an integer layer both with the same name. -No user interface for this exists at the moment. The following methods and attributes have been added to the Blender.Mesh Python module and it's object types: ->MVert/Edge/FaceSeq: addPropertyLayer(name, type) removePropertyLayer(name) renamePropertyLayer(original name, new name) properties(readonly list.) ->MVert/Edge/Face getProperty(name) setProperty(name, value) ->Mesh module PropertyTypes (readonly dictionary)
2007-04-29dont use tface hide or select anymore, since maintaining 2 sets of ↵Campbell Barton
hide/select data for each face is annoying. using mface->flag for both. Also found that the cdDM_drawMappedFaces and cdDM_drawFacesTex_common could get normals mixed up when rendering hidden faces. because hidden/invisible faces used continue without advancing to the next normal.
2007-04-04moved source and text to american spellingCampbell Barton
* colour -> color * centre -> center * normalise -> normalize * modelling -> modeling
2007-04-03Fixed bug #6068 (fluids & separate vertices)Nils Thuerey
* Also reset the fluidsimFlag to zero. The fluidsim settings are now disabled before duplicating the mesh for separate_mesh and separate_mesh_loose.
2007-03-13exiting editmesh when in face select mode could result in hidden and ↵Campbell Barton
selected faces.
2007-02-09Bugfix #5866Ton Roosendaal
Report showed a Mesh that crashed on entering editmode and use some tools. Appeared to be a mesh index 4 equal to one of the other indices (which makes a corrupted quad). Fix is a sanity check in addfacelist() for enter editmode.
2007-01-31== Retopo ==Nicholas Bishop
Removed a retopo line that could cause a crash on freeing editmesh.
2007-01-27== Retopo ==Nicholas Bishop
Fixed bug #5829, Exiting editmode with TAB key toggles RETOPO * Moved the retopo_mode setting to ToolSettings. * Renamed the other retopo_mode to the (more accurate) retopo_paint_tool
2007-01-17Fixed bug #5718, retopo - undo after applying returns the pen strokes to the ↵Nicholas Bishop
wrong location
2007-01-16Retopo bugfix: freeing editmesh should set retopo fields to 0/NULL.Nicholas Bishop
2007-01-12Bugfixes:Ton Roosendaal
- the "number/string button widget", or sbutton(), button() and fbutton() calls, were using button event '1' or '2' to denote events, whilst this could also be an other defined event. Bug showed as unwanted display changes in ipo window after using marker renaming for example. - slider buttons for Action Window were expecting ints, while using short. - cleanup in blender/src for warnings
2007-01-11Bugfix #5681Ton Roosendaal
Mesh editmode; "Separate" tool crashed when Object had fluidsettings.
2007-01-06Fix for multires: prevent mesh separate operation.Nicholas Bishop
2007-01-04Fixed bug #5592, change from sculpt mode to edit mode crashes 2.43RC1 on OsX ↵Nicholas Bishop
Intel. Fix was to check that undo data is taken from the correct object.
2006-12-30Hopefully fixed bug #5437, sculpt - seam selection flushing eats lots of ram ↵Nicholas Bishop
on low multires level This appears to have been caused by the excessive amount of memory that multires was eating up every time an edit operation pushed a new undo copy. Added a hack for multires that allows it to use the same multires data for multiple undo copies until the user actually changes levels (which is when multires data is actually updated.)
2006-12-21Added names to UV and vertex color layers, and display them as a list.Brecht Van Lommel
Added support for multiple UVs in the render engine. This also involved changing the way faces are stored, to allow data to be added optionally per 256 faces, same as the existing system for vertices. A UV layer can be specified in the Map Input panel and the Geometry node by name. Leaving this field blank will default to the active UV layer. Also added sharing of face selection and hiding between UV layers, and at the same time improved syncing with editmode selection and hiding. Still to do: - Multi UV support for fastshade. - Multires and NMesh preservation of multiple UV sets.
2006-12-13Multiple UV and vertex color layers: (still work in progress)Brecht Van Lommel
These can be created and deleted in the Mesh panel in the same place as before. There is always one active UV and vertex color layer, that is edited and displayed. Important things to do: - Render engine, material support - Multires and NMesh now lose non active layers Also CustomData changes to support muliple layers of the same type, and changes to layer allocation, updated documentation is here: http://mediawiki.blender.org/index.php/BlenderDev/BlenderArchitecture/CustomData
2006-12-03Better integration of multires with editmode. Setting/adding levels no ↵Nicholas Bishop
longer exits editmode, and undo should now work as expected. Still to come is loading customdata from the editmesh.
2006-11-20Added custom vertex/edge/face data for meshes:Brecht Van Lommel
All data layers, including MVert/MEdge/MFace, are now managed as custom data layers. The pointers like Mesh.mvert, Mesh.dvert or Mesh.mcol are still used of course, but allocating, copying or freeing these arrays should be done through the CustomData API. Work in progress documentation on this is here: http://mediawiki.blender.org/index.php/BlenderDev/BlenderArchitecture/CustomData Replaced TFace by MTFace: This is the same struct, except that it does not contain color, that now always stays separated in MCol. This was not a good design decision to begin with, and it is needed for adding multiple color layers later. Note that this does mean older Blender versions will not be able to read UV coordinates from the next release, due to an SDNA limitation. Removed DispListMesh: This now fully replaced by DerivedMesh. To provide access to arrays of vertices, edges and faces, like DispListMesh does. The semantics of the DerivedMesh.getVertArray() and similar functions were changed to return a pointer to an array if one exists, or otherwise allocate a temporary one. On releasing the DerivedMesh, this temporary array will be removed automatically. Removed ssDM and meshDM DerivedMesh backends: The ssDM backend was for DispListMesh, so that became obsolete automatically. The meshDM backend was replaced by the custom data backend, that now figures out which layers need to be modified, and only duplicates those. This changes code in many places, and overall removes 2514 lines of code. So, there's a good chance this might break some stuff, although I've been testing it for a few days now. The good news is, adding multiple color and uv layers should now become easy.
2006-11-15Bugfix #5230Ton Roosendaal
Vertex Parent option didn't have index correction for editing Meshes. That caused the parenting to flip around when you deleted or added stuff.
2006-11-12Added custom vertex data support to editmode. Only used for vertex groupsBrecht Van Lommel
now, others can be added later (sticky, shape keys). Beside one small fix for knife exact vertex group interpolation, is intended to work the same as before. Also fixes bug #5200, related to editmode undo and vertex groups. And corrects the editmode to faceselect mode selection conversion, that was broken in a previous commit.
2006-11-11Added custom face data support in edit mode. The code used to do this isBrecht Van Lommel
the CustomData module from the modifier stack rewrite, but with additions to make it also usable in edit mode. Some of the datatypes from that module were move to a DNA header file, they are not saved to file now, but will be soon. The only code that wasn't abstracted is the uv collapse / merging code. It is rather complicated, will look into that in the future. There should be no user level changes.
2006-11-07->Commit of patch #5132: Separate by materialGeoffrey Bantle
This patch adds a new option to the separate menu in editmode, 'By Material'. It simply loops through all materials in the mesh selects the faces associated with them and calls separate(). Thanks to Andrea Weikert for the patch!
2006-11-06Merged Google Summer of Code sculptmode/multires/retopo tools.Nicholas Bishop
From the tracker: https://projects.blender.org/tracker/index.php?func=detail&aid=5018&group_id=9&atid=127
2006-09-28-> Enter/Exit editmode wait cursor flagsGeoffrey Bantle
The wait cursor was being called during editmode enter and exit for meshes. This was a problem for several reasons. First of all, python modules like Mesh now make use of editmode features. These methods that wrap editmode tools may be called many times during the execution of a script and lead to the wait cursor rapidly flickering on and off. The other problem was that the wait cursor wasn't being called for editmode enter and exit of all data types. This is unified now. -New Arguments enter_editmode() should be passed a nonzero integer or simply EM_WAITCURSOR if the wait cursor is desired. Currently only the python API passes a '0' to enter_editmode() exit_editmode() has several options and they are passed in as the bitflags EM_FREEDATA, EM_FREEUNDO and EM_WAITCURSOR. These flags are defined in BDR_editobject.h.
2006-08-28Integration of the Google Summer of Code Modifier Stack Upgrade project. TheBen Batt
main features are: * Modifiers can now be in any order in the modifier stack * DerivedMesh now has a standard framework for custom element data to be passed through the stack with mesh data (being copied and interpolated as appropriate), so modifiers can access whatever data they need * The modifier stack code has been refactored and a number of bugs have been removed * The EdgeSplit modifier has been added: http://mediawiki.blender.org/index.php/BlenderDev/EdgeSplitModifier * The DerivedMesh modifier has been added: http://mediawiki.blender.org/index.php/BlenderDev/DisplaceModifier * The UVProject modifier has been added: http://mediawiki.blender.org/index.php/BlenderDev/UVProjectModifier For more info, see: http://mediawiki.blender.org/index.php/User:Artificer/ModifierStackUpgrade (currently undergoing reorganisation)
2006-08-20Huge commit: VERSEJiri Hnidek
- All code is in #ifdef ... #endif - Only make build system is supported and you have to add: export WITH_VERSE=true to user-def.mk file - Blender can share only mesh objects and bitmaps now - More informations can be found at wiki: http://mediawiki.blender.org/index.php/BlenderDev/VerseIntegrationToBlender http://mediawiki.blender.org/index.php/BlenderDev/VerseIntegrationToBlenderUserDoc I hope, that I didn't forget at anything
2006-05-16-> Sanity Check for Stored SelectionsGeoffrey Bantle
When a python script modified the selection state of a vertex, edge or face this could cause the creation of invalid EditSelection structures when entering editmode. Added a check to the function 'make_editmesh' to correct this.
2006-05-02editmesh's seperate was crashing because the em->selected wasnt being ↵Campbell Barton
flushed along with the seperated data. easy 1 liner, seperate now clears the selection order linkedList. Watch out for places where removing verts might not remove the selection order data.
2006-04-09Bugfix #3778Ton Roosendaal
Removed the haha-fun "eekadoodle" error, which was popping up for each faulty face (could be 1000s), and renamed it to give a proper message: "This Mesh has old style edgecodes, please put it in the bugtracker!"
2006-04-09Bugfix #3840Ton Roosendaal
Reading DXF curves can result in corrupted edges (with 2 identical vertex indices). Probably thats OK for autocad or so.. but it made Blender crash on entering editmode.
2006-04-03-> Stored Selections in Mesh DNAGeoffrey Bantle
Stored selections now get saved to mesh library blocks as direct data. The idea that stored selections are 'erased' when leaving editmode and switching objects is pretty mysterious for the user. Note that currently the mselect array in a mesh is not written to file. Not sure whether to change this or not.
2006-04-02Bugfix #4051Ton Roosendaal
- particle duplicators should not include parent animation (error in duplicator recode of last december) - added exception for 'died' particles to keep correct orientation Also in this commit: - added comment in code to explain why vertexnormals in mesh are equal to vertex location when no faces exist - cleanup of BKE_object.h for functions that don't need export.
2006-03-27-> Stored SelectionsGeoffrey Bantle
Previously Blender did not store the order in which vertices, edges or faces were selected in edit mode. In many cases it is useful to have this data, however it is not desirable to store every selection made. Now blender stores selections in the order in which they were made in a linked list called 'selected' in EditMesh. EditSelection structs are created whenever 'EM_store_selection' from editmesh_lib.c is called (currently only on user selection with mouse). There are several cases in which they might be deallocated by calling the 'EM_remove_selection' function however: -When the user deselects something with the mouse ('mouse_mesh' in editmesh_mods.c) -When switching selection modes stored selections that are not relevant to the new mode are removed by the 'EM_strip_selections' function (multi-select mode is supported) -When the vertex, edge or face pointed to by a certain stored selection is deallocated -When EM_clear_flag_all is called and where the flag passed to the function contains the 'SELECT' bitmask. -When leaving edit mode (making stored selection data persistent across editing sessions will require modifications to mesh DNA later) Todo: There are a few cases still where you can temporarily end up with a stored selection that points to an element that is no longer selected (edge loop de-select can cause this for instance). The solution to this is to add a call to EM_remove_selection from 'EM_select_edge' and 'EM_select_face' when these functions are being used to deselect elements. For the sake of completeness however this will also require that an 'EM_select_vert' function be coded and called at all appropriate parts of the editmesh code. I will look into this later in the week. For now there are two tools that already take advantage of the stored selections. The first one is 'merge at first or last vertex' in the merge menu (the 'firstvert' and 'lastvert' pointers are gone from EditMesh). The second tool is path select, which builds a path between the last vert selected and the second to last vert selected. This allows you to build complex path selections in a short amount of time like this 'select A, select B, path select. select C, path select. select D...'
2006-02-22[Two Sections here; First is the log that *should* have been includedGeoffrey Bantle
to my previous commit (whoops). The second part covers the changes I have made to the code since then (all related to merge tools code).] # Part One: Complete Log for Commit from 2/13/06 -> Upgraded merge tools. The new merge tools add several options to blenders Merge submenu, accessed via the WKEY whilst in Editmode for meshes. The new options depend on current mode: - Vertex mode: "At First" and "At Last" When choosing "At First" or "At last" it will merge all selected vertices at the first or last selected vertex. (Note: Blender now keeps track of the last and first verts selected in editMode (G.editMesh->lastvert and G.editMesh->firstvert pointers. This meant additions were made to the undomesh code in editmesh.c as well). - Edge mode: "Collapse Edges" When choosing this option, Blender examines the current set of selected edges and groups them according whether or not they are topologically connected. It then goes through each group and merges them one by one to a single point. - Face Mode: "Collapse Faces" Works the same as "Collapse Edges", only works on groups of topologically connected faces. -> Inclusive selection mode conversion. This feature extends the ability of blenders selection mode conversions. Currently when you change selection modes from a "lower order" mode to a "higher order" one (vertex->edge, vertex->face or edge->face) blender only selects elements in the new mode whose elements were completely selected in the previous mode. This patch does not change blenders default behavior but offers implicit selection mode conversion as an alternative. To access it, hold either the left or right CTRL keys and click on a selection mode in the view 3d selection mode header buttons. This can be accessed via the CTRL-TAB selection mode switching as well, simply hold CTRL while clicking the mode you want or entering its number on the keypad. In some programs, such as Wings and Mirai, it has been demonstrated that it can also be very useful to exploit selection mode switching to implicitly select previously unselected elements as well. For instance switching selection mode from vertex to edges will select all edges currently associated with the currently selected vertices. The same behavior is applied to switching between vertex->face and edge->face. By exploiting this sort of selection conversion complex selection sets can be built quicker. Furthermore I modified blenders UndoMesh code to make selection mode switching "undo coherent". Aside from its relevance to inclusive selection mode conversion, this really counts as a "bug" in my mind. Previously selection mode switch could cause the selection state of the mesh to be invalid when certain modeling operations were undone. An example of this would be "edge subdivide-> switch to face mode-> undo"; you end up with edges selected while still in face mode! # Part Two: Log for this Commit -> Code Cleanup As per Ton's request I reformatted all my code, changed variable names and eliminated my use of "LinkNode" structs and replaced them with "ListBase" instead. There should be no warnings while compiling now either. -> Remove doubles bug Fixed small problem in removedoublesflag() in editmesh_tools.c that caused editface structs to get their UV's scrambled. Vertex colors might not be safe though? Need to investigate later. -> Small bug in in the the code for merge last/first It could cause a crash when exiting editmode, switching meshes, then entering editmode again. "lastvert" and "firstvert" pointers are now set to NULL whenever exiting editmode now (see load_editmesh() in editmesh.c). I will find a better solution to this *soon*... -> All merge tools now UV aware (optional) The default behavior is to leave UVs alone, but if you hold CTRL while clicking on the menu entry, UV's are merged. This works fine in most situations, although some investigation into how to best handle merging of UVs at the border of UV islands needs to be done. This last item brings up a point about the current state of the interface: several functions accessed through the WKEY menu now use the CTRL modifier to change how they behave (This convention has been in place for a while, see subdivide for example). Unfortunately there is no way to communicate the way modifier keys change the behavior of certain functions to the user. This makes such options invisible for all intents and purposes...
2006-02-14Modified Files:Geoffrey Bantle
source/blender/blenlib/BLI_editVert.h source/blender/include/BIF_editmesh.h source/blender/src/edit.c source/blender/src/editmesh.c source/blender/src/editmesh_lib.c source/blender/src/editmesh_mods.c source/blender/src/editmesh_tools.c source/blender/src/header_view3d.c Log: Commit of the 'upgraded merge tools' (Patch #3345) and 'inclusive selection mode conversion' (Patch #3768).
2006-01-04Orange; merger with bf-blender.Ton Roosendaal
(Merging is *not* fun work, especially not with bugfixes in main branch for code that got cleaned up in the other! Poor Hos... :)
2006-01-03As positively recieved on the mailing list and irc (and blessed byChris Want
guitargeek), this commit enhances the support for temporary storage for the structs EditVert, EditEdge, and EditFace. The field "EditVert *vn" has been removed and replaced by a union called "tmp" that can hold: v, an EditVert pointer; e, an EditEdge pointer; f, an EditFace pointer; fp, a float pointer; p, a void pointer; l, a long; Please see the mailing list post here for more information about this: http://projects.blender.org/pipermail/bf-committers/2005-December/012877.html
2006-01-02Changed adduplicate() to take the dupflags as an argument. so faking the Alt ↵Campbell Barton
Key isnt needed anymore in Blender or python. Changed Pythons Object.Duplicate() to take keyword parms to enable duplication of spesific data. Eg- Object.Duplicate(mesh=1) # to duplicate mesh data also.
2005-12-19Orange: monday merger with bf-blender (loadsa bugfixes).Ton Roosendaal
ALso: a bit tidying up in editaction.c and python Object.c
2005-12-18* Updates for missing menu itemsMatt Ebb
2005-12-01True X-mirror mesh editing!Ton Roosendaal
Set the option in EditMode, in 2nd mesh tools panel. It only works on transform options now (grab/rot/scale), and of course assumes a near- perfect symmetrical mesh. Mesh Object itself can be on any location though (and rotated etc).
2005-11-28Bugfix; using vertex+edge select in Mesh editmode, didn't restore selectionTon Roosendaal
correctly after re-entering editmode.