Age | Commit message (Collapse) | Author |
|
|
|
Fixed some bugs with mesh primitive add
operators. Suzanne now faces forward,
instead of down. Cylinder and circle
both now work. Cone lets you adjust the
diameter at both ends now.
I also reorganized the walker code, to
be more maintainable and understandable.
|
|
|
|
letterrip. also brought back beautify-fill.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Edge slide now handles facedata (e.g. sliding within uv
space), including multires.
|
|
Knife tool now works on multires data, it's also
a tad bit faster now.
|
|
Made the new "superknife" tool much stabler
then it was, though a few minor quirks remain.
Rather then the shortest-distance-in-graph method
I was using to rebuild the mesh post-knife I
reworked it to build a triangulation instead,
then merge the triangles into the right correct
faces.
|
|
Multires interpolation now works on cases like
simple cubes. (though it isn't perfect
when bevelling sharp corners).
Normal flipping is handled correctly, and
multires interpolation now works on
normal-inconsistent meshes (so long as
they are manifold, at least).
|
|
|
|
Multires interpolation is now nearly perfect, but has some
issues on faces whose angle to each other isn't relatively
shallow (probably need to use some sort of fast spatial structure
to more accurately project multires points).
It also doesn't work super well with bevel (mostly due to a
flipped normals bug in bevel I need to get around to fixing).
And, for some reason extrude tends to explode the multires
geometry (it should just be copying it).
Since edge cut doesn't do anything yet with face interpolation,
cuts that arn't exactly centered will move the underlying multires
geometry around a bit..
|
|
|
|
Multires interpolation is considerably better
now, though it still has a problem with occasionally
producing little random tangent spikes. Still, it's
far better then it was.
Also fixed a bug in dissolve faces.
|
|
Improved edge subdivide. The last tool panel
is a bit clearer, with a "quad/tri" checkbox
(that, in addition to turning on the old
singe-edge-triangluation feature also
automatically switches cornervert to Inner Vert
if it is Straight, to avoid producing ngons).
I also rewrote fractal to be more likes its name, and
removed the "smoothness" parameter (which never
worked, anyway, even in trunk). Also removed the
grid fill paramter, it wasn't all that useful.
|
|
data, like creases, get copied over in all cases, though.
|
|
Multires interpolation. It's quite usable yet; I wanted to avoid
subsurfing the multires data and ray tracing original/new
topology. The result is kindof like trunk's interpolation.
I'll see how much better I can get it. I might have to go with
the full-on ray tracing solution. Right now, it's not very good.
Also made it so trunk files with multires open correctly.
|
|
|
|
Coded a new modifier, "Precision UV Interpolation",
that triangulates, subdivides, then uses brecht's mean
value interpolation to interpolate face data.
Textures on ngon faces get interpolated a bit nicer, in
other words (though concave cases, e.g. 'N', don't work very well).
|
|
|
|
|
|
|
|
|
|
Bevel! Implemented bevel (from scratch). Man is
this tool way cooler then I thought it was. Note that
uv/vcol interpolation is working (loop level data) but
vert/edge data (like vgroups) likely still needs
work.
|
|
|
|
Fixed join meshes, and an annoying modifier bug (making modifiers
not work in editmode). Also fixed a tesselation bug.
Also got edge slide to work right, yay! Dunno why I couldn't get
it working right before; took me twenty minutes to fix.
|
|
|
|
|
|
Implemented a new "super knife". Activate with k. Holding CTRL
will allow extended cutting ala old lines mode. Confirm with enter
and escape. You cannot cancel, btw, you can only confirm (and undo
later if you want). Hopefully I'll support undo within the tool soon.
* Supports cutting edges, into faces, etc. You can pretty much do whatever
you want. Will snap to vertices too.
* Note that if you cut into a face, it must be valid topologically when
you press enter to confirm.
* It's pretty and graphical :)
* You can only cut visible geometry.
* UVs/vcols are a little buggy still
Now, thou shalt all cease and desist all lack of motivation for
testing! No longer shall users put off testing until "it's cooler"!
:P
|
|
|
|
|
|
|
|
Phase 1 of restructuring done. There are now two
distinct subclass systems within the bmesh API;
one is compile-time, and forms the backend of what will
eventually be a "lite" bmesh API for modifiers (the
ones that use bmesh are simply too slow right now).
The other is dynamic, and will be used to implement
multires reprojection.
The idea was to solve as many serious problems with
memory, speed, etc, at once as possible and set up others
to be solved more easily later.
I've also added holes into the data structure, but not
the api; I don't plan to finish implementing that until
after bmesh gets into trunk. I simply wanted to lessen
how much code I'll have to rewrite, since I was doing a
fairly major restructuring anyway.
In addition, I've added iteration support to mempool, to
avoid having to store linked list pointers (though this
has caveats).
Next step: merge in trunk changes. . .oh, what fun :P
|
|
basically just some things that needed to be done before trunk (and some things that needed to be started, but can be finished much later).
|
|
------------
Move a char array from a header to a C file, primarily to stop numerous
warnings.
|
|
tesselation face normals writable to disk.
|
|
transform direction vector, uvs/vcols, etc). also got delete and vert connect (ykey) to work again.
|
|
msvc (though further work may be needed because changes made by the merge
|
|
|
|
I've removed editmesh altogether (other then scanfill, which is
seperate code that happens to reuse the editmesh structures).
The compatibility layer I had written for old editmesh tools
was more trouble then it was worth, though it did help in the
early stages of this project.
There's a fair amount of breakage, and there's bunches of tools
(mostly minor ones) I need to port over still. Biggest ones are
join triangles and loop to region, and spin/screw.
This probably isn't really testable, I'll hopefully have more
work done on this soon, but might not be before next week.
|
|
|
|
got to fix this in 2.5. also made dissolving a 2-valence vert leave an edge behind. and fixed a bug or two.
|
|
|
|
[[Split portion of a mixed commit.]]
|
|
correctly is a nightmare.
|