Skip to content

Release notes version 1.0

SpectreGameDev edited this page Mar 15, 2024 · 20 revisions

Changes in first release 1.0

Version based on upbge 0.2.5b

Area lamps

Now the area lamp works! make your game more beautiful with it.

LayerWeight

Now you can control the layer weight of each layer, allowing for more complex animations.

KX_GameObject.setActionLayerWeight(layer, weight)

Text Resolution

Text Resolution

No need to change text resolution by script anymore, for example:

# KX_FontObject
own = bge.logic.getCurrentController()
own.resolution = 5
- Warning: High resolution can use a lot of memory and may crash.

Icons in python components

Adding icons to components is very simple, at the beginning of args in components add the key "C_Icons" and the value put the name of the icon you want to insert (like: "C_Icons" : "BLENDER") then use "+" to separate one icon from another.

Example 01

args = OrderedDict({
"C_Icons" : "BLENDER+QUESTION"
})

Example 02

from bge import *
from collections import OrderedDict

class Component(types.KX_PythonComponent):
    # Put your arguments here of the format ("key", default_value).
    # These values are exposed to the UI.
    args = OrderedDict([
    ("C_Icons", "BLENDER+QUESTION"),
    ("Key", "Value")
    ])

    def start(self, args):
        # Put your initialization code here, args stores the values from the UI.
        # self.object is the owner object of this component.
        pass
        

    def update(self):
        # Put your code executed every logic step here.
        # self.object is the owner object of this component.
        pass

Components Header

You can organize your components with components header.

to use create a key: "C_Header 0" value: "HeaderName".

then, if you want to use more than one header in the component, add +1 to the C_Header, ex: "C_Header 0", "C_Header 1", "C_Header 2".

You can put a custom icon in the Header, just add /iconName in key, ex: ("C_Header 0/IconName", "Value").

Component Example

from bge import *
from collections import OrderedDict

class Component(types.KX_PythonComponent):
    # Put your arguments here of the format ("key", default_value).
    # These values are exposed to the UI.
    args = OrderedDict([
    ("C_Icons", "BLENDER+QUESTION"),
    ("C_Header 0", "Parameters"),
    ("Key", "Value"),
    
    ("C_Header 1/SCRIPTWIN", "Parameters With Icon"),
    ("String", "Value2"),
    ("Bool", False),
    ("List", {"ListValue1", "ListValue2", "ListValue3", "ListValue4"})
    ])

    def start(self, args):
        # Put your initialization code here, args stores the values from the UI.
        # self.object is the owner object of this component.
        pass
        

    def update(self):
        # Put your code executed every logic step here.
        # self.object is the owner object of this component.
        pass

Reordering of components

You can arrange the order of components in the object, created by @Mysticfall and ported to RanGE.

Repeat For in delay sensor

Number of times the sensor will repeat before stopping.

Smooth movement for Character Physics

smooth movement implemented in CharacterPhysics.

Example 01

def start(self, args):
    self.character = constraints.getCharacter(self.object)
    self.c.walkDirection = [0, 0.1, 0]

Jump direction for Character Physics

Good for directing jump movement.

Example

self.character = constraints.getCharacter(self.object)
self.character.jumpDirection = [0, 1, 1]

PhysicsCullingVelocity and NoComponents Culling

worldScalingObject now influence to obstacleSimulation

Now obstacle Simulation size influences with object Scaling, great for objects instantiated with different sizes.

New Mouse events

More mouse inputs

To get in python scripts

[events.LEFTTHUMBMOUSE]
[events.RIGHTTHUMBMOUSE]
[events.BUTTON6MOUSE]
[events.BUTTON7MOUSE]

Object Physics Friction

New Game Profiler Visual

now with a new look for better viewing.

New Python Joystick Functions

SCA_PythonJoystick.duration
SCA_PythonJoystick.strengthLeft
SCA_PythonJoystick.strengthRight
SCA_PythonJoystick.isVibrating
SCA_PythonJoystick.hasVibration

Misc changes

  • Added bge.app.range_version - The Range version as a tuple of 2 ints, eg. (1, 0).
  • Added bge.app.upbge_version_string - The Range version formatted as a string, eg. “1.0”.

Interface Changes

  • Interface started to be optimized and some layout changes.

Bugs fixed

Clone this wiki locally