Commit Graph

899 Commits

Author SHA1 Message Date
cf0e646432 Remove usage of deprecated TEX_USEALPHA from GE code 2013-01-05 13:51:07 +00:00
9106b3b107 BGE: Fix for [#33769] "Material friction settings are ignored" reported by Alex Fraser (z0r).
As of r53332, give_current_material() won't accept a 0 index and return NULL. CreateMaterialFromBlenderObject() was using index 0 to just grab the first material. Since this now returned NULL, it would use default settings. We'll just ask for index 1 now instead.
2013-01-05 08:53:39 +00:00
c2839bfe76 add option WITH_SYSTEM_BULLET to link against the bullet installation found on the system.
Note: this doesn't work yet for everything with latest stable bullet (2.81), need to look into why and likely apply some patches upstream.
However I managed to link blender by disabling some features, likely it can be made to work without too much trouble.
2013-01-03 00:23:52 +00:00
f1270153e1 BGE: Some various tweaks to try and get async lib loading to be a bit more stable on more complex scenes. 2012-12-25 08:11:21 +00:00
a1c9241797 BGE: "Fix" for issue [#33663] "Objects Share Materials / Textures When Grouped In SingleTexture / MultiTexture Mode" reported by Josiah Lane (solarlune).
This commit adds a UI option in the Render properties to enable the new material caching in the converter. This caching can cause problems with Singletexture and Multitexture materials when texface is being used to handle materials. By default this option is enabled and users with broken games have two options:

  1) Fix up their materials so they are properly using textures
  2) Disable the material caching and take a speed hit during conversion time

Regardless of the setting, caching is always enabled for GLSL materials.
2012-12-24 03:13:53 +00:00
ba14beb000 Code cleanup: add usual 'BKE_' prefix to 'public' constraint functions from blenkernel... 2012-12-23 11:31:15 +00:00
84966c3d0a BGE: Committing async LibLoad from Swiss. This does the lib loading in a separate thread to keep the BGE from freezing. Here is an example from the docs:
# Print a message when an async LibLoad is done
      import bge

      def finished_cb(status):
          print("Library (%s) loaded in %.2fms." % (status.libraryName, status.timeTaken))

      bge.logic.LibLoad('myblend.blend', 'Scene', async=True).onFinish = finished_cb

LibLoad() now returns a KX_LibLoadStatus object for information on the library loading. LibNew() and LibFree() are unaffected by this commit. In other words, the async option only works for LibLoad(). Furthermore it only works for Scenes, not Actions or Meshes.
2012-12-22 05:38:32 +00:00
0ddc77f913 code cleanup: warnings 2012-12-19 01:48:54 +00:00
ef0473994b BGE: Some as of yet unmerged work I did in the Swiss branch. These changes include:
* Cleaning up the conversion code to avoid a per-face material conversion. Materials are now stored in buckets and only converted if a new material is found. This replaces some of Campbell's earlier work on the subject. His work wasn't as thorough, but it was much safer for a release.
  * Shaders are only compiled for LibLoaded materials once. Before they could be compiled twice, which could really slow things down.
  * Refactoring the rasterizer code to use a strategy design pattern to handle different geometry rendering methods such as immediate mode, vertex arrays and vertex buffer objects. VBOs are added, but they will be disabled in a following commit since they are still slower than vertex arrays with display lists. However, VBOs are still useful for mobile, so it's good to keep them around.
  * Better multi-uv support. The BGE should now be able to handle more than two UV layers, which should help it better match the viewport.
2012-12-18 20:56:25 +00:00
779375251c Fix #33487: game engine did not convert objects with rotation modes other than
Euler XYZ correctly, was never implemented;
2012-12-17 21:40:28 +00:00
ab2c273b12 Added GPL header to sconscripts!
Also changed shebang to '#!/usr/bin/env python', this is more portable across unixes...
2012-12-17 08:01:43 +00:00
050f09aa6c buildsystem cleanup: remove duplicate source & includes for scons,
add a check for duplicates in BlenderLib()m, if 0'd now.
2012-11-14 01:41:24 +00:00
83de5cb308 bge mesh conversion speedup, avoid calling ConvertMaterial() on every face.
now do per material bucket.
2012-11-11 01:54:30 +00:00
dfc55421df game engine material conversion: don't use the material to convert vertex colors, then extract back out (pre face). 2012-11-11 00:39:08 +00:00
f8af8100d2 code cleanup: bge - rename 'type' to 'use_mcol' in material conversion. 2012-11-10 23:57:13 +00:00
936f0388e8 code cleanup: some warnings and formatting for PyMethodDef's in the BGE. 2012-11-10 05:42:50 +00:00
8d0b2bc17f Compile fixes for recent boost changes 2012-11-05 15:23:09 +00:00
5a8d5f77af Audaspace:
Replacing AUD_Reference with boost::shared_ptr.
2012-11-05 14:24:35 +00:00
3bf9bb3b13 BGE: Adding support for Bullet's collision masks. Each object now has a collision mask and a collision group. Object A and object B collide if object A's groups is in object B's mask and object B's group is in object A's mask. In other words, the group defines what the object is (collision wise) and the group defines what the object can collide with.
The majority of this patch was provided by Kupoman with some edits from me and heavy testing by z0r.
2012-10-30 15:44:16 +00:00
5549904171 style cleanup 2012-10-29 02:11:40 +00:00
ddc2dbc2a4 style cleanup 2012-10-22 08:15:51 +00:00
d599b643b7 style cleanup: bge, switch statements mostly.
also left bmesh decimator on in previous commit.
2012-10-21 07:58:38 +00:00
536d9fec80 code cleanup:
- move object_iterators.c --> view3d_iterators. (ED_object.h had to include ED_view3d.h which isn't so nice)
- move projection functions from view3d_view.c --> view3d_project.c (view3d_view was becoming a mishmash of utility functions and operators).
- some some cmake includes as system-includes.
2012-10-17 04:13:03 +00:00
504180674e style cleanup: bge 2012-10-15 04:16:34 +00:00
4d4664d98f code cleanup: check for msvc directly when using warning pragma's. 2012-10-15 02:15:07 +00:00
3a947cf537 code cleanup: remove redundant casts 2012-10-14 08:49:01 +00:00
97d4fb4161 code cleanup: make header defines more consistent, JOYSENSOR header guard had a typo too. 2012-10-09 13:36:42 +00:00
0d5d2146eb code cleanup: make shape key api names consistent with our new convention. 2012-09-19 10:12:07 +00:00
690d5192f0 code cleanup: remove vertex/weight paint's VP_COLINDEX, this feature worked in the code but wasnt accessible from the UI this wasn't even accessible from the UI in 2.4x.
This would only paint onto faces from the active material. however we're better off using selection here IMHO (adding support for material selection in paint mask mode).

also quiet some warnings.
2012-09-18 04:55:52 +00:00
d3737de8c2 fix for a strange linking error where set_property() in source/blender/blenkernel/intern/property.c would get mixed up with an X11 function of the same name. it crashed blender loading on my system.
Give functions in property.c more unique names.
2012-09-18 04:35:30 +00:00
2fb8292005 style cleanup 2012-09-16 04:58:18 +00:00
beac985ab7 code cleanup: make local game engine functions static 2012-09-16 00:22:55 +00:00
aaafa0c2fe code cleanup: move file string defines into BLI_path_utils.h, BKE_utildefines is now unused but keep incase we want to add defines there later. 2012-09-03 22:04:14 +00:00
ee96cde864 style cleanup: whitespace 2012-08-26 11:35:43 +00:00
3d20474414 style cleanup 2012-08-04 19:34:38 +00:00
0690f6287c BGE: Fix for [#31993] "BGE Vertex deformer optimized method does not work properly" reported by Mario Mey plus some other cleanup. The bug was caused by not taking the object matrix into account when doing the transforms (when I developed the deformer, my test file had the object at the origin...). 2012-07-29 23:49:17 +00:00
f608b3c444 code cleanup:
- building without python works again
- rename maxi/mini to i_max/i_min (so thay are available for function names)
- some minor edits to IK stretch setting (no functional changes).
2012-07-29 17:49:14 +00:00
9d900fdd11 Fix for [#32213] "Action actuator doesn't finish playing if frame rate drops" reported by Alex Fraser (z0r). The action actuator was calling StopAction when it's time ran out. Now I'm just letting BL_Action handle stopping. Hopefully this doesn't break something else now.... 2012-07-29 06:28:50 +00:00
8f1666ee56 BGE: A better fix for using the Action Actuator with the Actuator Sensor. This one still allows frame properties to be updated after receiving a negative pulse. This also fixes bug [#32179] "Action Actuator in Loop End stops updating the Frame Property after no longer receives positive signal" reported by Dalai. 2012-07-25 04:29:48 +00:00
7fb85e1fb7 BGE LibLoad: Allow the user to disable loading text datablocks if they want to attempt to increase security by not loading potential Python scripts. 2012-07-22 22:58:12 +00:00
9b51503307 style cleanup 2012-07-21 22:58:08 +00:00
d0e892a728 quiet double promotion warnings for the game engine. 2012-07-18 23:03:27 +00:00
4f6cc9a9aa BGE: The Action Actuator now returns correct values to work with the Actuator Sensor. 2012-07-16 03:43:57 +00:00
ecc15e53bd Removing channel manipulation from the Action Actuator Python API since this has been broken since the animation changes from Pepper. BL_ArmatureObject.channels should be used instead. For more information see bug #28843 for more info:
http://projects.blender.org/tracker/index.php?func=detail&aid=28843&group_id=9&atid=306
2012-06-28 06:22:47 +00:00
cc0784c1b9 optionally use guarded alloc for tiles compositor, also replace allocation functions with a macro. 2012-06-25 09:14:37 +00:00
d8e2c475a0 Fix for [#31396] "bge.logic.LibLoad fails to import text blocks" reported by Leonard Ritter.
Blender's import function check's the Text datablocks in main for additional modules for importing. However, libloaded scenes were 1) not loading Text datablocks and 2) not letting bpy know about them. Text datablocks are now loaded if a Scene is loaded and bpy can now looking through extra Mains to find additional modules.
2012-06-21 05:41:06 +00:00
f5f25b81e8 style cleanup:
also fix for building ghost test and fix double free in one of the tests
2012-06-17 09:58:26 +00:00
298feff390 Committing patch [#31704] "Patch to fix keyboard sensor from blocking quit game key binding" by Jay Parker. This patch fixes [#31671] "Keyboard Sensor blocks Quit Game Key Binding" 2012-06-10 19:32:57 +00:00
ebb2dc84fc Some slight refactoring of the BGE's LibLoad code to make things a bit cleaner (no functional changes). 2012-06-07 01:46:28 +00:00
d5032657ed style cleanup 2012-06-06 22:38:39 +00:00