These are chat archives for highfidelity/hifi

Jun 2017
Jeff Moyes
Jun 23 2017 00:07

Also, separate question, I thought I understood setting "grabbableKey" in the userData (I thought that was the programmatic equivalent of checking the grabbable checkbox in the UI . But I had a bit of a question and went looking. I didn't find much in the documentation (I might have just missed it). And so I went looking through code examples and discovered so many variations that now I'm a bit confused. For instance in lightBall.js (
grabbableKey: {
spatialKey: {
relativePosition: {
x: 0,
y: 0.1,
z: 0
invertSolidWhileHeld: true
What is spaitialKey and how does it work with grabbableKey?

Does anybody have a good explanation for exactly what grabbableKey does?


Melissa Brown
Jun 23 2017 00:11
@Atlante45 might be able to help you.
or @huffman
Clément Brisset
Jun 23 2017 00:39
@jmo7 Everything in script-archive is pretty old and probably doesn't accurately shows the state of the current API.
grabbableKey basically serves as a storage object that can contain different settings telling scripts/system/controllers/handControllerGrab.js how to interact with the object.
Clément Brisset
Jun 23 2017 00:48
Here is some of the keys I know are available.
grabbableKey: {
    grabbable: true, // Is that object grabbable at all?
    triggerable: true, // Can the object be triggered while equipped (ie. gun, lighter, etc)
    cloneable: true, // Should we not touch the object but create a copy instead that gets equipped?
    cloneLifetime: 100, // How many seconds that clone should be alive for? 300s by default
    cloneDynamic: true, // Should the clone be a dynamic object?
    cloneLimit: 10, // Should we limit the amount of copies allowed? 0 means infinite
    ignoreIK: true, // position the object relative to your virtual hand or your controller (for the cases where the virtual hand cannot reach the controller's position)
    kinematic: true, // is the entity kinematic?
    wantsTrigger: true, // not sure about this one
Clément Brisset
Jun 23 2017 00:55
Not sure how up to date this is.
Jun 23 2017 01:36

I have sort of hit a wall when trying to compile the android branch and turn it into an apk.
I get right up to the end, and then ant fails because there is no build.xml file.
I have verified that build.xml should be created by this command in AarToLibProject.cmake:

set (_command $ENV{ANDROID_HOME}/tools/android update lib-project -p . -t ${_target_id})
execute_process(COMMAND ${_command} WORKING_DIRECTORY ${_output_dir})

That call is failing, because "android" is deprecated. I have not been able to download a version
of the android sdk that is new enough that it can handle android-24 but old enough that android is
not deprecated.
It appears that AarToLibProject.cmake was created to avoid using gradle, but will no longer work with current tools.
Are there plans to migrate from ant to gradle?
By the way, I am working on a Linux computer, but I think this is a cross platform problem.

Jeff Moyes
Jun 23 2017 03:51
Hi do I go about getting permission to access the (I've got an Atlassian acount but it tells me
I don't have permission to access the highfidelity wiki on it
Melissa Brown
Jun 23 2017 14:17
I'll get that doc and email it to you. Everything is moving to a new home in the next couple of days and I'll confirm that this is updated/included in the move
@TheWizardsQuiver We have new osX build instructions coming since the deprecated "android" is an issue. I will ask our other developers who have built it how they got around the issue.
Jun 23 2017 15:31
@themelissabrown That would be great. I am anxious to get this working.