Chris CollinsMore Script updates816e36911 years agoHistory
43 lines · 1.8 KB · JavaScript
RawDownload
////  rayPickExample.js//  examples////  Created by Brad Hefta-Gaub on 2/6/14.//  Copyright 2014 High Fidelity, Inc.////  This is an example script that demonstrates use of the Camera class////  Distributed under the Apache License, Version 2.0.//  See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html// function mouseMoveEvent(event) {    print("mouseMoveEvent event.x,y=" + event.x + ", " + event.y);    var pickRay = Camera.computePickRay(event.x, event.y);    print("called Camera.computePickRay()");    print("computePickRay origin=" + pickRay.origin.x + ", " + pickRay.origin.y + ", " + pickRay.origin.z);    print("computePickRay direction=" + pickRay.direction.x + ", " + pickRay.direction.y + ", " + pickRay.direction.z);    var pickRay = Camera.computePickRay(event.x, event.y);    intersection = Entities.findRayIntersection(pickRay);    if (!intersection.accurate) {        print(">>> NOTE: intersection not accurate. will try calling Entities.findRayIntersectionBlocking()");        intersection = Entities.findRayIntersectionBlocking(pickRay);        print(">>> AFTER BLOCKING CALL intersection.accurate=" + intersection.accurate);    }        if (intersection.intersects) {        print("intersection entityID.id=" + intersection.entityID.id);        print("intersection properties.modelURL=" + intersection.properties.modelURL);        print("intersection face=" + intersection.face);        print("intersection distance=" + intersection.distance);        print("intersection intersection.x/y/z=" + intersection.intersection.x + ", "                     + intersection.intersection.y + ", " + intersection.intersection.z);    }} Controller.mouseMoveEvent.connect(mouseMoveEvent); function scriptEnding() {}Script.scriptEnding.connect(scriptEnding);