Sergey Sharybin
853f2e05c8
Optimization and threading fix for shapekeys weights calculation
...
This commit fixes two different issues, which were caused by
how weights are being calculated for relative shapekeys.
Weights for key block used to saved in KeyBlock DNA structure,
which lead to situations when different objects could start
writing to the same weights array if they're sharing the same
key datablock.
Solved this in a way so weights are never stored in KeyBlock
and being passed to shapekeys routines as an array of pointers.
This way weights are still computed run-time (meaning they're
calculated before shapekey evaluation and freed afterwards).
This required some changes to GameEngine as well, to make it
never cache weights in the key blocks.
Another aspect of this commit makes it so weight for a given
vertex group is only computed once. So if multiple key blocks
are using the same influence vertex group, they'll share the
same exact weights array. This gave around 1.7x speedup in
test chinchilla file which is close enough to if we've been
caching weights permanently in DNA (test machine is dual-code
4 threads laptop).
Some further speed is optimization possible, but it could be
done later as well.
Thanks Brecht for idea of how the things might be solved in
really clear way.
2013-07-31 21:55:25 +00:00
Sergey Sharybin
24b0f8247f
Merging r58701 through r58746 from trunk into soc-2013-depsgraph_mt
2013-07-30 19:05:29 +00:00
Mitchell Stokes
29f8dfd37a
BGE: Adding vsync control. Users can enable vsync, disable vsync, or use adaptive vsync via UI options in the render properties, or by using the new Python method bge.render.setVsync(). Win32 and X11 support are done via EXT_swap_control. Support for using EXT_swap_control on OS X still needs to be added to Ghost.
2013-07-29 22:31:32 +00:00
Mitchell Stokes
2840edba84
BGE: Adding bge.physics as another alias for the PhysicsConstraints module.
2013-07-29 22:20:06 +00:00
Sergey Sharybin
51dab0e0ef
Merging r58475 through r58700 from trunk into soc-2013-depsgraph_mt
2013-07-29 02:49:36 +00:00
Campbell Barton
1448499d70
patch [ #36233 ] Fix Halo and Billboard Normal and Behavior
...
from Vitor Balbio (vitorbalbio)
Fixes billboard flipping (flipped normals and textures too)
2013-07-28 12:03:53 +00:00
Daniel Stokes
4f8fd8c68b
BGE Fix [ #18804 ] Shadow type faces cast onto invisible faces (non-GLSL)
...
Changing the RayHit method to ignore invisible faces
2013-07-25 23:42:20 +00:00
Daniel Stokes
d0f225393c
BGE Fix [ #29575 ] Object not drawn in game engine
...
Implementing a GetBlenderImage for KX_BlenderMaterial so that modifiers draw correctly in multitexture mode. The preexisting limitation of 1 texture per material on objects with modifiers in multitexture mode still exists.
2013-07-24 05:12:51 +00:00
Daniel Stokes
017d7b5447
BGE fix [ #21488 ] Pumpkin in Gamekit Tutorial flips upside down
...
A reference was being grabbed when a copy was wanted.
2013-07-24 00:32:26 +00:00
Campbell Barton
3ff3d1bc0f
replace use of strcat() where the string offset is known.
...
also correct bad logic with converting a textblock to 3d-text, bytes-vs-number of chars wasn't handled right.
2013-07-23 12:49:30 +00:00
Campbell Barton
fb92835819
bge: de-duplicate cleanup code for empty mesh error case
2013-07-23 10:59:29 +00:00
Mitchell Stokes
33e52d0df4
BGE: Fix for [ #34398 ] "«illegal operator» in Expression Controller" reported by Andrey Kashlak (andreymal)
...
The expressions system now supports the not operator on ints and floats.
2013-07-22 22:46:17 +00:00
Sergey Sharybin
44a43ead67
Merging r58464 through r58474 from trunk into soc-2013-depsgraph_mt
2013-07-21 14:35:33 +00:00
Campbell Barton
7db1d6556d
code cleanup: add break statements in switch ()'s, (even at the last case).
2013-07-21 08:16:37 +00:00
Sergey Sharybin
2d7a425381
Merging r58362 through r58463 from trunk into soc-2013-depsgraph_mt
2013-07-21 08:14:59 +00:00
Daniel Stokes
ef4d599194
Changing the python error when accessing SCA_JoystickSensor.axisSingle in the wrong mode to an AttributeError instead of a TypeError as this more accurately reflects the problem.
2013-07-20 03:15:57 +00:00
Daniel Stokes
ff165fa986
Re fixing BGE bug [ #36223 ] Strange page fault of "Game" actuator
...
Thanks to Campbell for helping me get a better fix put together.
2013-07-20 03:01:50 +00:00
Mitchell Stokes
efad3eb928
Add the Boost include to the right CMakeLists.txt...
2013-07-20 01:17:00 +00:00
Mitchell Stokes
81769b4f58
More build fixes for r58428.
2013-07-20 01:15:36 +00:00
Mitchell Stokes
f84563d213
SCons fix for r58428.
2013-07-20 01:09:16 +00:00
Mitchell Stokes
5645d9f720
Removing source files from source/gameengine/GamePlayer/common/SConscript that were removed in an earlier commit. This should allow SCons to build the game engine again.
2013-07-20 00:51:05 +00:00
Campbell Barton
a2a99bbc17
edit to r58425, BLI_math is available here, better not copy,paste from linearrgb_to_srgb.
...
also remove redundant check in AUD_FFMPEGReader::seek.
2013-07-20 00:35:41 +00:00
Thomas Dinges
e3c9fcd1bb
* Compile fix for overloaded pow() function.
2013-07-20 00:21:16 +00:00
Mitchell Stokes
cf62de6c6d
BGE: Partial fix for [ #36151 ] "Distance model not carrying over to standalone" reported by Florian Schneider (drjaska).
...
The Blenderplayer wasn't initializing 3D audio settings from the scene settings like the embedded player was.
2013-07-19 23:31:45 +00:00
Daniel Stokes
a07ac7e644
BGE fix [ #35563 ] Object colour setting for objects and fonts not using colour management like materials
2013-07-19 22:54:02 +00:00
Mitchell Stokes
3cd53aff09
Merging from ge_dev to trunk r58091-58422.
2013-07-19 22:37:40 +00:00
Daniel Stokes
23dccfadf0
Bge fix [ #33016 ] Blender crashes when I start the game engine
...
Caused by a bit of a disconnect from the BGE mesh and BMesh.
2013-07-19 22:11:26 +00:00
Mitchell Stokes
103ef7cacb
Merged changes from trunk r58324-58419.
2013-07-19 22:10:11 +00:00
Antony Riakiotakis
dda61cc82f
Fix some definitions for MinGW64
2013-07-19 19:19:15 +00:00
Mitchell Stokes
eb21bdd249
Merging changes from trunk r58091-58323.
2013-07-17 01:40:26 +00:00
Mitchell Stokes
5ba2f4367d
BGE: adding a fix so 2D filters work properly with side-by-side stereoscopic rendering.
2013-07-15 22:44:48 +00:00
Mitchell Stokes
efc4b08094
BGE: Fix for [ #36023 ] "Objects of added scene are lit by lights of current scene" reported by Raf Colson (raco).
...
The material caching now keeps a cache per scene. Before materials from different scenes were sharing the same cache.
2013-07-15 22:35:09 +00:00
Sergey Sharybin
d44fb5bd8b
Merging r58196 through r58265 from trunk into soc-2013-depsgraph_mt
2013-07-15 11:25:56 +00:00
Campbell Barton
02ba328ca8
clang/cmake - quiet warnings for external libs and reference moto as a system include.
2013-07-15 08:26:16 +00:00
Mitchell Stokes
19dee5e413
BGE: Adding animation culling. Armature objects will only have their poses updated if their children meshes have not already been culled. Regular object animations will always be updated since they are cheap.
2013-07-09 20:50:15 +00:00
Mitchell Stokes
83e9f32382
BGE: Committing patch #32422 "Debug properties for added objects" by HG1.
...
This patch allows debug properties from objects added to the scene at runtime to be displayed under the Debug Properties in the overhead display.
2013-07-09 20:06:36 +00:00
Mitchell Stokes
f6502a67f2
BGE cleanup: Getting rid of an unused variable warning in GPG_Canvas::Init().
2013-07-09 01:42:13 +00:00
Mitchell Stokes
b73793f636
BGE cleanup: removing some unused code from GPC_Canvas.
2013-07-09 01:34:23 +00:00
Mitchell Stokes
60812e0260
BGE cleanup: Removing the GamePlayer/xembed folder and associated build options. This code was very old and not used. For example web player code, look at Burster.
2013-07-09 01:24:51 +00:00
Mitchell Stokes
a6d26cb665
BGE cleanup: GPC_System was an empty class, so I'm dropping it and having GPG_System inherit directly from KX_ISystem.
2013-07-09 01:18:48 +00:00
Mitchell Stokes
7b8453b164
BGE cleanup: removing various unused code and files from GamePlayer/common.
2013-07-09 01:14:52 +00:00
Mitchell Stokes
5b3106b89d
BGE cleanup: removing unused banner code from GPC_Canvas.
2013-07-09 01:04:49 +00:00
Mitchell Stokes
abdb983a46
BGE cleanup: actually remove KX_PhysicsPropertiesobsolete.h from the CMakeLists.txt instead of just commenting it out.
2013-07-09 01:01:25 +00:00
Mitchell Stokes
5bcc621fbf
BGE cleanup: removing an unused KX_PhysicsPropertiesobsolute.h file.
2013-07-09 00:59:57 +00:00
Sergey Sharybin
8c67e9d799
Merging r57925 through r57933 from trunk into soc-2013-depsgraph_mt
2013-07-02 19:18:10 +00:00
Campbell Barton
418011907c
remove nan copyrights from code added since blender become opensource (copy paste errors), also remove BKE_script.h
2013-07-02 10:14:59 +00:00
Campbell Barton
1f091fd234
add missing gpl headers
2013-07-02 09:47:22 +00:00
Sergey Sharybin
b763876cae
Made modifiers_getVirtualModifierList safe for threading
...
Move static variables to context filling in by this fcuntion
and owned by a callee function. This ensures no conflicts
between threads happens because of static variables used in
this function.
Also moved modifier types and virtual modifiers data to a
function called from creator. This is needed to be sure all
the information is properly initialied to the time when
threads starts to use this data.
2013-07-01 11:00:22 +00:00
Campbell Barton
d665c46a64
fix [ #35884 ] evil bge.types.BL_Shader.setUniformMatrix3()
2013-06-27 07:49:20 +00:00
Campbell Barton
fad1da062d
correct typos in comments.
2013-06-25 22:58:23 +00:00