Commit Graph

11497 Commits

Author SHA1 Message Date
76d7a3562c blender had no option to add a new scene from the UI, only to copy the existing one.
added a new scene option which doesnt copy any render settings from the previous.
2011-03-31 14:33:59 +00:00
90fa130a69 =bmesh= various bugfixes 2011-03-31 00:52:12 +00:00
cc87bf16a1 quiet gcc implicit float -> double warnings & use floats in places. 2011-03-30 16:11:16 +00:00
f8b42877b0 update blender release cycle ID. 2011-03-30 05:08:52 +00:00
70162a4abd fix [#26682] Accessing weight sometimes crashes blender
also replace object type check from vgroup_edit_lattice() with an assert since all callers check for lattice type.
2011-03-30 02:59:32 +00:00
77e3eac389 Fix for old bug with subsurf not initializing normals for edges that had no faces,
Noted that a floating point exception caused by this r28953.

With the render engine using DerivedMesh normals this came up as a memory error when rendering some files.

for now zero the normals, could interpolate between vertex normals if needed.
2011-03-30 02:05:10 +00:00
f4a2008441 =bmesh=
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..
2011-03-30 01:36:42 +00:00
b84a6c4d7e use less verbose string formatting for units and interface. 2011-03-29 14:36:55 +00:00
74e044065b Fix for [#26665] Force field absorption does not work
* Old bug fix led to all kinds of wrong behavior with "plane" shaped effectors, now things are working properly again.
2011-03-29 12:50:43 +00:00
7a252d9824 Fix for [#26658] Permeable colliders stop particles
* Forgot this exception from the collisions rewrite. Don't check collisions with the same face twice.
2011-03-29 10:27:31 +00:00
dbd13d67b1 Bugfix [#26645] Crash when duplicating an object with driver
Missing null check for "improper" driver variables.

------

Also, this commit includes some WIP NLA evaluation reshuffling which
should be harmless. I had originally intended this for a later
commit...
2011-03-29 09:37:53 +00:00
7d43a48993 =bmesh=
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.
2011-03-29 05:48:18 +00:00
ca38366732 particles & vector-font: floats were being implicitly promoted to
doubles, adjust to use floats.
2011-03-28 11:21:39 +00:00
72b4bf2fda Bug fix: particles emitted from a moving emitter exploded with verlet integration
* Verlet integration didn't like moving emitters, so now the first step for newborn particles with verlet is actually done with euler integration.
2011-03-28 08:08:59 +00:00
dd56ebe607 blenkernel: floats were being implicitly promoted to doubles, adjust to use floats. 2011-03-28 04:22:50 +00:00
ac1cb5ee05 - quiet new warnings with gcc 4.6
- use BLI math funcs for normal float/short conversion.
- correct some un-intentional float/double promotions.
2011-03-28 02:34:55 +00:00
3875461a33 =bmesh=
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.
2011-03-28 00:29:45 +00:00
040f0a1096 Merged changes in the trunk up to revision 35828.
Conflicts resolved:
source/blender/makesrna/RNA_enum_types.h

According to the changes in revision 35667, the Freestyle-related code
in release/scripts/ui/ was moved to release/scripts/startup/bl_ui/.
2011-03-27 23:11:22 +00:00
a73c3fe5c9 subsurf, derived mesh and other misc files: floats were being implicitly promoted to doubles, adjust to use floats. 2011-03-27 17:22:04 +00:00
617e6a83bc object/paint/misc-files: floats were being implicitly promoted to doubles, adjust to use floats.
- also UV angle stretching was using radians->deg which wasn't needed.
2011-03-27 14:59:55 +00:00
fc050837b0 =bmesh= fixed edge creasing for subsurf 2011-03-27 03:29:27 +00:00
93fa307712 =bmesh=
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.
2011-03-27 02:56:41 +00:00
121075ec15 One more fix for recent normals re-calculation change 2011-03-26 17:43:07 +00:00
5aec085da0 Fixed memory access in mesh_calc_normals(). Now it uses much less memory. 2011-03-26 09:48:03 +00:00
63e40dbe0e Fix #26582, #26586, #26613: recent normal calculation changes didn't take
into account that some tools use normals for things other than display. Now
we properly initialize vertex normals at flat faces too.

Also fixed a normal refresh issue, and deduplicated CDDM/mesh normal
calculation code.
2011-03-26 08:28:24 +00:00
d53a0cd48f Bugfix:
Recent renaming of Key.keys to Key.key_blocks broke converter for old
files.

Campbell Alert: However, more seriously, it has broken many current
rigs, especially those with heavy usage of (driven) Shape Keys
2011-03-26 05:52:18 +00:00
11920f7880 Bugfix #26195
When rendering, during processing scene data, drawing in 3d window
is now locked. Can get extended to more areas in UI easily.

At least this solves all crashes with conflicting memory access in
render && 3d drawing. Deleting objects via operators or delete 
modifiers isn't locked yet.

Also fixed: crash on quitting a renderwindow when it was rendering.
2011-03-25 17:11:32 +00:00
8b6b5341a5 move object re-linking into a function. 2011-03-25 08:43:41 +00:00
d8e6dd705f fix [#26607] blender won't duplicate or assign new drivers on duplication 2011-03-25 07:34:44 +00:00
d88bb9115f =bmesh=
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).
2011-03-25 00:32:38 +00:00
561b6e34f0 Bugfix:
[#25725] Transform bone constraint & 'local with parent' as owners
space
[#26014] ChildOf Bone Constrain (influence) works in wrong workspace

Moved the influence calculation stuff outside of the space conversions
(i.e. so that it is done in worldspace only) fixes these problems,
which seem to arise when a constraint doesn't work in worldspace AND
doesn't need to apply inverse correct for this space conversion when
it's done, hence resulting in mismatch between spaces for old and new
matrices resulting in all the weird behaviour.

Patch to fix this from Jahka. Cheers!
2011-03-24 23:34:43 +00:00
c2ee06a4b2 Particle charge effector wasn't working properly.
* Probably just forgot this code somewhere a long time ago.
2011-03-24 12:12:54 +00:00
edc5cf1f96 Fix #26573, #26574 and #26551: objects on layers not visible on load or undo
restore, would not get their dependencies updated when they became visible.
It happend with a shrinkwrap modifier in these reports, but could happen with
other modifiers too.

Now we keep track of which layers have ever been updated since load, and tag
objects on them to be recalculated when they become visible.
2011-03-23 14:06:44 +00:00
4c3899ca09 Fixing the particle emitter interpolation (#25385 & #26493) further
* The interpolation should only be done if the dynamics were calculated, since otherwise animation keys can't be set after parenting.
2011-03-22 12:53:18 +00:00
2304256a6c quiet warning 2011-03-21 22:10:24 +00:00
67cbf22211 Bugfix #26549
Using environment map type "load" increased user counter on each
preview render.

Also noticed that this type of envmap use wasn't threadsafe, causing
imbufs being allocated for all threads. Also fixed that.
2011-03-21 17:10:55 +00:00
4a305e7edb Half way fix for [#25385] Particles Emitter only interpolates IPOs & [#26493] Particle system animates incorrectly when emitting mesh is parented
* Particle emission now updates all parent objects too to the exact emission time.
* This only does object level animation as updating the object data for every particle would be too slow.
* A better fix could be to interpolate the emission location directly from the current particle emission location and the location from the previous frame, but for this some point cache changes have to be made, so it will have to wait.
2011-03-21 08:47:04 +00:00
Nathan Letwory
7ea81bdafc Some changes to get bmesh compiling with scons. 2011-03-20 15:37:27 +00:00
549b5e1222 Fix/change in normal computation, now the viewport uses the same angle
weighted normals as the render engine, and the render engine will copy
normals from the mesh rather than always recalculating them.

Subsurf/multires still use regular vertex normals, but they are expected
to be sufficiently high resolution to not need this.

This means that normal maps displayed in the viewport actually match the
render engine exactly and don't have artifacts due to this discrepancy.
It of course also avoids unexpected surprises where your render normals
look different than your viewport normals.

Subversion bumped to 4 for version patch to recalculate normals.

Patch by Morten Mikkelsen, with some small changes.
2011-03-20 13:35:35 +00:00
7ccc17b98c =bmesh= fixed bunches of modifier stack bugs 2011-03-19 21:33:33 +00:00
e134e0139f ugh, left in a debug print in the previous commit 2011-03-19 13:36:43 +00:00
f15c12a0d2 Fix for [#26546] Particles leak through deforming quad mesh
* Slightly too strong optimization in the new collisions code, the "edges" in the middle of quads weren't checked at all.
2011-03-19 13:33:03 +00:00
e9005b985e remove some redundant vars, assignments & checks. 2011-03-19 05:06:06 +00:00
003ab20292 Merged changes in the trunk up to revision 35618.
Conflicts resolved:
source/blender/makesrna/RNA_types.h
source/blender/makesrna/intern/rna_main_api.c
2011-03-19 00:05:30 +00:00
e44da6b695 hide addon_utils in bpy.utils & tag/remove unused vars in recent commits. 2011-03-18 20:57:32 +00:00
60ce95f562 New particle collisions code:
* The old collisions code detected particle collisions by calculating the
  collision times analytically from the collision mesh faces. This was
  pretty accurate, but didn't support rotating/deforming faces at all, as
  the equations for these quickly become quite nasty.
* The new code uses a simple "distance to plane/edge/vert" function and
  iterates this with the Newton-Rhapson method to find the closest particle
  distance during a simulation step.
* The advantage in this is that the collision object can now move, rotate,
  scale or even deform freely and collisions are still detected reliably.
* For some extreme movements the calculation errors could stack up so much
  that the detection fails, but this can be easily fixed by increasing the
  particle size or simulation substeps.
* As a side note the algorithm doesn't really do point particles anymore,
  but uses a very small radius as the particle size when "size deflect" isn't
  selected.
* I've also updated the collision response code a bit, so now the particles
  shouldn't leak even from tight corners.

All in all the collisions code is now much cleaner and more robust than before!
2011-03-18 15:31:32 +00:00
25d4515181 fix [#26532] Does not save in specified format
old bug from r6568 (or before) in BKE_write_ibuf(), when passed TAGA format it would use whatever format the image buffer already had.
expect this is exposed by updated image saving code in 2.5x.
2011-03-18 00:12:51 +00:00
1216fe7f21 =bmesh=
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.
2011-03-17 22:59:54 +00:00
e3842d1ca4 Bugfix [#26505] zoom in selected keys on graph editor
Not really a "bug", but it was on my todo anyways. Based on patch
[#26508] by Campbell, with a few modifications including extending
this to the Action/DopeSheet editor too.
2011-03-17 10:02:37 +00:00
6dda182a76 Fix for [#26520] Point Density turbulence not accessible in Texture Properties.
* Mistake in the ui file.
* Also found a possible memory leak.
2011-03-16 18:21:31 +00:00