Commit Graph

13340 Commits

Author SHA1 Message Date
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
e9ca43521f BGE Physics
Add support back for reinstancePhysics mesh, a frequently requested feature in the BGE forums.
from what I can tell Sumo supported this but bullet never did.
Currently only accessible via python at the moment.

- rigid body, dynamic, static types work.
- instanced physics meshes are modified too.
- compound shapes are not supported.

Physics mesh can be re-instanced from...
* shape keys & armature deformations
* subsurf (any other modifiers too)
* RAS_TexVert's (can be modified from python)

Moved the reinstancePhysicsMesh functions from RAS_MeshObject into KX_GameObject since the physics data is stored here.

video and blend file demo.
http://www.graphicall.org/ftp/ideasman42/reinstance.ogv
http://www.graphicall.org/ftp/ideasman42/reinstance_demo.blend
2009-07-25 22:57:29 +00:00
Campbell Barton
1c00eacca2 fix memleak in BGE py api - action.channelNames 2009-07-25 20:51:45 +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
Ton Roosendaal
506d96cb0b Part two of svn release commit, last one! 2009-06-18 18:12:13 +00:00
Ton Roosendaal
0a132c6166 Bufix #18942
Composite "Map UV" node was using false UVs (0,0) from neighbouring 
pixels when those pixels were not rendered (or have no UV).

This commit checks for each neighbour sample it takes if the UV was
correctly set. Solves bad errors on edges of UV maps. With FSA even
totally smooth. :)
2009-06-18 17:00:47 +00:00
Kent Mein
a9b99ab01c coverity issue CID: 596
Checker: FORWARD_NULL (help)
File: base/src/source/blender/render/intern/source/texture.c
Function: do_lamp_tex
Description: Variable "dx" tracked as NULL was dereferenced.

Also found a typo the 3rd check was checking projx instead of projz
I also expanded the elses to set dyt as well as dxt.

Kent
2009-06-18 12:57:39 +00:00
Dalai Felinto
b033f07306 Fix for bug: [#18619] Shadow face flag ignores object's scale
In time for the 2.49a ahoy :)
2009-06-17 21:18:32 +00:00
Campbell Barton
95335af1b9 fix for a bug reported by zapman on blenderartist.
De-activating a loop-end actuator didnt work (it kept looping).
Looked into this further and it turns out that the actuators run with both positive and negative events false, the sound actuator assumes because its not negative that its a positive event and plays the sound anyway.

Fix by checking that its a positive event before playing.

The size limit on the message actuator was 100 which broke some scripts, set to 16384 instead.
2009-06-17 12:32:28 +00:00
Campbell Barton
50b22468b2 BGE PyAPI
while making a demo of using python to control bones found some more problems.
also added channelNames attribute to BL_ActionActuator to get a list of valid channels to use.
demo: http://www.graphicall.org/ftp/ideasman42/armature_python.blend

its still not that useful since theres not way to know rest bone locations yet but better then nothing.
2009-06-17 09:42:04 +00:00
Benoit Bolsee
fa3cd4aadf BGE #18823: Loading older blend files (from the blender Gamekit 1.0 demos) that use Sumo crash on playback in 2.48.5, worked in rc3. Fixed by upgrading Sumo to support the new method of sensor synchronization introduced with Sensor objects in Bullet. Sumo demo will not crash but may still not run well as other features and methods have not been ported. 2009-06-17 08:36:37 +00:00
Benoit Bolsee
5de1ddf96c BGE bug #18931: YoFrankie bug in 249-trunk (works in 248). 2009-06-17 06:54:35 +00:00
Peter Schlaile
88f3ec3fdb == FFMPEG ==
This fixes:
[#18262] From FFMPEG/audio menu the PCM selection is missing
(thanks to Mika Saari (mikasaari) for the patch!)
2009-06-16 21:28:19 +00:00
Peter Schlaile
74d3d136db == Sequencer ==
Fixed color balance tool. Problem was: we pretended to do Lift/Gamma/Gain,
but in reality we did (1-Offset)/Power/Slope. (slightly modified ASC CDL).

So now, the GUI is able to switch modes between ASC CDL-mode and real
Lift/Gamma/Gain.

It also adds a switch to enable Neutral Black/White flipping 
(very usefull for black point selection)

This closes:

[#18078] bugfix #18010 Sequencer lift
2009-06-16 21:16:22 +00:00
Campbell Barton
2faf20c4b3 BGE Action Actuator setChannel() function was broken in a number of ways.
* extract_pose_from_pose only checked one of the list items for NULL when looping over them yet its possible they are different sizes.
* game_free_pose needed to be used rather then MEM_freeN, channels would never be freed leaking memory.
* setChannel() would make a new pose that wasnt aligned with the existing pose, the lists are assumed aligned so when extracting the channels its unlikely this was ever useful.
* Added getChannel() - returns pose loc/size/quat
* Added option args for setChannel(channel, matrix) or setChannel(channel, loc, size, quat)
2009-06-16 18:25:48 +00:00
Campbell Barton
aa0825a5e5 looks like a mistake. should check with the scene render size, not the current scenes. 2009-06-16 15:44:08 +00:00
Campbell Barton
0a66e24bd7 KX_PythonSeq (used for a number of BGE sequence types)
* cont.actuators.get("key", default) # dict like get function
* if "key" in cont.sensors: ...

Updated docs
Added missing include to Particle.c
2009-06-16 08:52:04 +00:00
Campbell Barton
2ecbe1c81c BGE Py API
* Removed modules Expression and CValue, neither were ever available.
* Added GameLogic.EvalExpression(exp) from the Expression module, evaluates an expression like the expression controller (not sure if this is really that useful since python is far more advanced).
* resetting the original blend file path didint work (own fault == -> =)
* Py3.x PyModule_Create didnt allow importing since it didn't add to sys.modules,
  Looks like they want us to use init-tab array, but this doesn't suit us since
  it needs to be setup before python is initialized.
* Documented GameLogic.globalDict
2009-06-16 07:16:51 +00:00
Campbell Barton
6efd2e6439 saving globalDict didnt work with python3.x 2009-06-15 20:22:50 +00:00
Brecht Van Lommel
1a7d3a0856 Bug #18920, clarification in tooltip of Mirror Vgroup option in
the mirror modifier.
2009-06-15 12:18:17 +00:00
Brecht Van Lommel
b8d0f62fd2 Fix for bug #18924: OpenGL performance issue with particle modifiers,
actually two modifier datamask optimizations that were never done.

* Don't use modifier data mask for disabled modifiers.
* Check if UV data is needed for particle system instead of always
  requesting it.
2009-06-15 11:48:42 +00:00
Peter Schlaile
afaa3768e6 == Sequencer ==
Fixes an irritating but harmless error message when using custom proxy files.
2009-06-14 20:52:43 +00:00
Benoit Bolsee
bc6761f5ef BGE bug #18869: Can't create Windows runtime. 2009-06-14 20:01:12 +00:00
Peter Schlaile
ca12954e9f == Sequencer ==
Big proxy fix (addressing hopefully most complaints on mailing list and 
in tracker)
* proxy render settings are now independent of render size settings.
  That means: which proxy size is used, is controlled by two parameters
  now: the proxy size of the files, can be controlled with additional
  buttons within the proxy panels. What is shown in a specific preview
  window depends on the header settings of the preview panel.
  So: proxies are _only_ used in those windows, that are switched to a
  specific proxy resolution.
* output rendering is always done _without_ proxies.
* proxy generation now shows a waitcursor with numbers.
  (closing Bug: [#18909] Building Proxies doesn't give any feedback
  which was rather a feature request, since the problem mentioned there
  was always the case :) )
2009-06-14 18:54:35 +00:00
Peter Schlaile
36e96e5b6e == Sequencer ==
This fixes:
* free_imbuf_seq() didn't free all scenes. That will lead to steady memory
  growth in case of nested timelines with several scenes.
* sequencer panels were always jumping around, depending on strip type,
  which was caused by choosing always the same panel position and the
  silly limitation, that
* effect strips had no filter option, which was therefore added.
  So you can apply color balance on effect filter output now :)
2009-06-14 10:59:54 +00:00
Campbell Barton
7aeadf2baa typo in gpu_extensions.c, removed unused function 2009-06-14 06:52:46 +00:00
Campbell Barton
e3fda550ba changing the scale of a sleeping object wasnt working with bullet.
Example is a cube that lands on a plane, sleeps after some time, a script changes the scale.
It would still use the scale when the object first went to sleep.

reported on blenderartist.
http://blenderartists.org/forum/showthread.php?t=158617
2009-06-14 06:03:12 +00:00
Kent Mein
bde991df9e coverity issue CID: 275
Checker: FORWARD_NULL (help)
File: base/src/source/blender/gpu/intern/gpu_extensions.c
Function: GPU_shader_create
Description: Variable "fragcode" tracked as NULL was passed to a function that dereferences it.

fix provided by Brecht. :)

Kent
2009-06-13 22:31:14 +00:00
Kent Mein
472239cc94 coverity issue CID: 307
Checker: FORWARD_NULL (help)
File: base/src/source/blender/blenkernel/intern/modifier.c
Function: meshdeformModifier_deformVerts
Description: Variable "dm" tracked as NULL was passed to a function that dereferences it.

fix provided by Brecht.

Kent
2009-06-13 22:23:24 +00:00