Java 为什么通过RoboVM在ARKit中使用命中测试时会得到错误的位置坐标?
我正在尝试使用RoboVM开发一个带有ARKit的测试AR应用程序。在使用ARWorldTrackingConfiguration设置会话并运行它之后,我想通过如下方式运行命中测试来确定检测到的水平面(地板)上的位置:Java 为什么通过RoboVM在ARKit中使用命中测试时会得到错误的位置坐标?,java,arkit,hittest,robovm,Java,Arkit,Hittest,Robovm,我正在尝试使用RoboVM开发一个带有ARKit的测试AR应用程序。在使用ARWorldTrackingConfiguration设置会话并运行它之后,我想通过如下方式运行命中测试来确定检测到的水平面(地板)上的位置: public void addTapGestureToSceneView(){ UITapGestureRecognizer uiTapGestureRec = new UITapGestureRecognizer(); uiTapGestureRec.addLi
public void addTapGestureToSceneView(){
UITapGestureRecognizer uiTapGestureRec = new UITapGestureRecognizer();
uiTapGestureRec.addListener(new UIGestureRecognizer.OnGestureListener() {
@Override
public void onGesture(UIGestureRecognizer uiGestureRecognizer) {
CGPoint tapLocation = uiGestureRecognizer.getLocationInView(arView);
NSArray<ARHitTestResult> hitTestResults = arView.hitTest(tapLocation, ARHitTestResultType.FeaturePoint);
if(!hitTestResults.isEmpty()) {
VectorFloat3 vec3 = getTranslation(hitTestResults.last().getWorldTransform());
addBox(vec3);
}
}
});
arView.addGestureRecognizer(uiTapGestureRec);
}
public void addTapGestureToSceneView(){
UITapGestureRecognitor uiTapGestureRec=新UITapGestureRecognitor();
uiTapGestureRec.addListener(新的UIGestureRecognitor.OnGestureListener()){
@凌驾
public void OnTesture(UIGestureRecognitor UIGestureRecognitor){
CGPoint TAPPLOCATION=UIgestureRecognitor.getLocationInView(arView);
NSArray
并且:robovm obj编译器代码中存在一个错误,导致针对ABI的向量数据类型(SIMD类型)被错误地封送(作为泛型结构)。在运行模拟器时,当目标为ARM64和GPF时,它会导致垃圾。它已被修复并合并到主版本。也可在2.3.6-SNAPSHOT build中使用。
查看此pr以了解详细信息,这可能会回答问题,请在此处包含链接的重要部分,并提供链接供参考。