Skip to content
tristan edited this page Sep 19, 2018 · 1 revision

New features

CListValue for scenes list

bge.logic.getSceneList() returns a CListValue contrary to classic python list before. It allows the user to search scene by name like

scene = bge.logic.getSceneList()["SceneName"]

Triangle rendering

All meshes are rendered with triangles contrary to the mix of quads and triangles done before. A lot of code was simplified and optimized by using only triangles, it's 5% faster than our old mix. There's no compatibility issue in the python API, KX_PolyProxy can still be a quad or a triangle, KX_MeshProxy's vertex array had the same size and vertexes in it are in the same place. (see #04dcd7)

Static shadow render

Shadow can be set as static which means "render the shadow Z buffer only one time". More info in https://developer.blender.org/D1372 (see #9d59ec).

Debug bounding box

An option Show Bounding Box enable to render object's culling bounding box (AABB) to debug what object is considerate under visible or not. The boxes are rendered only for mesh objects in purple and depends on the object position, scale and orientation. (see #94d111)

Bounding box settings

The user can access to some object's bounding box (AABB) settings like the choice of updating the bounding box each time the mesh is deformed or replaced, or choose to use a default bounding box based on a mesh to don't care about deformations. More info in https://developer.blender.org/D1475 (see #d62442)

Vertex Buffer Object

VBO render code is reenable even if is still slower than Vertex Array combined with Display Array. Future optimizations to make VBO faster than other render mode are coming. (see #64ad15)

Ray sensor mask

Ray cast mask is exposed in the ray sensor logic brick. The user get 16 layers to choose what category of object he want to hit.

Ray sensor mask

Compatibility issues

  • Because of using only triangles the wire render is different, for wire materials a better mode should be used.
  • KX_BlenderMaterial.[material_index/getMaterialIndex] are deprecated because the value they return can be wrong if the material is used by more than one mesh. These function will be definitively removed in 2 versions (2 month).

Bugs fixed

  • Fix position/rotation not updated when using KX_GameObject.apply[Movement/Rotation] (see #7c8cd2)
  • BGE: fix animation waking up for suspended scenes. (see https://developer.blender.org/D1569 and #4dfecb)
  • Hidden light are now not set during render. (see #78a159))
  • Debug draw viewport setting was fixed. (see #823851))
  • Objects with modifier now get a proper bounding box. (see #f73ed3))
  • Fix T41677: Derived mesh not rendered with no face original mesh. (see #46c039)
  • Fix T24948: Material not fully converted with modifiers. (see #22723f, #378123, #b8e95d, #71a557)
  • Fix T40475: children list owned by python and not freed. (see #faf31c)
  • Fix T46902: motion actuator apply zero velocity anyways. (see #630a8b)
Clone this wiki locally