[Bf-committers] Updated BMesh Merge Proposal

Campbell Barton ideasman42 at gmail.com
Mon Jan 2 14:52:59 CET 2012


On Tue, Jan 3, 2012 at 12:32 AM, Rasmus Lerchedahl Petersen
<rusmus at eecs.qmul.ac.uk> wrote:
>> no-crash, no-face - feature committed, also saves on undo memory and
>> disk space :).
>>
>> save as legacy blend still works of course.
>>
>> On Mon, Jan 2, 2012 at 10:18 PM, Ton Roosendaal <ton at blender.org> wrote:
>>> Hi,
>>>
>>> When I reviewed BMesh todos with Campbell I specifically asked for ensuring we don't crash old binaries. The software of course cannot read the bmesh faces (showing emppty mesh), but files should not crash on it. You get the warning "expect loss of data" first of course.
> Should be simple enough to write an importer as well:
> For any face with more than 4 vertics add a point with the averaged
> coordinate and triangulate...

its possible and while simple, think practically its not so easy to do.

- If you do this in python its a fair bit of work just to load the
blend file from python (possible but slow and a hassle).

- If you do in C, then you need to make some way to load the C plugin
into blender (you could write a C/py extension I guess), since we dont
really have a plugin system,
... OR you could write as a patch on existing old code and have a
version of blender 2.5x or 2.4x that load new files which have a patch
applied,
... but in that case you may as well backport the change in trunk
which loads bmesh files since this is basically all you want to be
doing anyway.

If you are already distributing binary plugins or new blender versions
- you may as well write a small python script which includes blender
2.62,  and in background mode opens the file and re-saves it as a
compatible blend file, then loads in 2.4x, 2.5x...

Any of these options sound like a reasonable amount of effort for
something that is easy to work around by either a blender upgrade or a
re-save.


More information about the Bf-committers mailing list