Commit Graph

11289 Commits

Author SHA1 Message Date
Janne Karhu
9ec6083cfe Fix for [#17414] Particles doesn't obey to lattice once children are added
-Lattice calculations were left out for children by accident
2008-08-04 14:17:11 +00:00
Janne Karhu
0c9508d248 Fix for [#17366] Particle children from particles only take colour from UV-Maps
-Some old code in particle rendering hadn't been updated properly.
2008-08-04 13:57:04 +00:00
Matt Ebb
2e6a3710bb * Armature hierarchy selection tools
These are for use in pose mode or armature edit mode, to let you quickly traverse up and down a chain of bones. 
It's quite useful for bones that are in hard-to-click places.

The tools are:
*Select parent/child ( [ and ] )
selects the parent or child of the active bone, deselecting the original active bone

* Extend select parent/child (shift [ and shift ] )
selects the parent or child of the active bone, adding to the selection

Thanks to Joshua for reviewing this so promptly!

PS. I'd like to use these [ and ] keys more widely in blender as consistent 'select next / previous' tools. I can imagine it being very useful for a lot of things like keyframes, nodes, mesh edges, etc.
2008-08-04 11:47:17 +00:00
Campbell Barton
3598dcd279 * KX_GameObject.cpp - error with getMesh(), was returning None rather then an error with invalid args. also memory leak with getVectTo() if invalid args were given.
* Material.c - functions for get/setRayTransGlossSamples were not being used.
* BPY_interface.c - removed function GetName(), since everything else just uses id->name+2.
* header_info.c - added ifdef win32 around copy_game_dll since its not needed for other os's yet
2008-08-04 01:57:22 +00:00
Benoit Bolsee
ae762bec91 BGE patch #17398 approved: implementation of BGE method getVectTo(). 2008-08-03 21:59:36 +00:00
Peter Schlaile
b647c5bba5 == FFMPEG ==
This fixes:
[#16655] Blender crashes when Fraps videos are added to the sequencer

(sorry, color conversion is not supported by swscaler for some reason,
so currently, only the crash is fixed)
2008-08-03 16:11:57 +00:00
Peter Schlaile
855fa737d7 == Sequencer ==
Fixes:
[#15082] Sequencer: for image strips, the Input file field disappears if the cursor is out of the selected strip

also it wasn't really a bug, since the file name of image input strips
_has_ to depend on CFRA.

Well, we choose the next possible image strip, which is most likely the thing,
most people expected...
2008-08-03 15:56:35 +00:00
Peter Schlaile
7fc6741bcf == Sequencer ==
This fixes:
[#17405] Sequencer: unselected black strips are unreadable
using
[#17418] Fix for bug #17405: unselected black seq strips text unreadable

Thanks to Roelf De Kock for providing the patch and 
mindrones for the bug report :)
2008-08-03 15:45:53 +00:00
Peter Schlaile
cad3b73144 == Sequencer ==
This fixes:
[#17413] Sequencer: Blender crashes pressing R on a color strip
2008-08-03 15:35:56 +00:00
Joshua Leung
27b259345e Grease Pencil Drawing:
Some WIP code for 'nicer' drawing of thick 2d-strokes that will hopefully result in smoother lines, particularly with abrupt direction changes. Currently the code is hidden behind the rt button (for rt != 0), as in some cases, it still looks rather bad.
2008-08-03 11:55:45 +00:00
Daniel Genrich
7a14a3580b Little speedup for kdop-bvh 2008-08-03 11:40:09 +00:00
Daniel Genrich
1d49ed89cb Bugfix for non working selfcollisions [no 2.47 bugfix] 2008-08-03 01:41:57 +00:00
Daniel Genrich
ad2be5f64f Bugfix for weird + in the code, no idea why it compiled (yet some selfcollision bug to fix) [no 2.47 fix] 2008-08-03 01:00:51 +00:00
Benoit Bolsee
bf168dc3c5 Small update to get the BlenderPlayer compiling (also needed for 2.47) 2008-08-02 22:11:22 +00:00
Campbell Barton
e632b966ec BKE_global.h include path wasnt correct. made boxpack2d.c a bit more
readable. no functionality changes.
2008-08-02 21:39:01 +00:00
Mal Duffin
03f9c6a3fc Copies all required DLLS for Save Game as Runtime.
Under Windows, all DLLs are copied to the same folder as the runtime .EXE, so that the process becomes a single click and deploy solution.

Linux doesn't require this ( thx for info centralnoise ) and will update to work on OS/X after I do a bit of research on .a and .so files ( thx for info kaito ).
2008-08-02 17:08:16 +00:00
Andrea Weikert
341655eab7 == imagebrowser ==
- HKEY now toggles hide/show dotfiles
2008-08-02 09:44:01 +00:00
Matt Ebb
82d87b2ab9 * patch #17394 by Vilem Novak - add menu item for 'Make Proxy Object'. Thanks! 2008-08-02 06:31:56 +00:00
Matt Ebb
38aa350173 * (slightly modified) old patch #7471 from Davide Vercelli - menu items for Show All Layers/Show Previous layers in the 3D View. Sorry this took so long! 2008-08-02 06:29:15 +00:00
Matt Ebb
b11790e08f * Minor tweaks to file menu item naming 2008-08-02 06:11:35 +00:00
Mal Duffin
aa02e605f1 Fix for GE Make Runtime menu option
Doh - I forgot to add a comment to the previous commit.

This adds a file exists check for Make Dynamic Runtime for the GE.  It also removes this menu option for now, as the required file ( blenderdynplayer.exe ) hasn't been included with the Blender app for quite a few releases ( therefore the feature has been broken ).

I also renamed the option, to make it a bit more understandable.  This might even be better moved to the Game menu, but I didn't want to do that ( yet :) )
2008-08-01 21:17:54 +00:00
Mal Duffin
fc52146342 2008-08-01 21:12:47 +00:00
Roland Hess
115dfb22cc Ipo Editor would not allow access to either World or Lamp texture Ipos. Now it does. Fixes bug #17379. 2008-08-01 12:56:29 +00:00
Joshua Leung
d66449996c == Grease Pencil Eraser - Tweaks ==
Improved accuracy of the eraser a bit. Now it does a boundbox test first before trying to erase strokes, which means that other (rather unrelated) strokes are less likely to be affected as well.
2008-07-31 12:23:29 +00:00
Nathan Letwory
01b1bd4901 * another commit adding std:: to the sort call (older msvc [<9] choked?) 2008-07-30 20:45:04 +00:00
Benoit Bolsee
8a8a12ed84 BGE patch: logic optimization part 2: remove inactive sensors from logic manager.
With this patch, only sensors that are connected to 
active states are actually registered in the logic
manager. Inactive sensors won't take any CPU,
especially the Radar and Near sensors that use a
physical object for the detection: these objects
are removed from the physics engine.

To take advantage of this optimization patch, you
need to define very light idle state when the 
objects are inactive: make them transparent, suspend
the physics, keep few sensors active (e,g a message
sensor to wake up), etc.
2008-07-30 17:41:47 +00:00
Brecht Van Lommel
7f170c18bb Bugfixes: fix for two memory leaks related to dupligroups,
and a missing reference count in the trackto actuator. This
showed up as leaked pose data, but actually the whole object
was not being freed.
2008-07-30 16:15:15 +00:00
Daniel Genrich
2d3a57eaa3 Bugfix for mesh deformer under windows --> uninitialized variable was used in meshdeform_inside_cage() 2008-07-30 11:21:10 +00:00
Joshua Leung
f3a4f3adaf Grease Pencil Bugfixes:
* Segfaults with eraser should now be fixed 
* Attempted fixed for sequencer redraw problems with buttons
2008-07-30 09:20:05 +00:00
Joshua Leung
7b819bc631 == Grease Pencil - Eraser (First Draft) ==
This commit introduces the ability to erase strokes. Admittedly, the code for this is not totally stable yet, and doesn't always produce optimum results. I'm committing now for backup purposes.

It currently uses the lasso code to check whether segments of the strokes (a segment occurs between two recorded points) occur inside a region defined by the 'eraser' stroke, or any intersections it makes with the 'eraser' stroke.

There are multiple ways to erase strokes:
* With 'Draw Mode' on, use RMB-drag to erase
* With a tablet, use the 'eraser' end of the stylus
* Hold the Alt Key, and use the 'selection' mouse-button (i.e. LMB if mouse-button swapping is on, RMB otherwise) to erase. For this one, this is necessary to avoid overriding the view-rotation hotkey combo for 2-button mice!

Todo:
* 3d-strokes are not correctly mapped back to screen-space for sampling yet
* Drawing of eraser strokes is still not distinctive enough
* After running a few times, may cause stack corruption/segfaults, so be careful!


== Bugfixes ==
* Grease-Pencil Onion-Skinning works again. Onionskining was being supplied the wrong frames, and the alpha factor was still the old one used for 0-255 ranged colour values
2008-07-30 09:07:56 +00:00
Mal Duffin
34bb446734 Simple changes to Motion Actuator UI.
This includes...

- Renaming dLoc and dRot as Loc and Rot ( as well as changing the tooltip to location and rotation ).  dLoc and dRot are programming terms, not user terms.

- Placing Loc and Rot as the two initial shown values, so that the physical ones are all shown together.

I also changed it so that only Loc and Rot are shown in the UI, unless the object is Dynamic ( as the other values only make sense if it is dynamic ).

These are just a few simple changes, that should make a lot of difference to users when learning how to use the GE.


--------------------------------------

Things I'd *really* like to do to this, when I get a chance to code Blender again ( hopefully in a few days time, after I have finished teaching on the GE course )...

Color / Colour tint the X,Y and Z entry boxes as slightly red, green and blue, to reflect the colour of the axis / transform gizmo
...or...
Just show X,Y and Z labels above all of the values.

Getting to grips with the whole XYZ thing is very confusing for users, esp when they are presented with 6 x 3 entry boxes.
2008-07-29 22:44:43 +00:00
Nathan Letwory
e04c48df86 * making sure BGE compiles after brecht's big commit (r15867). Needed <algorithm> to compile with msvc. 2008-07-29 21:56:50 +00:00
Mal Duffin
7f3c27995e Copy Attributes now has option to copy all physical attributes.
There existed two options to copy only the mass, and only the damping, but no option to copy all of the physical attributes.

This patch adds in this option, right under the Mass and Damping listings.
2008-07-29 21:49:59 +00:00
Mal Duffin
ca951b3627 Am teaching a GE course this week, and am finding some small issues that I'm hoping to patch.
This one deals with the very small default clipend value ( 100.0 ) when pressing P to run the GE from a non-camera view.  ( ie if the user zooms out a bit from the default box area, the box will get clipped out of view, so it's a WFT from the user )

To see what this fixes, load up Blender default scene, go into perspective, and press P. Everything looks grand.  Now, zoom out until the box is about 10 pixels high, and press P again.  The box will disappear / be clipped out.

I've set the clip end to the maximum ( 5000 ) as defined in Camera.h.

This should be suitable for inclusion in 2.47 branch also.
2008-07-29 20:28:11 +00:00
Daniel Genrich
039814f7d2 No long needed here (win64 cleanup) 2008-07-29 18:07:06 +00:00
Brecht Van Lommel
908337bee1 Game Engine: alpha blending and sorting
=======================================

Alpha blending + sorting was revised, to fix bugs and get it
to work more predictable.

* A new per texture face "Sort" setting defines if the face
  is alpha sorted or not, instead of abusing the "ZTransp"
  setting as it did before.
* Existing files are converted to hopefully match the old
  behavior as much as possible with a version patch.
* On new meshes the Sort flag is disabled by the default, to
  avoid unexpected and hard to find slowdowns.
* Alpha sorting for faces was incredibly slow. Sorting faces
  in a mesh with 600 faces lowered the framerate from 200 to
  70 fps in my test.. the sorting there case goes about 15x
  faster now, but it is still advised to use Clip Alpha if
  possible instead of regular Alpha.
* There still various limitations in the alpha sorting code,
  I've added some comments to the code about this.

Some docs at the bottom of the page:
http://www.blender.org/development/current-projects/changes-since-246/realtime-glsl-materials/

Merged some fixes from the apricot branch, most important
change is that  tangents are now exactly the same as the rest
of Blender, instead of being computed in the game engine with a
different algorithm.

Also, the subversion was bumped to 1.
2008-07-29 15:48:31 +00:00
Benoit Bolsee
b0c513e83a BGE patch: fix support of group hidden layer in dupli group instantiation: only the objects in layers matching the group layer mask will be instantiated. This is equivalent to the 3D view 2008-07-28 22:36:27 +00:00
Ken Hughes
3120af6f34 Bugfix for #17396. Adding a text object would segfault when using freetype
2.3.6 or later.  Thanks to Cyril Brulebois for a one-line patch, which was
sent to the ML a while back.
2008-07-28 22:10:32 +00:00
Brecht Van Lommel
bc85f11e68 Bugfix: game engine does not support non-camera type objects as a
camera, would crash, so disabled using the object as a camera then.
2008-07-28 14:28:19 +00:00
Joshua Leung
8162215f2a Bugfix:
Bone-locking should only be set if the bone (and not its parent/children) are selected. Transposition error from the patch (I had to manually apply as there were some oddities about the patch file).
2008-07-28 04:08:46 +00:00
Matt Ebb
edf557cb1c * Fix for Aligorith's fix for my mistaken uninitialised variable in outliner.c - it was never needed in the first place. 2008-07-28 00:21:34 +00:00
Joshua Leung
f4def51cd3 #17309: Copy/pasting bone names (without editing text) doesn't update bone/pose names
The pasting code for text-buttons (when hovering over the button), was incorrectly using the drawstr (i.e. the string that is displayed in the text-button, and includes the 'name' of the button) as the old value. This meant that the renaming code could not correctly detect matches to rename.
2008-07-27 12:48:46 +00:00
Joshua Leung
b2be0a181f Bugfix #17334:
This bug-report revealed a critical error made in the menus for Constraints Owner/Target spaces. It seems that the wrong values have been used for 'pose space' and 'local with parent' space. This has now been rectified, so that old rigs won't break (just that the labels will be a bit different).
2008-07-27 11:41:39 +00:00
Joshua Leung
05ec9021e4 Outliner.c:
Fixed some warnings about 'ob' being used uninitialsed. In some places that was definitely the case!
2008-07-27 05:20:35 +00:00
Joshua Leung
6035b3e0c7 Grease-Pencil:
* UI - added delete button for hidden layers
* Renamed the two hardcoded defines added for testing distances to their more formal nomenclature.
2008-07-27 04:39:55 +00:00
Joshua Leung
b24485ab92 Patch #17336: Lock bones in edit mode
Submitted by: Lorenzo Pierfederici (lento) 

This patch adds the ability to lock transformation on bones in edit mode, to protect them from accidental editing.

Bones can be locked from the editing buttons, the transform property panel, the specials popup menu or the python api.
2008-07-27 04:19:56 +00:00
Joshua Leung
b4fc80eb3d == Pose Mode - Copy Menu (Ctrl C) ==
This now works even when there is a proxy-protected bone selected with a few differences.
* The Transform Locks, IK-Flags, and Custom Bone Shape settings are unavailable, as they would be reset by the proxy protection anyway

Also, the Copy Constraints options have been altered so that they do NOT free all existing constraints on the target bones before copying.
* Constraints are now appended to the end of the constraint stacks, with those added to bones belonging on proxy protected layers getting tagged as 'local' constraints.
* This is more useful for riggers than the previous behaviour (which was quite nasty too).
2008-07-27 03:15:17 +00:00
Willian Padovani Germano
8a295553f7 == Python scriptlinks ==
Render/postrender events were missing from bg rendering (and also from rendering called inside scripts). Found this because of bug #17389, the code to prevent race conditions with pynodes is currently inside BPY_do_all_scripts (that runs scriptlinks) and so was not being called in bg mode or rendering via scripts.

http://projects.blender.org/tracker/?func=detail&atid=125&aid=17389&group_id=9
2008-07-26 22:00:26 +00:00
Joshua Leung
70ce017777 == Grease Pencil - Drawing (User Action not Display) Accuracy ==
This commit attempts to fix some of the problems with the accuracy of strokes recorded.

I've disabled the post-draw smoothing of strokes as it deviated from the source stroke too much. This was introduced to try to eliminate the effects of fine 'jitter' (which is especially noticable when using optical mice + fast computer). 

Now, I've introduced two thresholds which determine the 'minimum' distances that the mouse needs to have moved from the previous mouse-coordinates recorded, to be recorded. These are currently hardcoded, but may be exposed in the UI if there is significant need to do so.
- The first is for the distance that the mouse must have moved on both axes to be considered.
- The second is for the 'pythagorean' distance that needs to have been travelled by the mouse.
2008-07-26 12:54:03 +00:00
Benoit Bolsee
c4116a7f8d BGE patch: support runtime duplication of groups. Adding an object with Dupligroup option set will cause the group to be instantiated. No special actuator is needed for this feature, just put dupligroup objects in inactive layers and add them dynamically 2008-07-26 11:00:21 +00:00