Added PathConstrainer and LinearConstrainer support to builder
constrainers are defined like this
"constrainers":
{
"constrainer0":
{
"type":"PathConstrainer",
"points":[[100.0, 500.0, 0.0],[400.0, 500.0, 0.0]] ,
"control-points":[[200.0, 100.0, 0.0],[300.0, 100.0, 0.0]],
"forward":[1.0,0.0,0.0]
},
"constrainer1":
{
"type":"LinearConstrainer",
"values":[0,400,200,0],
"progress":[0.0,0.25,0.75,1.0]
}
}
And they can be applied or remove using signals like this:
...
"signals":
[
{
"name": "on-stage",
"action": "applyConstraint",
"constrainer": "constrainer0",
"properties":
[
{
"target":"targetActor",
"targetProperty":"position",
"source":"sourceActor",
"sourceProperty":"position-y",
"range":[-120.0,300.0]
},
{
"target":"targetActor",
"targetProperty":"orientation",
"source":"sourceActor",
"sourceProperty":"position-y",
"range":[-120.0,300.0]
}
]
},
...
{
"name": "touched",
"action": "removeConstraints",
"constrainer": "constrainer0",
"properties":
[
{
"target":"targetActor"
}
]
}
Change-Id: I182c5ac2ad53f36fcb17bdcde6c47b9facf12bf0