Turbulenz SDK 0.26.0 is an update for both the Turbulenz Engine Installer and SDK components.
The following versions of Turbulenz products are packaged in this SDK:
Added multiple logins to local. The login button on the top right of the local server page allows you to quickly switch between users. The current user is stored as a cookie. This cookie will be shared across the tabs on your browser. To login as multiple users simultaneously either:
Added the DataShareManager object for creating and finding data share objects. Data shares are shared public key-value stores which allow games to share data with other users. For example, data shares could be used to store the game state of an asynchronous multiplayer game (allowing communication with users who are on-line or off-line) like Chess or Diplomacy.
Added NotificationsManager object for allowing games to send notifications to users to notify them of game specific events. Examples include:
Notifications can be instant or time delayed and can be received by users even if the game that sent them is no longer running. For a detailed list of API see the NotificationsManager object.
Added Protolib a 2D/3D library for prototyping games rapidly using higher level functions. Features include:
SDK 0.26.0 contains BETA version 0.2 of Protolib. See the Protolib for more details.
Added two example app structures for building Protolib apps.
Open source repository changes have been integrated into the SDK. This includes various changes to the repository layout and packaging/rebuilding of tools. In most cases the changes to the layout of SDK and its content should not have drastically changed. The method for invoking certain tools might be slightly different.
Local server is now distributed as a turbulenz_local python package, which can be downloaded from pypi. In the SDK, these packages are downloaded and included in the installer. To update to a later local server:
Each SDK will bundled with a compatible version of the local server. Check compatibility before updating to the latest server.
To import local server directly from python, you should now use: ‘turbulenz_local.*’.
Local server is now started differently. The old command ‘paster serve release.ini’ has been replaced by ‘local_server –init’ followed by ‘local_server –launch’. For SDK users, using the start_local.sh and run_devserver.bat commands, no changes are required. See the turbulenz_local readme for more details.
Turbulenz tools are now distributed as a turbulenz_tools python package, which can be downloaded from pypi. In the SDK, these packages are downloaded and included in the installer. To update to a later tools package:
Each SDK will bundled with a compatible version of the tools. Check compatibility before updating to the latest tools.
To import tools directly from python, you should now use: ‘turbulenz_tools.tools.*’.
The viewer is now a standalone application. Models, animations, etc can be viewed directly from the application if the base asset URL and asset file are correctly selected. When browsing the assets, any assets that can be viewed will launch the viewer application. This will allow developers to easily find the viewer and try it out on their models. The viewer now has canvas-debug, canvas, plugin-debug, plugin modes.
Performance improvements to the renderers, mainly about reducing CPU cost when preparing the renderables for rendering.
Performance improvements to the 2D canvas API.
Local server now remembers the user’s hub password when deploying a game:
The deploy dialog layout has been improved. The list of previously deployed versions is now on the left hand side. On selecting this list, the version name is shown below so users can see what they have previously uploaded. Users can now upload on top of uploaded versions (provided they are unlocked) or create a version with a new name. If the version clashes they will be warned and asked if they want to overwrite the previous version.
The local server now contains a “logged in as” field on the main page. This allows developers to test being logged in as a particular user with a given name, emulating the services provided by Turbulenz Hub and turbulenz.com. This now separates the data for badges, leaderboards, userdata, notifications. To change users read the instructions for logging in multiple accounts.
Local server now has a common.ini and a release.ini/development.ini. The common file contains information that is required for both release and development. It is possible to overwrite settings from common in release/development by declaring the setting after the import of the common.ini.
The default renderer’s defaultPrepareFn will now switch to a default “flat” or “flat_skinned” technique if “diffuse” is not set on the technique parameters for a geometries material.
Changes have been made to the Mapping Table object. Certain undocumented properties are not longer available, if you previously used properties such as mappingTablePrefix, please note they are no longer available.