Updated 04:09 January 27th, 2012
8
(386)  2,073

WITH_BF_OPENMP = False
WITH_BF_FFTW3 = True
WITH_BF_GAMEENGINE = True
WITH_BF_OPENEXR = True
WITH_BF_FFMPEG = False
WITH_BF_OPENAL = True
WITH_BF_SNDFILE = True
WITH_BF_SDL = True
WITH_BF_DDS = True
WITH_BF_BULLET = True
WITH_BF_FREETYPE = True

build and tested on Ubuntu 10.10
tested on Fedora 14,Fedora 15,Fedora 16

http://bmeshblender.wordpress.com/category/coding-stuff/

------------------------

changes:

Commit by campbellbarton :: r43735
svn merge ^/trunk/blender -r43693:43733

Commit by ender79 :: r43722
Fix [#29984] Loop select crash on some wire edge meshes
Crash was because the loop walker's wire edge handling wasn't general enough (handled only wire edges that were
connected to exactly one other wire edge)

Commit by campbellbarton :: r43708
correct comments

Commit by campbellbarton :: r43707
fix [#28577] TODO: Make Face (Fkey) fails with isolated verts

Commit by campbellbarton :: r43704
particle system now ensures tessfaces are available.
now sintels heir works in the 3D viewport, (need to work on subsurf next)

Commit by campbellbarton :: r43703
avoid storing over allocated arrays in tesselated custom data, was reserving initial arrays wrong the wrong
array length.

Commit by campbellbarton :: r43702
fix for own error in tesselating as quad

Commit by campbellbarton :: r43699
enable tesselating 4 sided faces to quads.
will help for particles and tangents

Commit by campbellbarton :: r43697
missed this last commit

Commit by campbellbarton :: r43696
remove cellalloc, from my tests jemalloc beats cellalloc, so we better just use a better malloc replacement.
See Details:
http://wiki.blender.org/index.php/User:Ideasman42/BMeshBranchReview#Update_43694

Commit by campbellbarton :: r43694
svn merge ^/trunk/blender -r43685:43693

Commit by campbellbarton :: r43687
committed by accident

Commit by campbellbarton :: r43686
svn merge ^/trunk/blender -r43676:43685

Commit by campbellbarton :: r43684
define to enable tesselate to quads, this way files from trunk tesselate back into their original geometry with
the same face order.
this will be needed for tangents and most likely hair if its to load correctly from trunk.
disabled for now until this is working correctly - hair still needs more work.

Commit by campbellbarton :: r43679
svn merge ^/trunk/blender -r43664:43676

Commit by campbellbarton :: r43674
fix for 3 issues when applying a deform modifier in editmode.
- drawing face normals was broken (using wrong index).
- drawing flat faces in solid mode would display ugly tesselation normals (as if the model was made of triangles).
- drawing smooth faces in solid mode would show vertex normals based on tesselation (heavily slant in 1 direction).
now the normals are calculated and stored per polygon (will save some memory too for non tri meshes).

Commit by miikah :: r43673
Dynamic Paint:
* Converted some more functions to use mpolys/mloops instead of tessellated faces.
* Fixed some bmesh related issues.

Commit by campbellbarton :: r43672
remove redundant casts.

Commit by campbellbarton :: r43671
simplify editmesh mapping lookups.
this really has no effect since they were not created or used, however if we want to use emDM_getEdge or
emDM_getTessFace this will need to be called.

Commit by campbellbarton :: r43668
correct error in recent merge.

Commit by campbellbarton :: r43665
svn merge ^/trunk/blender -r43639:43664

Commit by campbellbarton :: r43656
remove unneeded re-tessellation converting metaball to mesh.

Commit by campbellbarton :: r43655
fix leak in mirror modifier.

Commit by campbellbarton :: r43654
fix for crash with mesh undo with shape keys
'undomesh' was also used in confusing way (relied on mesh being first member).

Commit by campbellbarton :: r43653
comment unused code.

Commit by campbellbarton :: r43650
fix for crash applying solidift after subsurf

Commit by campbellbarton :: r43649
assertion when bvhtree_from_mesh_faces is called and tessfaces dont exist.

Commit by mont29 :: r43641
BMesh: Fix for previous own fix (re-enable DynamicPaint previews in Object mode).
In fact, we have to add a CD_WEIGHT_MCOL layer (if not yet present) when updating CD_WEIGHT_MLOOPCOL, else with
modifiers modifying the topology (like subsurf), it will sigsev.
That step should probably be done at tesselation time, though…

Commit by campbellbarton :: r43640
svn merge ^/trunk/blender -r43616:43639

Commit by mont29 :: r43639
BMesh: Fix (re-enable) DynamicPaint previews in Object mode.
Also simplifies DM_update_weight_mcol: no need to update CD_WEIGHT_MCOL here, as it is anyway recreated from
CD_WEIGHT_MLOOPCOL at tesselation time. Only commented out code for now.

Commit by campbellbarton :: r43638
use same default as trunk for cylinder depth

Commit by campbellbarton :: r43637
replace BLI_array_growone() with BLI_array_growitems() when the size of the increase is known ahead of time,
will reduce reallocs and give some speedup.

Commit by campbellbarton :: r43636
speedup for mesh -> bmesh conversion
- was looping over all verts/edges/faces to setup the selection store, even when there was no selection store
(mselect), since this is fairly common case, add a check.
also use BLI_array_growitems rather then BLI_array_growone to allocate in larger steps.

Commit by campbellbarton :: r43635
fix for leak in bmesh_jekv() when large ngons were being used.
also make BLI_array use more efficient.

Commit by campbellbarton :: r43634
replace BLI_array_staticdeclare with BLI_array_fixedstack_declare()
This has the advantage that it only does 1 alloc at the beginning if the stack variable is too small.
(rather then constantly check to grow one, which is a really huge macro too).

Commit by campbellbarton :: r43633
minor refactor to main tesselation function
- reserve the array sizes to avoid re-allocing (even though its a lower limit it still helps)
- increase array size in larger steps then 1 by 1.
- avoid a few array lookups.
- use more obvious variable naming to make the function more readable.

Commit by campbellbarton :: r43631
improve editmode triangulation by re-using the loop array when
possiblem, this has to guess when the size is too big so as to re-
well.
If this isnt done, then the number of faces is used to allocate the
initial array to at least avoid many small allocs.
added BLI_array_reserve() to reserve elements and avoid reallocing many
small arrays when the loop starts.

Commit by campbellbarton :: r43630
avoid using resizing array for transform (size is known to begin with, use single alloc)

Commit by campbellbarton :: r43621
dissable double re-tesselation when entering editmode.
8 Comments so far. Leave yours.
15:28 December 25th, 2011
Hi @Handoko: I tried to do that but yafaray render failed. The only thing to do is to copy the folder? Anything more?
05:45 September 1st, 2011
Thanks fish. I've just submitted the bug.

Blender + BMesh + Yafaray is awesome. I've just manged to combine BMesh branch and Yafaray ability. I share it here hope can be useful for others. Simply download this BMesh build here, and Yafaray build submitted by megasoft78. Copy paste the yafaray folder from megasoft78 build to this BMesh build (under the folder: scripts/addons). Run the Blender from this BMesh build.

Cheers.
03:02 August 30th, 2011
6 . Fish (builder)
http://www.blender.org/development/report-a-bug/

:-)
09:29 August 28th, 2011
Thanks for this build.

But, I found a bug, where should I report to? Or anybody here can help me to submit the bug report? To generate the bug is easy. Simply add an UV Sphere, then set the shading to smooth (under the Object Tools or press T). The mesh won't render correctly both on OpenGL preview and full render.
06:08 August 22nd, 2011
Hi,

great work! But I have found some strange things. If I add a circle, edit mode I extrude it along the z axis by 0.1,then select all the faces, recalculate the normals and I use the extrude individual command and it does not extrude properly somehow the extruded faces seem to be turned around. (Actually I found out that the program started with the following message RNA_enum_set: MESH_OT_extrude_verts_indiv.type not found. So maybe this is the problem I don't know.)
But this is great stuff, keep up the good work!
Cheers!
11:36 August 18th, 2011
Nice work! So far, it runs smoothly on my Ubuntu 11.04. May I ask if you could enable the Yafaray render? Me and many people will appreciate it. Without ngons, modeling architectural objects is difficult. This BMesh is really a handy feature. Thanks Fish and the people working on BMesh.
02:44 June 6th, 2011
2 . Fish (builder)
i dont know if there is a special bugtracker for bmesh, but you can check it
http://projects.blender.org/tracker/?atid=498&group_id=9&func=browse
07:49 June 5th, 2011
I have to say that is looking really great, I did an experiment making a lot of crazy cuts followed by just one cut and I have to say is very great, no crash, then I started to clean the mesh BUT, I saw a couple of edges out of place, faces in top of other faces, etc... Then here is my question... is there any way to make "remove doubles" ? I press that but I did not see the pop up in the top bar that says how much vertices delete(remove). any way, I would like to know if there some kind of page where I can see whats people is talking about bmesh and how they are fixing this stuff (any forum? or just here in graphicall.org?). Cheers!! good work guys making bmesh!
Feeling talkative?
Log in to leave a comment.