New in 2.0.0

This page lists changes in version 2.0.0 affecting user-facing APIs

  • Adds the VR Exchange API

  • Most nodes in the User tree (and the Developer tree in general) are now hidden behind the User Interface / Advanced / Developer Admin Mode setting. If you are a plugin developer it is recommended to enable this setting.

  • vrParseJSON now triggers a Lua error on parsing failure, instead of simply printing the error message and continuing

  • Adds some utilities to assist working with reference types in Lua (vectors, matrices, etc)

  • Pivot API Changes

  • Fixes assignment to swizzled vector values (e.g. vrScenesNode().Cube.Transform.Rotation.zx = { 10, 20 }

  • Adds vrSearchView which allows the tree view quick-search bar to be pre-populated with a search query string

  • Adds vrNodeGetTraits and vrNodeHasTrait to query the metanode traits of a node. If you know the name of the trait you are looking for, you should use vrNodeHasTrait, as getting all the traits is more expensive

  • New attribute table nodes are accessible from Lua using node property syntax for keys (e.g. local value = a.Metadata.KEY_NAME). The structure of attribute tables is such that keys and values are interleaved in regular properties, for example:

    • 0 - Key 1

    • 1 - Value 1

    • 2 - Key 2

    • 3 - Value 2

    • etc...

    The vrNodeSetValueByIndex function allows access to key names as well as values using this convention.

  • node.WorldEnabled provides access to the node's world enabled state

  • Adds vrNodeIsInGroup to check whether a node is in the specified group, and vrGroupRemoveMember to remove a node from a group

  • Adds vrTreeViewSelectionSelectParent to select the parent nodes of the nodes in the specified view selection

  • Adds vrGetContactPoints which returns a list of contact points and normals between two nodes. This can be used, for example, from a Touch event by providing the __Self and __Other registers.

  • Lua plugins should no longer execute code outside of functions. Initialisation code should go in function init()

  • Adds vrGetActivatorNode which can be used inside an activate event script to identify the node that activated it (in the case of it being activated by vrActivate)

  • Adds vrToggleProjection to toggle the current viewport between perspective and orthographic mode

  • Adds vrUsingHMD to identify whether the primary viewport is rendering into a head-mounted display

  • Lua Event Coroutines

  • Lua Observers

  • ApplicationMenuEntry nodes added to context menus now support all of the same types as the main application menu (e.g. app commands, lua blocks, property toggles, etc)

  • The tools window and associated UI nodes has been removed, replaced with the toolbar for common shortcuts, and the diagnostics frame for logs and stats. Plugins that were previously inserting frames into the tools window may now instead insert buttons into the toolbar, or add frames into the diagnostics window.

Deprecation

The following Lua functions have been marked as Deprecated and may be removed in a future version. Most notably, all of the cluster specific Lua calls have been refactored into their non-cluster named equivalent. The cluster logic is now performed completely in C++.

Deprecated Function

Replacement (if any)

vrClusterResetWindows

vrResetWindows

vrShouldShowPropertyWindow

None. This function has always returned true.

vrPopupPropertyWindow

vrShowPropertyWindow

vrClusterPopupPropertyWindow

vrShowPropertyWindow

vrClusterShowPropertyWindow

vrShowPropertyWindow

vrShowNodeProperties

vrShowPropertyWindow

vrClusterShowNodeProperties

vrShowPropertyWindow

vrClusterTriggerRename

vrTriggerRename

vrPopupScriptWindow

vrShowScriptWindow

vrClusterPopupScriptWindow

vrShowScriptWindow

vrPopupScriptWindowAndShow

vrShowScriptWindow

vrClusterPopupScriptWindowAndShow

vrShowScriptWindow

vrClusterShowSequencer

vrShowSequencer

vrClusterPopupToolsWindow

vrPopupToolsWindow

vrClusterPopupFindWindow

::vrPopupFindWindow

vrClusterShowSettingsWindow

vrShowSettingsWindow

vrShowInTree

vrSelectNodes

vrClusterShowInTree

vrSelectNodes

vrShowInTreeViewFrame

vrSelectNodes

vrClusterShowInTreeViewFrame

vrSelectNodes

vrSelectAndShowProperties

vrSelectNodes

vrClusterSelectAndShowProperties

vrSelectNodes


No Results.

Getting StartedArchitectureBest PracticesHow ToAdvanced TopicsChangelogvrtree_cppCoreForeign Function InterfaceMetanodesMigrationsObserversPropertiesTreeUtilitiesAPI DefinitionsVR ExchangePluginsLua API