Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
In fact, all curve objects were flipped in GLSL mode.
This is because of the way how normals are calculated
for them (inwards vs. outwards).
We might want to make normals consistent all over, but
that would be the bigger change. For ow just made some
tweaks to OpenGL setup.
Thanks Brecht for the review and tests!
|
|
BKE_object_lod_matob_get, and cleaning up the code lod code in object.c.
The level of detail data now uses a bitfield for flags such as use_mesh and use_mat. The few files out there currently using levels of detail will need to renable those options.
|
|
being checked more clear.
|
|
|
|
overrides material colors with dynamic paint colors.
|
|
This means it's possible now to snap stuff to
reconstructed tracks positions.
|
|
entering this branch of code.
|
|
Dirty normals already being checked in DerivedMesh.c,
and this things really rather be localized in one
single place than being checked all over the code.
|
|
internal.
Object.imat isn't always the inverse of Object.obmat, needs to be set before usage
as mentioned in DNA_object_types.h.
Thanks to Miika for tracking down the cause of this bug.
|
|
That ended up in tricky code trying to mimic depsgraph
branch behavior API-wise preserving texspace and bound
box calculation compatible with previous releases.
So for now bring cu->disp back to the trunk but keep
texpsace and boundbox APIs the same as in the branch.
This keeps texpsapce and boundbox behavior fully compatible
with previous releases and still makes API the same as
for meshes.
|
|
|
|
Lattice deformation used to store some runtime data
inside of lattice datablock itself. It's something
which is REALLY bad. Ideally DNA shouldn't contain
and runtime data.
For now solved it in a way that initialization of
lattice deform will create a structure which contains
lattice object for which deformation is calculating
and that runtime data which used to be stored in
lattice datablock itself.
It works really fine for mesh deform modifier, but
there's still runtime data stored in particle system
DNA, It didn't look something easy to be solved, so
leaving this as-is for now.
--
svn merge -r58277:58278 -r58795:58796 ^/branches/soc-2013-depsgraph_mt
|
|
I know this is not so much nice to have this guys hanging
around in a general Object datablock and ideally they better
be wrapped around into a structure like DerivedMesh or
something like this. But this is pure runtime only stuff and
we could re-wrap them around later.
Main purpose of this is making curves more thread safe,
so no separate threads will ever start freeing the same path
or the same bevel list.
It also makes sense because path and bevel shall include
deformation coming from modifiers which are applying on
pre-tesselation point and different objects could have
different set of modifiers. This used to be really confusing
in the past and now data which depends on object is stored
in an object, making things clear for understanding even.
This doesn't make curve code fully thread-safe due to
pre-tesselation modifiers still modifies actual nurbs and
lock is still needed in makeDispListsCurveTypes, but this
change makes usage of paths safe for threading.
Once modifiers will stop modifying actual nurbs, curves
will be fully safe for threading.
Actually, this commit also contains wrapping runtime curve
members into own structure
This allows easier assignment on file loading, keeps curve-
specific runtime data grouped and saves couple of bytes in
Object for non-curve types.
--
svn merge -r57938:57939 ^/branches/soc-2013-depsgraph_mt
svn merge -r57957:57958^/branches/soc-2013-depsgraph_mt
|
|
It used to be a check for ob->bb ? ob->bb : cu->bb but
in fact it doesn't make sense and only makes code more
crappy.
Making displist for mballs and curves/surfaces/fonts
already ensures object has walid bounding box.
--
svn merge -r57938:57939 ^/branches/soc-2013-depsgraph_mt
|
|
|
|
accumulated into a float anyway)
|
|
from the future dont crash.
also remove some redundant NULL checks.
|
|
|
|
|
|
through.
|
|
|
|
foreachMappedVert/foreachMappedFaceCenter when needed,
this means in editmode with wire draw, face and vertex normals don't have to be calculated at all.
in most cases the normals are not used so add a flag that makes calculating them only for functions that need them.
also fix face normal calculation for CDDM, was using quad calculation for ngons too.
|
|
otherwise modifiers give odd results.
|
|
increments in text editor.
|
|
|
|
(can be used with xray).
|
|
|
|
|
|
display editmesh stats with deform modifiers.
|
|
material halo settings.
|
|
|
|
weights that were modified by a weight modifier wouldn't.
|
|
|
|
|
|
|
|
|
|
all editing modes (sculpt, edit, etc).
|
|
display levels of detail if you are in object mode, or the object is not the currently active object.
|
|
of the active object in the 3D view. This was due to sharing a global G.moving
flag to indicate that transform is active, now it's only set per transform data
type so different editors don't influence each other.
|
|
inspecting the edit-selection inline was cumbersome.
|
|
|
|
lookups.
|
|
|
|
|
|
|
|
|
|
in compassion.
|