Commit Graph

16327 Commits

Author SHA1 Message Date
Campbell Barton
f8656d3510 BGE alternative run mode for python controllers.
Option to run a function in a module rather then a script from a python controller, this has a number of advantages.

- No allocating and freeing the namespace dictionary for every time its triggered
  (hard to measure the overhead here, but in a test with calling 42240 scripts a second each defining 200 vars, using modules was ~25% faster)

- Ability to use external python scripts for game logic.

- Convenient debug option that lets you edit scripts while the game engine runs.
2009-04-29 12:43:09 +00:00
Ton Roosendaal
988fbb88dc bugfix #18609
This fixes a commit from Peter, revision 12931, Dec 17 2007
He added quick image scaling code, derived from ppmqscale, 
http://libdv.sf.net

This implementation gave ugly banding. especially visible on
dark colors or byte images with very close colors.

Solution is to add correct rounding, seems to me normal for such
fixed point magic. Optimizing code and keeping quality is tricky
dudes! Results for scaling down in sequencer were bad for over a
year (2.47 and 2.48 both wrong).
2009-04-29 11:20:07 +00:00
Campbell Barton
32b70e333f needed this minor change to build on gcc 2009-04-29 11:16:26 +00:00
Campbell Barton
3bc02088e8 remove uneeded checks and testMethod from KX_ConstraintWrapper, typo in import_obj 2009-04-29 10:24:12 +00:00
Benoit Bolsee
f004c36e41 BGE: speed up mesh conversion by avoiding allocation/deallocation of material object on each face. The speed up is minor on optimized builds but considerable on less optimized builds, good for debugging large scene. 2009-04-29 10:06:38 +00:00
Matt Ebb
d110049d37 * First pass updating the default theme for the new UI controls and darker colours 2009-04-29 04:43:17 +00:00
Matt Ebb
a010139085 * Updated icons from Jendryzch. Thanks! 2009-04-29 02:47:28 +00:00
Erwin Coumans
2d78dcfb61 fix so that torque can be applied to DYNAMIC game objects, this fixes the skategirl.
Note that skategirl needs a bit higher angular damping, perhaps the conversion formula needs to be tweaked better?
2009-04-28 23:26:35 +00:00
Benoit Bolsee
e4abebfa91 BGE: reenable object activation for static object, otherwise their physic shape is not updated when they move due to parent relation. 2009-04-28 18:56:48 +00:00
Martin Poirier
5e66971dd3 add note to Image.save method that all new buffers are saved as Targa 2009-04-28 18:53:15 +00:00
Martin Poirier
35c1b3134b etch-a-ton bugfix
cut and trim didn't set normal properly.
2009-04-28 17:55:48 +00:00
Ton Roosendaal
851e6d9e44 Bugfix #18637
Sorting of files didn't take numbers into account propertly, so it
ordered files like;

10.jpg
300.jpg
89.jpg
9.jpg

Quite simple to solve, almost moved report to the 'todo', but too
fun to leave this. :)

function name is BLI_natstrcmp() "natural string compare".
2009-04-28 17:25:50 +00:00
Campbell Barton
d3b20dddd7 Mathutils
- fix own mistake with matrix slicing that would crash blender (from recent commit).
- fix 3 memory leaks from ascotan r4717 in the Mathutils.Quaternion(...) function.
2009-04-28 15:28:02 +00:00
Campbell Barton
94c6cadfe2 BGE PyAPI
- renamed generic attribute "isValid" to "invalid" since BL_Shader already uses isValid.
- Moved deprecation warnings from CValue 
- removed unused KX_Scene::SetProjectionMatrix and KX_Scene::GetViewMatrix
- Added KX_Scene attributes "lights", "cameras", "objects_inactive", to allow access to objects in unseen layers (before the AddObject actuator adds them)
- KX_Camera deprecated cam.enableViewport(bool) for cam.isViewport which can be read as well.
2009-04-28 13:11:56 +00:00
Campbell Barton
eee8dd9086 - Updated BGE docs to match the game engines class inheritance more closely.
- Grouped deprecated functions for KX_Camera, KX_GameObject, SCA_ISensor, SCA_ILogicBrick, KX_Scene
2009-04-28 13:02:49 +00:00
Benoit Bolsee
d4f8b416e9 BGE soft body: change welding option to disable welding check by default: speeds up shape conversion. This is fine if the object has no duplicate vertices. Otherwise, bullet will be extremely slow and you can either set some welding or remove duplicates in the mesh. Welding is now displayed in linear scale: 0.0 -> 0.01, no need to use logarithmic scale ;-). Fix a bug with Bullet by which vertex array for soft body must have 3xfloat stride. 2009-04-27 22:21:42 +00:00
Dalai Felinto
fa826774a3 CMake files changes for FFMpeg update
This was broken since last month !!!
2009-04-27 22:14:51 +00:00
Brecht Van Lommel
58cdd37f52 UI:
* Made separator item work horizontal & vertical.
* Add colon (:) automatic for int/float/enum/string.
* Added space variables to uiStyle and use them in the
  layout engine.

* Added initial World buttons by Thomas Dinges, thanks!
* Added some code for modifiers in the Object Data context.
  This will become a template though.
* Use a common poll() callback in the scripts to reduce code.
2009-04-27 18:05:58 +00:00
Campbell Barton
dc664e3925 TexVert sharing was disabled for flat faces, this is silly since a building or any other model with flat faces will often be able to share texverts.
Simple testcase with a subdivided cube used 1/3 as many texverts and spend half as much time in the rasterizer while profiling.
2009-04-27 17:53:41 +00:00
Benoit Bolsee
352eaccd5d BGE: Add soft body welding parameter to the Advanced Settings panel. The values are very small so I chose to use logarithmic scale. Should be fine, it's an advanced setting after all. 2009-04-27 16:44:02 +00:00
Benoit Bolsee
c56ee09c48 BGE bug #18624: Collision detection fails on parented objects. Partial fix, parented shape now moves with the parent but still the parent near detector detects the child only in the zone where it was parented. 2009-04-27 16:40:26 +00:00
Martin Poirier
c36fb8c913 2.5
Fix repeat crash with transform. Just remove stupid twmat, don't need to cache results in view3d.

Made it more safe too.
2009-04-27 15:43:35 +00:00
Campbell Barton
369c8b8055 [#18628] stuck triangle when projection painting -- 2.49RC1
Increasing the tolerance when making intersection comparisons fixed this.
There is also a problem where a pixel aligned quad would get a diagonal line down the face. offset the pixel locations a little to avoid this (crappy I know but will fix most cases).
2009-04-27 14:22:02 +00:00
Ton Roosendaal
7f21e7f4a3 2.5
Forgot to add new file!

This is the toolbar, it get overlayed on top of view, not changing
main window display.
2009-04-27 13:55:38 +00:00
Ton Roosendaal
9b82d1474f 2.5
Summary of ain features:
- Themes and Styles are now editable.
- CTRL+U "Save user defaults" now goes to new .B25.blend, so you
  can use 2.4x and 2.5x next to each other. If B25 doesn't exist, it
  reads the regular .B.blend
- Press Tkey in 3d window for (unfinished) toolbar WIP. It now only
  shows the last operator, if appropriate.
  Nkey properties moved to the other side.

A lot of work was done on removing old themes for good and properly
getting it work with the 2.5 region system. Here's some notes;

- Buttons now all have a complete set of colors, based on button classifications
  (See outliner -> user prefs -> Interface
- Theme colors have been extended with basic colors for region types. 
  Currently colors are defined for Window, Header, List/Channels and
  for Button/Tool views. 
  The screen manager handles this btw, so a TH_BACK will always pick the
  right backdrop color.
- Menu backdrops are in in Button theme colors. Floating Panels will be in
  the per-space type Themes.
- Styles were added in RNA too, but only for the font settings now.
  Only Panel font, widget font and widget-label work now. The 'group label'
  will be for templates mostly.
  Style settings will be expanded with spacing defaults, label conventions, 
  etc.
- Label text colors are stored in per-space Theme too, to make sure they fit.
  Same goes for Panel title color.

Note that 'shadow' for fonts can conflict with text colors; shadow color is
currently stored in Style... shadow code needs a bit of work still.
2009-04-27 13:44:11 +00:00
Brecht Van Lommel
e2582ba6c1 Fix for bug #18610: in the Game menu enabling "Record Game Physics to IPO"
made "Generate Display Lists" hidden (these work fine together).
2009-04-27 12:18:18 +00:00
Brecht Van Lommel
22df42cdec Fix for bug #18032: AAO pixel cache + refraction artifacts, the pixel
cache can only be used for the first hit.
2009-04-27 11:49:40 +00:00
Brecht Van Lommel
1d3c2b83a1 2.50: fix crashes in the text editor due to undo buffer. 2009-04-27 10:00:22 +00:00
Campbell Barton
9c3d628082 [#18616] Scons+MinGW compiling error with gaming engine enabled.
Attempt to fix building in windows with mingw
2009-04-27 07:07:22 +00:00
Erwin Coumans
5d1d6ad4d1 Don't always activate a Bullet rigid body
If you want to keep a rigid body awake, please use the GUI 'No Sleeping' option for Rigid bodies.
2009-04-27 05:06:24 +00:00
Erwin Coumans
d2ff190dfb Lower the vertex welding threshold, for removing duplicate/nearby vertices for soft bodies (this broke susanne softbody regression test) 2009-04-27 04:21:05 +00:00
Joshua Leung
f64265d714 Bugfix #18603: Clear User Transform does not work -- 2.49RC1
Modified the behaviour of Clear User Transform so that when there's no action, Clear User Transform now resets the entire pose to the rest pose. However, when there is an action, the pose on selected bones gets cleared to the pose defined in the action, not the rest pose.
2009-04-27 00:49:01 +00:00
Andre Susano Pinto
310356a732 Shrinkwrap fix (before I only fixed normal projection)
nearest surface + nearest vertex fixed now
2009-04-26 21:33:22 +00:00
Campbell Barton
7a042dcc3a [#18623] projection paint alpha paintingacts as 1bit -- 2.49RC1
Also fixed...
- smear with alpha channels (had to disabled blending modes).
- using uninitialized memory in a few cases.
- negative index in an array bug.
2009-04-26 21:30:42 +00:00
Campbell Barton
ce3aabb4e7 Rewind own commit that aimed to make converting meshes faster at startup.
Some files probably need to have UV's welded so better do this even though it seems inefficient.
2009-04-26 21:23:59 +00:00
Ken Hughes
f8239c8ac7 Missing end-of-line. 2009-04-26 18:38:16 +00:00
Andre Susano Pinto
af1c25c9d0 Fixed shrinkwrap bug:
shrinkwrap wasn't using the updated coordinates/normals of vertexs
	when the DerivedMesh had been modified by a previous modifier.

	before revision 19744, users would only notice a strange behaviour
	of shrinkwrap in projection mode (because it was using the wrong normals)
	(jpbouza reported this)

	after revision 19744 this bug was "bigger".

Anyway it's fixed now :)
2009-04-26 13:26:18 +00:00
Benoit Bolsee
ba563216e9 BGE: Fix Orthographic mode and viewport scaling
- the BGE now uses correct glOrtho projection whe camera is in orthographic mode
-
2009-04-26 12:23:30 +00:00
Campbell Barton
fc4ba5e131 When adding multiline text drawing I missed a case where the image pointer should have been checked - drawing text on a face with no image would crash blender.
Better tooltip for game actuator file field.
2009-04-26 09:41:39 +00:00
Nathan Letwory
fb7803c300 Amendment for 19924 - no setenv() on Windows, make it work with _putenv_s(). 2009-04-25 20:26:27 +00:00
Campbell Barton
dd21e9b626 patch from michael williamson, export multiple UV layers to lightwave
[#18575] remove unused local variables
2009-04-25 17:52:04 +00:00
Campbell Barton
5233069908 Running 2.48rc on my system segfaults when starting the game engine, only on the release, not for my own builds.
Setting the SDL video driver to dummy prevents the crash, this is recommended in the SDL docs if your not using the video driver.
2009-04-25 12:58:07 +00:00
Benoit Bolsee
b991b32458 BGE mesh modifiers: fix view frustrum culling for mesh with modifiers. Update the bounding box based on mesh extent after applying the modifiers. 2009-04-25 12:20:59 +00:00
Campbell Barton
3038fb1a01 [#18606] Writing to KX_GameObject.orientation causes crash
Own bug, conversion function to get an orientation from python - PyOrientationTo() ignored user input completely :| (breaking the orientation attribute)

Also made KX_GameObject worldOrientation writable and minor doc fixes.
2009-04-25 07:17:36 +00:00
Campbell Barton
0c482f7607 BGE API - small changes
- print CListValue errors only once.
- bge_api_validate_py.txt now validates modules as well as types.
- added missing functions and consts for epydoc modules. some of these in GameLogic.py still need sorting.
2009-04-24 20:27:04 +00:00
Benoit Bolsee
252928ab36 BGE: removed support for time dependent modifiers, they don't make sense in the GE. Disable modifiers when Bullet soft body is used: bullet needs the original vertex array. 2009-04-24 19:49:15 +00:00
Campbell Barton
6028475441 patch from Thomas Dinges, falloff out of the stars struct into the mist. 2009-04-24 11:36:48 +00:00
Campbell Barton
a5f4d7cb53 BGE PyAPI epydoc errors fixed 2009-04-24 07:45:17 +00:00
Michael Fox
b47c87d7fd just some fixes in rna descriptions 2009-04-24 01:27:17 +00:00
Michael Fox
119d0e9145 Small comit, added the colour mode (BW,RGB,RGBA) and object type to rna, and added appropriate entries to the UI 2009-04-24 01:17:54 +00:00