Commit Graph

12114 Commits

Author SHA1 Message Date
Campbell Barton
2fc4ee3545 Curve cleanup
Renamed BevPoint's members
* x,y,z -> vec[3]; compatible with other functions.
* f1 -> split_tag; used by displist to set the splitting flag.
* f2 -> dupe_tag; used in curve.c to remove duplicates.

BevList
* flag -> dupe_nr; was being used as a counter for duplicate points.

* use arithb.c functions where possible.

* arrays for coords, tilt and radius were being allocated, then copied into the BevPoint's, now write directly into the values without allocing/freeing arrays.
2009-09-10 02:57:25 +00:00
Brecht Van Lommel
4cb53d91ea Small code cleanup related to curves, to avoid cryptic names:
renamed set_four_ipo -> key_curve_position_weights
renamed set_afgeleide_four_ipo -> key_curve_tangent_weights
added key_curve_normal_weights
2009-09-09 18:09:03 +00:00
Campbell Barton
183c8e0a0a no functional changes, use hole rather then dutch 'gat' for bevel lists and made some comments English. 2009-09-07 07:42:12 +00:00
Dalai Felinto
7064f6c5d8 Mathutils fix: Vector.reflect
* correct function for reflection and moving it to arithb.c
* note: 2.5 has an already more elegant solution for it (still wrong, but the code is cleaner).
Therefore the merge may need to be manual in that case.

Specifically in 2.5 we are doing:
if(!BaseMath_ReadCallback(self) || !BaseMath_ReadCallback(value)) return NULL;
And there we don't need to create a VectorObject *mirrvec; only to get the values.

Code used to test it:
http://www.pasteall.org/7654/python

* YoFrankie script probably needs to be fixed too.
2009-09-06 19:51:57 +00:00
Martin Poirier
a46beac3f8 Rename Vec3ToTangent VecBisect3, since that's what it does. 2009-09-06 01:11:47 +00:00
Campbell Barton
c9dd69c11a remove MTC_ functions, (don't merge)
replacements...
MTC_cross3Float -> Crossf
MTC_diff3Float -> VecSubf
MTC_dot3Float -> Inpf
MTC_Mat3CpyMat4 -> Mat3CpyMat4
MTC_Mat3MulVecd -> Mat3MulVecd
MTC_Mat3MulVecfl -> Mat3MulVecfl
MTC_Mat4CpyMat4 -> Mat4CpyMat4
MTC_Mat4Invert -> Mat4Invert
MTC_Mat4Mul3Vecfl -> Mat4Mul3Vecfl
MTC_Mat4MulMat4 -> Mat4MulMat4
MTC_Mat4MulSerie -> Mat4MulSerie
MTC_Mat4MulVec4fl -> Mat4MulVec4fl
MTC_Mat4MulVecfl -> Mat4MulVecfl
MTC_Mat4One -> Mat4One
MTC_Mat4Ortho -> Mat4Ortho
MTC_Mat4SwapMat4 -> Mat4SwapMat4
2009-09-06 00:19:15 +00:00
Campbell Barton
3b743ac556 Option to correct for 3D curve twist error. example before and after.
http://www.graphicall.org/ftp/ideasman42/curve_auto_twist.png
Access next to the "3D" edit button.

details...
- open curves use the first points orientation and minimize twist for each new segment.
- cyclic curves calculate the least twist in both directions and blend between them
- AxisAngleToQuat replaced inline code.
- Notice the model on the right now has more even corners. added Vec3ToTangent to arithb.c.
2009-09-05 09:54:01 +00:00
Ton Roosendaal
959757c2d7 Part 2 of the 2.49b commit.
We now should freeze and tag!
2009-08-31 18:17:06 +00:00
Campbell Barton
043641de72 corrections to epydocs 2009-08-31 13:03:38 +00:00
Peter Schlaile
ca96a75af4 == Sequencer ==
Fixed hddaudio for sample formats other than 16 bit (8 bit e.g.)
2009-08-30 19:38:22 +00:00
Campbell Barton
d7bf9688ac fix for crash when a parent compound object didn't get a physics controller.
also show this in the UI.
2009-08-27 23:29:07 +00:00
Campbell Barton
324b3fbe74 - BGE crash fix when casting a ray to the same location as the object from python.
- Incorrect Mathutils vector docstrings.
- last rayshade commit had an incomplete comment.
2009-08-27 06:55:54 +00:00
Campbell Barton
0db2975ff6 [#18837] if a sunlamp is set to a too high energy, speculars turn black
shr->spec values could be greater then 1.0, causing negative color when using (1.0-shr->spec[i]) as a blending factor.

When shr->spec[i] is 1.0 the mircol is ignored, so only mix the mircol when needed (like clamping the spec).
2009-08-26 16:05:01 +00:00
Campbell Barton
9261efa4d6 [#18936] Particle Related Patch
from Alberto Santos (dnakhain)

This also adds the option to duplicate a particle system with an object.

 --- description from the patch submission.

This patch includes my latest additions to the Python API developed for my Degree's Project.

It includes:
 - Particle
    - Vertex group dictionary in doc (to use with setvertexgroup/getvertexgroup)
    - Particle.New return psys (not specified in doc)
    - Draw As variable and dict
    - Strand render toggle
 - Object
   - psys variable in duplicate
 - Material
   - Strand render variables
 - Texture
   - Use colorbands
 - Lamp
   - Spot buffer type selection
2009-08-24 10:37:39 +00:00
Campbell Barton
9967037e92 [#19029] Baking selected to active with nearby dupliframes objects crashes blender
from Jorge Hodge (watcom)

Confirmed the crash. baking didn't account for RE_RAY_TRANSFORM_OFFS in R.objectinstance.
2009-08-24 10:16:39 +00:00
Nathan Letwory
5e9e6df2a2 * changes to work with updated FFMPEG libs. Mainly build system. CMake files may need changing too.
NOTE: remember to svn up in lib/windows!
2009-08-24 02:49:57 +00:00
Campbell Barton
4a4a3b4989 Option for MouseFocus sensor. only used when 'Mouse over any' type is set.
Previously the only way to detect if the mouse moved over a different object was to enable true-level-triggering and have a python script detect the change.

When the Pulse option is set, focusing on a different object pulses true.
Python attribute is focusSensor.usePulseFocus.

This is similar to the collision sensors pulse option where changes in the set of collision objects generates an event too.

Found this functionality missing when trying to make a logic demo that used mouse-over with overlapping objects.
2009-08-23 06:17:59 +00:00
Jens Ole Wund
93dd95b6c2 bug fix #18982
non mesh objects missing initializers
2009-08-21 12:49:21 +00:00
Peter Schlaile
c73bad7bdd == Sequencer ==
Forgot coverity id: CID 598
2009-08-16 14:52:05 +00:00
Peter Schlaile
71cc934c6f == Sequencer ==
Make coverity scan happy and check for input strip on speed control map
rebuild.
2009-08-16 14:43:30 +00:00
Campbell Barton
e7c53e20a1 gameObject -> blenderObject mapping was being created but wasnt needed.
Added utility func tag_main for (un)tagging every ID in a Main database with LIB_DOIT.
2009-08-07 03:51:28 +00:00
Campbell Barton
a791cfc5d3 [#19206] Fix MD2 Vertex Normal Export
from Calvin Loncaric (marvinx03)

[#18965] Blender Load and Run need fully qualified specs
[#18966] getMaterials not used
from Roger Wickes (roger)
2009-08-06 22:24:14 +00:00
Campbell Barton
85d75077a6 [#19035] New Python command to set the active flag of Armature Bones
from Ivo Grigull (loolarge)

Removed redraw calls from the python function, added epydocs.
2009-08-06 22:11:33 +00:00
Campbell Barton
95e08f6bff * remove unused member of KX_Scene - m_objecttree
* implicit declaration of getenv in glutil.c
2009-08-02 23:53:53 +00:00
Guillermo S. Romero
0045a70d96 Allow users enabling workaround for menus with some Mesa3D drivers.
Define the env var BLENDER_FORCE_SWAPBUFFERS to enable (1, yes, oui, the
value does not matter, code just checks for existence).

The issue seems to happen with Intel and Radeon, but enabling myswapbuffers()
hack solves it (or reduces to just flicker) for now.
https://bugs.freedesktop.org/show_bug.cgi?id=21774

Reported by Philippe Van Hecke.
2009-08-01 22:23:57 +00:00
Campbell Barton
e60138117c - Ancient resource leak (rev 2) where checkPackedFile would open a file and never close it.
- Running simulations missed freeing some variables.
2009-08-01 06:27:40 +00:00
Robert Holcomb
a0c22badc1 Bug fix in low value setting. Originally checked against the wrong channel (chroma) instead of the luminence channel.
Changed default value for high value to 1.0 from 0.0.
2009-07-31 12:51:18 +00:00
Joseph Eagar
94e06c9859 changed some sprintfs to strcats, thanks to Fredrik Axelsson for the patch 2009-07-28 17:23:45 +00:00
Campbell Barton
ddb09d3220 [#19036] blender should use 'static inline' in BKE_cloth.h to work with C99
Török Edwin (edwintorok)

this was the only thing stopping blender being compiled with clang
2009-07-28 01:48:10 +00:00
Campbell Barton
dd918da8de ReplaceMesh Actuator option to replace the physics mesh and display mesh + python api options.
When the mesh field is left blank and Physics option is enabled, it reinstances the physics mesh from the existing mesh.
like calling gameOb.reinstancePhysicsMesh() from python.
2009-07-26 01:32:37 +00:00
Campbell Barton
88097e9909 - BGE Python API converting a mesh from a python arg was broken but happened to work if the uninitialized pointer was not NULL.
- iris.c - looks like a copy/paste error, was using rect where it could not have been initialized.
2009-07-25 19:34:38 +00:00
Kent Mein
431a388ae7 This is patch# 19017 16bit SGI image loading
submitted by Albertas Vyšniauskas (thezbyg) 

Improves SGI image support.

Kent
2009-07-24 17:17:04 +00:00
Peter Schlaile
99f373dc58 == Sequencer ==
Small fix for:

* Scene-Strip rendering with compositor scenes failed, if they
  had no camera attached...
2009-07-15 16:17:22 +00:00
Joseph Eagar
b76331a0aa trunk bugfix: added missing undo push. 2009-07-08 07:02:59 +00:00
Peter Schlaile
4ebcc7402c == Python ==
Fix for the fix: G.scene slipped in at one point and the
filepath generation was broken due to a typo.
2009-07-04 15:35:16 +00:00
Peter Schlaile
6a1a7f7905 == Python ==
This fixes:
* background rendering on scenes different from active scene
* makes scene.render() behave the same in interactive and background mode
* makes saveRenderedImage() work correctly in background mode
2009-07-04 14:59:28 +00:00
Campbell Barton
d5737f1f67 saving runtime on win32 didnt work with python2.6 2009-07-04 12:41:34 +00:00
Campbell Barton
8a35439e23 converting nurbs to a mesh ignored smoothing for Alt+C and from pythons getFromObject() 2009-07-01 13:07:28 +00:00
Campbell Barton
417aeb935a patch [#18950] Get/set bone and type of drivers
by Alberto Torres Ruiz (dithi) 

--- quoting the patch submission
This patchs adds the properties IpoCurve.driverBone and IpoCurve.driverBone2 and modifies IpoCurve.driverChannel to
allow OB_ROT_DIFF.

It sets the driver type to pose if IpoCurve.driverBone is not empty or None. Otherwise the driver type is set to
object.

Attached is the patch (with python doc) and an example .blend.

It also fixes the confusing description of IpoCurve.driver
2009-06-28 14:55:22 +00:00
Peter Schlaile
b1a5b08b1a == Sequencer ==
Small fix by jms: rint() isn't available on win32... 
(hmm, rint() is conforming to C99, that is _really_ strange...)
2009-06-26 19:40:28 +00:00
Peter Schlaile
efcdd16b07 == Sequencer ==
Additional speed control fixes:
frame blending can now be done on more than two
frames, enabling really fine grained motion blur
if you speed up a sequence with high factors (bigger
than two).

Next step: add morphing support using motion 
estimation.
2009-06-26 15:09:39 +00:00
Peter Schlaile
6f87d03b3c == Sequencer ==
This fixes several issues with the Speed Control Effect:
* IPO curve-deletion resulted in non-working effect
* easy retiming only allowed enlarging of strips,
  now shrinking is also possible (easy retiming:
  use the right display handle of input strip and
  shrink or enlarge, will make the speed of the
  strip exactly fit the effect strip's length)
* frames after end-of-display of input strips can
  now be accessed (which is necessary for fix #2)
  
=> just use easy retiming from now on, it's fun :)
2009-06-26 07:32:24 +00:00
Ton Roosendaal
8cda8abefe Bugfix, testing venom's lab .blends
Using LightGroups override for material doesn't work for preview
renders. Code didn't correctly return correct light listbase then,
crashing Blender on preview render.
2009-06-25 12:32:55 +00:00
Campbell Barton
434a994f30 Mathutils quat1 * quat2 was broken, returned quat1*quat1 instead. 2009-06-25 01:37:19 +00:00
Jens Ole Wund
122808b839 bug fix SoftBody module
vertex groups are not notified on deletion .. and other relevant changes  ..
sneak in Mass and Spring Painting
2009-06-24 23:42:45 +00:00
Dalai Felinto
320fc51a2b BGE pyAPI update
(adding "when accessing it from the Game Engine use Mathutils instead of Blender.Mathutils" message in Blender pyAPI doc)
2009-06-21 17:40:56 +00:00
Peter Schlaile
29c6440bb3 == AVI ==
Only open AVI files with at least one supported video track type.
(This is the real fix for DV-Type1-AVIs, since the FCC of iads, that
is used there, wasn't detected. But the code will happily open AVI-files
with only audio tracks... So the real fix is: only try to open things, that
contains something we know how to handle :) )
2009-06-21 17:00:18 +00:00
Peter Schlaile
4dec9f3cb6 == Sequencer ==
Very, very last minute patch for Blender on Windows systems:
move blender's internal AVI reader the last try in the list of
codecs, when opening movie files.

Otherwise, it will fail on Movie Maker captured DV-AVI files.
(isavi() seems to mistreat these files as RAW/MJPEG AVI and fails
later on IMB_anim_absolute() )
2009-06-21 12:02:40 +00:00
Campbell Barton
bc77cc3a81 typo in logic buttons 2009-06-20 05:16:09 +00:00
Campbell Barton
504fa6e2bc own copy/paste error, euler.wrapped would give a bad value 2009-06-18 18:23:22 +00:00