Commit Graph

11886 Commits

Author SHA1 Message Date
Brecht Van Lommel
35c269e395 Workaround for an Nvidia driver bug on 32 bit linux (maybe windows too).
I reversed the order of attaching shader objects for linking to solve an
issue in the driver before, but now it appears it needs to be the other
way around again? I don't know if these are the same cards that now want
it different again due to changes in the glsl code, but I found another
workaround for the first bug in a forum post (leaving out parameter names
in the declarations), so with some luck both cases work?

http://developer.nvidia.com/forums/index.php?showtopic=596
2008-09-15 18:15:11 +00:00
Kent Mein
cffba77f50 Small tweak to get things compiling again.
Kent
2008-09-15 15:58:50 +00:00
Brecht Van Lommel
dc2594c81b Added -d debug option for blenderplayer, and remove some
invalid/unnecessary opengl calls on shader errors.
2008-09-15 12:40:17 +00:00
Brecht Van Lommel
fd3a40a129 Fix glsl vertex shader string that was not 0 terminated, no idea
if it caused any problems.
2008-09-15 11:39:49 +00:00
Campbell Barton
e5ce1e962d copy menu didnt copy visible and initial states, physics margin was also missing from "all physical attributes" option 2008-09-15 09:24:54 +00:00
Campbell Barton
a08b21263e tooltip improvements from dfelinto, some minor edits 2008-09-15 09:08:36 +00:00
Joshua Leung
ec30a3a470 Delete Key Tool - Bugfixes:
* Available option would crash
* 'Visual' options are now not available for this tool (are not relevant)
2008-09-15 04:15:37 +00:00
Campbell Barton
89721ec4de replaced static make_absolute_filename with BLI_convertstringcwd 2008-09-15 02:18:37 +00:00
Campbell Barton
ac86c04401 added BLI_convertstringcwd, used so command line blendfiles and python scripts can be relative to the current path.
- was alredy doing this for blendfiles, but better to have in its own function.

header_text.c - renamed PATH_MAX, was defined by system includes.
2008-09-15 01:32:53 +00:00
Brecht Van Lommel
2c31cc4503 Fix for bug #17620: the motion blur actuator did not work correct
with an always sensor, it kept resettting the motion blur each frame.
2008-09-15 00:57:11 +00:00
Brecht Van Lommel
a24960daa8 Fix for bug #4859: once a visibility actuator was set it was not
possible to change the visibility again through python for example.
This is because the actuator kept setting the visibility again each
frame, as a workaround for there being no separate visible and
viewport culling flag, but that was added some time ago.
2008-09-15 00:34:43 +00:00
Brecht Van Lommel
3b153f887a Fix zoom level and clipping to be consistent with the viewport
when pressing P without a camera active, now it should match
the view exactly.

Fix an issue when setting a camera with an actuator and being
in orthographic mode in the viewport without an active camera,
it used a strange mix of the set camera and the viewport then.
2008-09-15 00:11:30 +00:00
Brecht Van Lommel
f554f14329 Fix for bug #17617: GLSL shaders change vertex color unexpectedly. 2008-09-14 21:31:07 +00:00
Benoit Bolsee
41a0b56b70 BGE patch: new Physics button and margin parameter in Logic panel. Change subversion.
The Physics button controls the creation of a physics representation 
of the object when starting the game. If the button is not selected,
the object is a pure graphical object with no physics representation
and all the other physics buttons are hidden.
Selecting this button gives access to the usual physics buttons.
The physics button is enabled by default to match previous Blender
behavior.

The margin parameter allows to control the collision margin from
the UI. Previously, this parameter was only accessible through 
Python. By default, the collision margin is set to 0.0 on static 
objects and 0.06 on dynamic objects. 
To maintain compatibility with older games, the collision margin
is set to 0.06 on all objects when loading older blend file.

Note about the collision algorithms in Bullet 2.71
--------------------------------------------------
Bullet 2.71 handles the collision margin differently than Bullet 2.53
(the previous Bullet version in Blender). The collision margin is 
now kept "inside" the object for box, sphere and cylinder bound 
shapes. This means that two objects bound to any of these shape will
come in close contact when colliding. 
The static mesh, convex hull and cone shapes still have their
collision margin "outside" the object, which leaves a space of 1
or 2 times the collision margin between objects. 

The situation with Bullet 2.53 was more complicated, generally
leading to more space between objects, except for box-box collisions. 

This means that running a old game under Bullet 2.71 may cause
visual problems, especially if the objects are small. You can fix
these problems by changing some visual aspect of the objects: 
center, shape, size, position of children, etc.
2008-09-14 19:34:06 +00:00
Benoit Bolsee
7762100fcb Update MSVC project and fix compilation problem in VS2003 with keyframing.c 2008-09-14 19:07:57 +00:00
Brecht Van Lommel
59b202fc32 Fix a game engine crash with mesh objects parented to an armature
without vertex groups.
2008-09-14 17:59:22 +00:00
Campbell Barton
9444b314db fix for what looks like simple mistake, function wasnt returning any values (compiler warning) and the variable being checked to return a value was never assigned. 2008-09-14 17:19:59 +00:00
Andrea Weikert
2eb8eb4e7e Bugfix: avoid crash with too long pathname. 2008-09-14 16:22:03 +00:00
Ken Hughes
6977816ff3 Python API
----------
Fix C90 mixed declarations and code.
2008-09-14 14:17:44 +00:00
Joshua Leung
4245aaed86 == Global 'Delete Key' Tool ==
The 'opposite' of the "Insert Key" tool. 
- Use the hotkey Ctrl-Alt-IKEY to activate.
- Only available in 3d-view and buttons window 

I've added an extra var to verify_ipo and verify_ipocurve to save having to make another duplicate of that code. Hopefully the gameengine compiles ok with this.
2008-09-14 12:41:42 +00:00
Ton Roosendaal
2bf26b93e1 Bugfix #17608
Fileselect window:
Pressing X to remove a file should not work in databrowse view.
2008-09-14 09:09:10 +00:00
Joshua Leung
375a6bbe41 More bugfixes:
* Added missing includes
* Fixed typos in header
* Added code to get ipo for 'Available' keyingsets to work
2008-09-14 05:52:57 +00:00
Campbell Barton
b25d0cc5cc game engine didnt compile with recent keyframing changes 2008-09-14 05:42:05 +00:00
Campbell Barton
1a917f50a6 running scripts in background mode would crash in some cases. (tested all scripts, none segfault now) 2008-09-14 05:10:45 +00:00
Joshua Leung
0f1a1a159f == Keyframing - Cleanup of API ==
* Moved all keyframing functions to their own file (keyframing.c)

* Merged all the different keyframing options (needed, visual, fast) into a single API call. The direct benefit of this is that it allows them to be used in conjunction with each other. Also, this means that when using the IKEY, autokeying settings for these are respected too.

* Implemented 'keyingsets' system (instead of directly calling insertkey on relevant channels), which is easier to maintain and cleaner. A keyingset basically defines all the channels that can be keyframed together. This paves the way for custom keyingsets sometime down the track (and also for quick-insert keyframes for previously used keyingset).

Menus for choosing the keying set to use are generated automatically from the definitions.
2008-09-14 04:32:17 +00:00
Brecht Van Lommel
d111983064 Fix for bug #5758 and #17585: armatures with IK constraint did not
work in the game player, now the IK lib is linked into the player.

Makefiles/Scons/CMake buildsystems have been updated.

Fix materials nodes to work in the game player.
2008-09-14 03:51:51 +00:00
Brecht Van Lommel
c4cde9a027 Fix for bug #7097: blender multitexture materials in the game engine
player did not enable mipmapping when falling back to texfaces.

Also commented out code that disabled mipmapping in the player on
Mac OS X. If that is a workaround for a bug it is a really poor one,
and hopefully fixed now since this code is from 2002 or earlier.
2008-09-14 01:10:45 +00:00
Brecht Van Lommel
704fef314a Various game engine fixes:
* Fix issue with add transparency mode with blender materials.
* Possible fix at frontface flip in the game engine.
* Fix color buffering clearing for multiple viewports, it used
  to clear as if there was one.
* Fix for zoom level in user defined viewports, it was based on
  the full window before, now it is based on the viewport itself.
* For user defined viewports, always use Expose instead of
  Letterbox with bars, the latter doesn't make sense then.
2008-09-14 00:32:18 +00:00
Janne Karhu
06be41648f Fix for #11740 - Reactor particles do not render in animation.
- Particle data was deleted when the current frame was outside the baked range. Reactor particles need this data to store birth and death times.
2008-09-13 21:06:22 +00:00
Brecht Van Lommel
fa825e70e3 Game engine: added Rasterizer.get/setMaterialMode to set texface,
multitexture or glsl materials. This does not affect existing
scenes, only newly created ones.
2008-09-13 19:19:51 +00:00
Janne Karhu
d2186508da Particle collisions upgrade:
- Particle now use the deflector objects collision modifier data to collide with deflectors and as a result can now use the velocity of the colliding object for more realistic collisions.
- Dynamic rotations are also quite a bit more realistic and are related to the friction setting of the deflector (to get any dynamic rotations there has to be some friction). This is largely due to the separate handling of rolling friction (approximated to be 1% of normal sliding friction).
- Collisions should be a bit faster on complex deflectors due to the tree structure used by the collision modifier.
- Collision should also generally be a bit more accurate.

To be noted: Only the average velocity of individual deflector faces is used, so collisions with rotating or deforming objects can't be handled accurately - this would require much more complex calculations. Subdividing the deflector object surface to smaller faces can help with this as the individual face velocities become more linear.
2008-09-13 18:09:41 +00:00
Benoit Bolsee
8925ae6042 BGE patch: use new btScaledBvhTriangleMeshShape to allow shape sharing between replicas and avoid BVH rebuild in case of scaling. This will save memory and speed up greatly the instantiation of static mesh. 2008-09-13 16:03:11 +00:00
Brecht Van Lommel
63ecf9966e Fix to make blenderplayer compile with makefiles on Mac OS X. It worked
on Linux already, I think there is a difference in the linker.
2008-09-13 14:21:06 +00:00
Benoit Bolsee
ba9d3aa4ab BGE patch: fix transform bug on compound shape: child shape didn't take into account parent inverse node. Fix scaling bug on instantiation of compound shape: child shape didn't have correct shape. Note: global scaling doesn't work on compound shape (limitation of Bullet); don't set any scale on the top dynamic object. 2008-09-13 11:46:07 +00:00
Campbell Barton
dfb5ebb12e return dummy python values when no joystick is present 2008-09-13 11:43:01 +00:00
Brecht Van Lommel
21d74deda6 Fixes for game engine runtime on Mac OS X, there were issues
working with relative paths. Still doesn't work optimal, since
paths are relative to game.blend which is in the app bundle
under Contents/Resources, so other files need to be moved there
manually at the moment.
2008-09-12 16:06:17 +00:00
Ton Roosendaal
6ebd6cfa73 Bugfixes in SDL joystick, apparently it gives NULLs in OSX. 2008-09-12 15:26:00 +00:00
Daniel Genrich
ed0a0c704d merging bullet 2.71 to trunk --> svn merge -r16334:16486 https://svn.blender.org/svnroot/bf-blender/branches/sim_physics 2008-09-12 14:09:44 +00:00
Campbell Barton
f40aa6d13f typo in recent commit 2008-09-12 13:26:49 +00:00
Campbell Barton
b0d9994220 made max sounds playable at once 32 rather then 16. (demo release background music would turn off otherwise)
made selecting sound samples keep the relative path setting.
2008-09-12 13:24:22 +00:00
Daniel Genrich
0795d01df4 Bugfix [#17609] Complex particles crash II - related to #17592 2008-09-12 13:15:52 +00:00
Daniel Genrich
f274336f2f svn merge -r 16453:16485 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2008-09-12 12:58:08 +00:00
Daniel Genrich
1adc2dce52 Correct half of rev16483, which does typecasts which are not nice on Win64 plattform 2008-09-12 12:33:55 +00:00
Joshua Leung
215828455a IPO Editor - Zoom view to area
The Shift-B hotkey can now be used to access this tool.
2008-09-12 05:54:39 +00:00
Ken Hughes
3e5549213c Add some typecasts for intptr_t and uintptr_t value to fix gcc warnings. 2008-09-12 05:27:02 +00:00
Diego Borghetti
c45f1f504b Fix segmentation fault in ipo transform.
The NLA_IPO_SCALED define don't check if we have a Ipo Space open,
so in some case (like when you move a rig with locrot key) when
the function make_ipokey_transform is called, Blender crash.
2008-09-12 05:14:57 +00:00
Ken Hughes
d86c4c1004 Python API
----------
Patch #17481: added Material attributes for missing colorbands controls:
 * material.colorbandDiffuseInput
 * material.colorbandDiffuseMethod
 * material.colorbandDiffuseFactor
 * material.colorbandSpecularInput
 * material.colorbandSpecularMethod
 * material.colorbandSpecularFactor

Contributed by Emilio José Encinas Mir (asfhy).  Thanks!
2008-09-12 05:02:06 +00:00
Ken Hughes
4335811695 Python API
----------
Second and final part of MTex API changes.  Added support for new attributes for MTex World objects, stricter checking of attribute types for materia/lamp/world MTex objects, setters for lamp.textures and world.textures attributes, and updated documentation.
2008-09-12 02:23:52 +00:00
Campbell Barton
0dea748e01 save and load configuration actuator, (option in game actuator menu)
saves a marshal'd GameLogic.globalDict to the blendfile path with the blend extension replaced with bgeconf

Use this in YoFrankie to save keyboard layout and graphics quality settings.
2008-09-12 02:15:16 +00:00
Ken Hughes
75841bc97f Python API
----------
Add description for missing parameter in Mesh.MFaceSeq.extend() documentation.
2008-09-11 23:50:22 +00:00