Age | Commit message (Collapse) | Author |
|
Conflicts:
source/blender/blenkernel/intern/armature.c
|
|
|
|
This is complementary change to what we did in master in order to deal
with simulation modifiers.
|
|
Conflicts:
CMakeLists.txt
build_files/scons/tools/btools.py
intern/cycles/util/util_types.h
source/blender/editors/object/object_constraint.c
|
|
This is mainly to make physics modifiers being able to work
with it. For other cases this main is not needed.
|
|
Conflicts:
source/blender/blenkernel/BKE_particle.h
source/blender/blenkernel/intern/armature.c
source/blenderplayer/CMakeLists.txt
|
|
This way it doesn't have to be stored as DNA runtime pointers or passed
down as a function argument. Currently there is now no property or
button to enable debugging, this will be added again later.
|
|
This helps to create some variation in a hair system, which can
otherwise become very uniform and boring. It's yet another confusing
setting in a system that should have been nodified, but only option for
now (broken windows ...)
Conflicts:
source/blender/blenkernel/intern/particle_system.c
source/blender/physics/intern/BPH_mass_spring.cpp
|
|
This returns a general status (success/no-convergence/other) along with
basic statistics (min/max/average) for the error value and the number
of iterations. It allows some general estimation of the simulation
quality and detection of critical settings that could become a problem.
Better visualization and extended feedback can follow later.
|
|
This will allow us to implement moving reference frames for hair and
make "fictitious" forces optional, aiding in creating stable and
controllable hair systems.
Adding data in this place is a nasty hack, but it's too difficult to
encode as a DM data layer and the whole cloth modifier/DM intermediate
data copying for hair should be removed anyway.
|
|
as forces, velocities, contact points etc.
This uses a hash table to store debug elements (dots, lines, vectors at
this point). The hash table allows continuous display of elements that
are generated only in certain time steps, e.g. contact points, while
avoiding massive memory allocation. In any case, this system is really
a development feature, but very helpful in finding issues with the
internal solver data.
|
|
Doesn't mean it's 100% working, but preliminary checks for most of the modifiers
seems to be fine. More intense testing is needed tho.
|
|
|
|
It was a regression since 5d49eff. Not really sure about proper solution
here, so used a bit workaround-ish way for now.
Hopefully new cloth will be landed after this GSoC anyway.
|
|
new depsgraph.
For now this lives alongside the old callback until porting is complete
and the old callback can be removed.
The modifier cb uses a DepsNodeHandle symbolic type for representing the
current modifier node itself, so it doesn't get into conflict with the
actual DepsNode class. This will also incorporate a pointer to Depsgraph
and possibly other state info internally, so only a single handle
argument is needed.
|
|
Make sure pointcache step is set to 1 for cloth when copying objects.
|
|
|
|
get_cddm and get_dm are called within modifiers so they wont ensure normals are valid, added an arg to optionally ensure valid normals.
|
|
|
|
Caused by last commit by me.
|
|
|
|
|
|
Issue was caused by cycles being duplicated curve objects before converting
them to mesh. This duplication will loose pointcache which resulted in object
not being properly deformed.
|
|
|
|
People: Better use subsurf after cloth since you can get failing collisions otherwise!
|
|
- Triangulate Cloth Mesh for collisions
- Speed up collisions
- Remove EL Topo code
- Prepare code to incooperate El Topo self collisions (TODO next commits)
TODO:
----------
- Triangulation: Is custom data/uv preserved correctly?
- Use MPoly not tessface?
|
|
to pass options, instead of having one parameter per boolean flag (i.e. replaces current useRenderParams and isFinalCalc by a single ModifierApplyFlag flag. ModifierApplyFlag is an enum defined in BKE_modifier.h). This way we won't anymore have to edit all modifier files when e.g. adding a new control flag!
Should have no effect over modifier behavior.
|
|
|
|
|
|
|
|
else if's
|
|
|
|
these cloth and collision modifiers require tesselation still.
|
|
|
|
Make Cloth modifier deformation only so now it applies on orco dm properly.
|
|
http://markmail.org/message/fp7ozcywxum3ar7n
|
|
|
|
in readfile.
|
|
& editors.
|
|
|
|
most local modifier,GPU,ImBuf and Interface functions are now static.
also fixed an error were the fluid modifier definition and the header didnt have the same number of args.
|
|
Used a crazyspace approach (like in edit mode), but only modifiers with
deformMatricies are allowed atm (currently shapekeys and armature modifiers only).
All the rest modifiers had an warning message that they aren't applied because
of sculpt mode. Deformation of multires is also unsupported.
With all this restictions users will always see the actual "layer" (or maybe
mesh state would be more correct word) they are sculpting on.
Internal changes:
- All modifiers could have deformMatricies callback (the same as deformMatriciesEM but
for non-edit mode usage)
- Added function to build crazyspace for sculpting (sculpt_get_deform_matrices), but it
could be generalized for usage in other painting modes (particle edit mode, i.e)
Todo:
- Implement crazyspace correction to support all kinds of deformation modifiers
- Maybe deformation of multires isn't so difficult?
- And maybe we could avoid extra bad-level-stub for ED_sculpt_modifiers_changed
without code duplicating?
|
|
- move GS() define into DNA_ID.h
- add BLI_utildefines as an automatic include with makesrna generated files.
|
|
MAKE_ID, FILE_MAXDIR, moved the generic defines to BLI_utildefines.h.
no functional changes.
|
|
|
|
|
|
|
|
incorrect in render.
When there are 2+ consecutive deform modifiers, the second modifier was getting incorrect normals, this only showed up for the displace modifier since its the only deform modifier that uses vertex normals.
It would have been easy to fix this by always calculating normals on deform modifiers, but slow.
To fix this I added a function to check if a deform modifier needs normals, so the normal calculation function only runs if there are 2 modifiers in a row and the second uses normals.
|
|
- remove MEM_guardedalloc.h from header files (include directly)
|
|
headers, better include inline with the C files that need them
|