Commit Graph

4800 Commits

Author SHA1 Message Date
M.G. Kishalmi
c709524dc9 new bumpmapping options for the renderer
oldbump -> original
newbump -> compatible
 *new*	-> default (3tap)
 *new*	-> best quality (5tap)

the latter two have an option to apply bumpmapping in 
 viewspace - much like displacement mapping
 objectspace - default (scales with the object)
 texturespace - much like normal mapping (scales)
2011-01-29 11:56:11 +00:00
Janne Karhu
73f48ef3f8 Fix for [#25843] Multiple Scene Strip in Sequencer, bad scrubbing for armatures in viewport
* Sequencer didn't restore the scene properly after drawing a frame other than the current frame.
2011-01-28 13:14:01 +00:00
Janne Karhu
53b83262c5 Fix for [#25713] VSE shows and renders wrong straight alpha gradient even after convert to premul is checked
* Caching of the start and end stills were just referencing the original imbuf (which got premultiplied after the caching), so as a result most of the time the premul was applied twice.
* Now the start and end stills are stored in the cache as duplicates of the original (non modified) imbuf.
2011-01-28 00:59:42 +00:00
Daniel Salazar
a68a44817a More logical ordering of Empty draw types. Made Plain Axes default for
new empties
2011-01-27 21:05:01 +00:00
Janne Karhu
ba9dacbd3d Silly mistake in own previous commit, now we have particles again! 2011-01-27 17:29:22 +00:00
Campbell Barton
ce7f7d6e5f r34526 removed a line which had an unused return value but still needed to run. 2011-01-27 12:36:48 +00:00
Janne Karhu
8fa9a91639 Fixing some clang reported issues in particle code.
* Not really bugs, but some code cleanup and clarification.
2011-01-27 12:21:14 +00:00
Joshua Leung
18aece4424 Bugfix [#25823] When objects are parented to the same objects that
they have some rotation-affecting constraint (i.e. Track To and Copy
Rotation) targetting, transforming the objects (directly, using GKEY
-> grab) becomes unreliable.

This was caused by a typo in some code checking for some
OB_NO_CONSTRAINTS under "flag" instead of "transflag"
2011-01-27 01:29:40 +00:00
Joshua Leung
50e09b15a9 Bugfix [#25707] / Todo Item: "Local Space" for Object constraining
For Constraints, there's now a working "Local" Space for Objects
without parents. This is defined as relative to the object's rotated
set of axes which results from rotation that gets set via "rotation"
transform properties.

I'm not sure whether this different behaviour between parented and
unparented objects will be too confusing (and thus require separate
settings + a round of version patching), so I'll wait until we get
proper testing from experienced riggers first.
2011-01-26 23:33:08 +00:00
Joshua Leung
0fb785aaa7 Removing some old stuff from old animation system that isn't needed
anymore (shapekeys stuff)
2011-01-26 22:01:51 +00:00
Janne Karhu
307c10486d Fix for [#25797] Hair partcle crash when vertexgroup length enabled
* Rounding errors could give vgroup weights of slightly over 1.0 to particles in some cases.
2011-01-26 13:02:47 +00:00
Janne Karhu
0f375d8980 Fix for [#25781] Bake cache for particles fails at end , ALT + A not
* Missing check for info frame (frame 0).
2011-01-25 17:08:43 +00:00
Campbell Barton
c0e74f9dce fix [#25748] Addons register parameters/functions more than once
- values were added to both the classes __dict__ as well as the internal StructRNA.
- made properties available from the type since this is where the python api assigns them:
>>> bpy.types.Scene.frame_start
<bpy_struct, IntProperty("frame_start")>
- rename RNA_struct_type_properties() -> RNA_struct_type_properties(), added RNA_struct_type_find_property()
2011-01-25 06:54:57 +00:00
Benoit Bolsee
fc66b3f2ef BGE: support modifiers without mapping to original mesh both graphically and physically, fixes bug #24942 and #25286.
Support for physics is done by skiping the modifiers that
don't support mapping to original mesh. This mapping is
required to report the hit polygon to the application
by the rayCast() function.

Support for graphics is done by using the same render
function that blender uses for the 3D view. This guantees
equal result.

Limitation: there is still a known bug if all these conditions are met:
- Display list enabled
- Old tex face with a several textures mapped to the same material
- no armature or shape keys
- active modifiers

In this case, only a part of the mesh will be rendered
with the wrong texture. To avoid this bug, use the GLSL
materials or make sure to have 1 material=1 texture in
your old tex face objects.
2011-01-23 17:17:21 +00:00
Janne Karhu
1149120145 Temporary fix for [#25735] Softbody don't work in linked groups, not generate cache
* The whole case of lib linking and pointcaches is not very well defined currently, but this fix sets the behavior of sb to the same as other physics currently.
* A proper fix will be easy to implement after a good physics baking ui is added.
2011-01-22 14:13:36 +00:00
Campbell Barton
799e9c48c1 comment dead code and fix 2 missing NULL checks (pointer used after NULL check and checking against incorrect pointer before use). 2011-01-22 03:50:09 +00:00
Campbell Barton
09ceb859b7 no functional change,
- remove G.flag, its not used anywhere (and confusing with G.f).
- also remove strcpy where memory locations may overlap.
2011-01-20 07:44:58 +00:00
Campbell Barton
ac058624ae fix for bug where python functions were not raising exceptions because reports were not added to the list in background mode. 2011-01-20 07:41:25 +00:00
Joshua Leung
6cadef1fb1 NLA backend code cleanups: Ensure all user-count management is done
via id_us_*() functions instead of direct access, for more security
2011-01-19 23:05:02 +00:00
Joshua Leung
dddb9aa30f NLA Editor: Swap Strips (Alt-F) and Bugfixes
1) Added a new operator to swap the order of strips within a track
(Alt-F).
This makes it possible to select two strips (or more precisely, two
islands of consecutive + selected strips) in a single track and change
the order in which the appear without needing a extra tracks to
perform the move through.

As usual, the non-overlapping rules apply, so there may be some cases
where swapping in this way is not possible without adjusting the
intermediate strips first manually. Otherwise, everything just gets
too tricky to manage deciding what adjustments should be done to the
obstructing strips to make a fit.

2) Freeing meta-strips didn't free their local data properly (i.e.
modifiers they may have had).

3) Adding strips to tracks, where the endframes for the strips
overlapped would cause problems with incorrect ordering of strips. I
still need to double-check whether evaluation works ok in this case...
2011-01-18 23:38:36 +00:00
Konrad Kleine
083be90232 Fix for "[#25700] 2.56: Rotation Mode: Quaternion shows wrong orientation of the object".
There was a small typing error that made object and armatures rotate twice the magnitude when in quaternion rotation mode.
2011-01-18 15:02:58 +00:00
Lukas Toenne
bee3d78393 Added a check in nodeGroupVerify to detect if a tree is actually a group tree. This is necessary to avoid the group-in-group error if the function is called for a tree that already contains group nodes. 2011-01-18 13:28:18 +00:00
Janne Karhu
fb97780fdf Bug fix: particle dynamics were being calculated if point cache was only half baked (reported by Michael Fox in #blendercoders)
* When a simulation is baked no dynamics calculations should happen anymore (even outside of baked frame range) since these can be very time consuming and baked simulations are supposed to be fast!
2011-01-18 09:25:37 +00:00
Campbell Barton
8cf1184c04 bad spelling; 'indicies' --> 'indices' 2011-01-18 01:58:19 +00:00
Campbell Barton
86baf7c937 option for the path iterator to loop over packed files so their dir separator can be switched on file load. 2011-01-18 00:10:11 +00:00
Ton Roosendaal
4b7930dbbd Bugfix #25681
Python API allowed to make links with input->output reversed.
Now node api checks for this case and flips order.
2011-01-17 15:16:08 +00:00
Campbell Barton
9d2292ef7e misc maintenance changes
- metaball tessellation functuion was calculating density when it didn't need to.
- image drawing was using a float as a loop counter, in extreme cases this could cause an infinite loop.
- remove/comment unused vars.
2011-01-17 08:31:57 +00:00
Janne Karhu
7297169a74 Fix for [#25637] curveguide forcefield(Kink: Braid) + particlesystem cause crash by Null Pointer in some cases
* Missing null pointer check.
2011-01-15 12:00:15 +00:00
Campbell Barton
69c582a3d4 error in last commit, also skip getting vars for wm_operator_reports() when there are no reports. 2011-01-14 21:45:49 +00:00
Campbell Barton
eac31a2ece remove unused vars & avoid some clang warnings. 2011-01-14 21:06:28 +00:00
Sergey Sharybin
439140d6ae Todo item #19816: Wave modifier does not affect Curve Paths
Added new option for applyong modifiers on splines' points. This moves
tesselation point and path would be affected by modifiers which are applied on
splines' points.
2011-01-14 16:57:53 +00:00
Joshua Leung
af4bc28c44 Bugfix [#25617] HOME Key in fcurve editor doesn't center properly
* When euler-rotation F-Curves had a single keyframe only, the view
would be artifically extended to fill up to 57 (this comes from the
radians to degrees calculations) due to a combination of the bounds-
finding function enforcing a minimum separation of 1 unit between
min/max. This has now been moved to the operator-level where it gets
applied AFTER these conversions have taken effect

* F-Curves with samples only (i.e. baked F-Curves) would be ignored by
these operators. Was caused by using a poll calback that only
considered whether there were keyframes. Hopefully this is sufficient;
otherwise a hybrid poll method will be needed.
2011-01-14 05:19:04 +00:00
Campbell Barton
4cc4a73a9e feature request from colin levy, camera lens stamp. 2011-01-13 19:16:35 +00:00
Campbell Barton
d2e6ea65c3 revert r34284, this fix was incorrect. 2011-01-13 10:14:03 +00:00
Campbell Barton
8227b3d463 remove/comment unused vars
also removed unnecessary NULL checks (where the pointer was used later without checking).
2011-01-13 04:53:55 +00:00
Ton Roosendaal
604d029ddf Bugfix #25570
The tool-redo depends on a working undo system, so it can rewind
a step and then redo operator with new settings. When a user
disables undo, this won't work.

Now the properties for redo operator (toolbar, F6) will grey out
when a redo isn't possible.
2011-01-12 18:00:23 +00:00
Campbell Barton
792f3b11f9 bugfix [#24774] Lattice modifier+Dupligroup+Texture solid=weird result
new 2.5x code was not passing group recalc flags onto objects within them.
2011-01-12 16:53:27 +00:00
Janne Karhu
4e15c169c6 Fix for [#25572] crash when changing vertex group density in particle mode
* Hair was freed & redone on changes, but particle mode data wasn't updated.
2011-01-12 10:01:33 +00:00
Campbell Barton
63018144ba remove redundant assignments & unused vars.
also minor functional changes
- OBJECT_OT_make_links_data() type property is now assigned to the operator property (so popup menu can find it)
- removing BG image now returns cancelled if no image is removed.
2011-01-12 03:41:12 +00:00
Joshua Leung
bbdf47aa0b Patch [#24808] B-Bone display size
Submitted by Dan Eicher (dna)

Adds the ability to resize b-bones (ctrl+alt+S) using the python api

Bone.bbone_x
Bone.bbone_z
2011-01-12 01:36:12 +00:00
Sergey Sharybin
37b903e32c Fix #25594: Adding mesh while in edit mode with multires - crash.
That primitives, which used ri crash blender, flips normals just after creation
and this normals flipping calls layers interpolation, but MDISPS layer
contains no data still.

Just added checking to layerInterp_mdisps.
2011-01-11 22:06:44 +00:00
Campbell Barton
5bcee8cd0a remove misc unused vars and correct theme name for face angles. 2011-01-11 07:40:31 +00:00
Campbell Barton
fded5e5ce5 comment/remove unused vars from particle and multires code.
also remove calls to dm->getFaceDataArray() within a loop for particle grid distribution,
instead call this once at the start and reuse the result.
2011-01-11 07:38:16 +00:00
Campbell Barton
5feb46d814 callback function ptcache_particle_extra_read() was incorrect type, also fix some other compiler warnings with recent commits. 2011-01-10 05:17:53 +00:00
Campbell Barton
ede0d85522 comment/remove various unused vars,
also make rna function for new images require width and hight args.
2011-01-10 03:58:07 +00:00
Campbell Barton
a9faad8b37 comment unused vars from subsurf code. 2011-01-10 03:55:47 +00:00
Janne Karhu
d9c6f51ee2 Compiler warning fixes for the same point cache things Joshua tried to fix earlier, don't know why I didn't notice these before. 2011-01-10 02:40:24 +00:00
Janne Karhu
83806d4042 Bug fix: particles dying in collisions could lead to crash in some cases
* Forgot to check for index range in own recent pointcache commit.
2011-01-10 02:20:30 +00:00
Janne Karhu
9231ff4160 Viscoelastic springs for sph particle fluids, original patch by Stephen Whitehorn (chickencoop)
* Viscoelastic springs between the fluid particles can simulate all kinds
  of viscous and elastic substances, such as jelly and honey. This is
  achieved by creating springs dynamically between neighboring particles
  and adjusting their rest length based on stretching/compression.
* This nearly completes the currently intended functionality for particle
  fluids. The last missing thing is a surfacing extraction algorithm,
  which is needed for a proper representation of a sph fluid.
* I also cleaned up and renamed some of the fluid parameters to make the
  ui a bit easier to understand.
* One addition to the patch is an option to use "initial rest length" for
  the springs, which uses the lengths between the particles at the time of
  spring creation as the spring rest lengths instead of interaction radius/2.
  This makes the fluid keep it's original shape better (good for very
  viscoelastic materials), but can create large density differences inside
  the fluid (not really physically correct for a fluid).
* Viscoelastic springs are stored in point cache as extra data.
2011-01-09 19:09:41 +00:00
Janne Karhu
1786923afc Replace uint32_t in pointcache code with unsigned int as it's supported in dna
* Not strictly necessary right now, but better for future.
* Struct data (only boids at the moment) is now written as structs (with dna) so they work between 64 and 32 bit machines too.
2011-01-09 18:23:41 +00:00