[Bf-committers] true edge and face edit modes
Ton Roosendaal
bf-committers@blender.org
Sat, 10 Apr 2004 19:30:52 +0200
Hi Brecht,
Exactly my idea! :)
It all will have quite some consequences though. The way it's being
accessed for example. I don't think it can be other implemented than
using a 'mode' here (like Wings), but it would be very interesting to
find a way to do it non-modal. The latter would mean that you can
always select verts/edges/faces with a single command.
To make that work, the way you store such selection information should
merge somehow, and that's the bottleneck... because selecting 3
vertices *could* be different from selecting the edges or face. Or do
we want a situation of having a face selected, but not its edges and
vertices? Hrms...
Another to consider is whether the old (backbuffer based) faceselecting
is useful for modeling... how to access interior faces then?
A ray-trace based method could be nice here, selecting first closest
face, but on next click increases 'depth' for selection. Also a
research topic.
Lastly, it can be combined with code shuffling too. The oversized
editmesh.c could use some good cleanup and probably split in pieces.
-Ton-
On Saturday, Apr 10, 2004, at 01:30 Europe/Amsterdam, Brecht Van Lommel
wrote:
> Hi all,
>
> I will have quite some time to code in the following weeks / months. So
> I thought I would just take on this project. I'm posting this to see
> who
> has interest / time / ideas. It's just a rough proposal, on how we
> could
> do it code-wise. It doesn't include any ideas of how to really take
> advantage of these modes. It's not perfect, but I thought I'd post
> something to maybe get things going.
>
> True Face en Edge Mode:
>
> - Three modes: Vertex, Edge and Face.
> - Use same EditMesh data structure, and make it available in all three
> modes. Hopefully no or only slight changes will be needed.
> - The modes will not be really different internally. A function should
> not have to know in which mode it is, unless it wants to offer
> different behavior for different modes. There would also be fast
> switching: no or at least very little data conversion needed when
> switching modes.
> - Edit Mode functions will still work while this is WIP, can modified
> to
> have different behavior in different modes later.
> - Face Select Mode (and paint) functions will need to be converted
> completely, but the functions are not that complicated as far as I've
> seen. For some off the more complex ones, it would be best to rethink
> to be faster with the new data structures available.
> - Need plan to convert code step by step. Keep things 'working' as much
> as possible.
>
> Plan:
>
> 1. Make EditMesh structure available in Face Select, Paint Mode, don't
> disable old data structures immediately.
> 2. Convert Face Select drawing functions to use EditMesh. Keep old
> drawing available somehow, for some time, for next step.
> 3. Convert Face Select, Paint functions to use EditMesh. While working
> on this, the old an new data structure will not automatically be in
> sync, but that's why it is possible to draw both data structure.
> 4. Introduce Edge Select Mode.
> 5. Make Edge and (Edit Mode ready) Face drawing functions.
> 6. Adapt Edit Mode functions to work different in different modes, if
> necessary (Extrude for example).
>
> All this is quite some work, but not impossible in my opinion.
>
> This might not be the ideal time to propose this, weeks before the next
> release and maybe near exams for some. I also know there are also some
> plans to move Edit Mode functions to python, and I have not taken them
> into account. I simply have no idea how it would all work, or how these
> plans would affect this.
>
> I think I could already start on the first steps (merging Edit Mode and
> Face Select Mode), in the next weeks. Downloading Wings now to get some
> inspiration :).
>
> Any comments?
>
> Cheers,
> Brecht
>
> _______________________________________________
> Bf-committers mailing list
> Bf-committers@blender.org
> http://www.blender.org/mailman/listinfo/bf-committers
>
>
------------------------------------------------------------------------
--
Ton Roosendaal Blender Foundation ton@blender.org
http://www.blender.org