首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >模型没有显示,但阴影是

模型没有显示,但阴影是
EN

Stack Overflow用户
提问于 2019-08-07 22:35:05
回答 1查看 511关注 0票数 2

我正在尝试开发一个应用程序,并开始开发一个目前使用AR在表面显示3d模型的应用程序。

一切都很好,直到突然之间图像没有显示,但阴影是。我试着将代码恢复到以前的代码,但是没有任何效果。

屏幕截图:https://ibb.co/C6VrGbB

影子是看得见的,但模型却看不见。我下载了一个模型obj并添加了它。它在开始的时候工作得很好,突然,模型就停止了。

代码语言:javascript
复制
public class MainActivity extends AppCompatActivity {

    private boolean tapExecuted = false;
    private final Object syncTaps = new Object();
    private ArFragment arFragment;
    private TextView debugText;

    private ArSceneView sceneView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        debugText = findViewById(R.id.debug_text);
        arFragment = (ArFragment)getSupportFragmentManager().findFragmentById(R.id.ux_fragment);
        arFragment.setOnTapArPlaneListener(this::handleTap);

        this.sceneView = this.arFragment.getArSceneView();
    }

    protected void handleTap(HitResult hitResult, Plane plane, MotionEvent motionEvent) {
//        this.debugText.setText(hitResult.getHitPose().toString());
        synchronized (this.syncTaps) {  // So that only one tap is validated at a time
            if (this.tapExecuted) {
                return;
            }
            this.tapExecuted = true;
        }
        ModelRenderable.builder()
                .setSource(this, Uri.parse("axis test.sfb"))
                .build().thenAccept(renderable -> addModelToScene(hitResult.createAnchor(), renderable))
                .exceptionally(
                        throwable -> {
                            Log.e("TAG", "Unable to load renderable");
                            return null;
                        });
    }

    private void addModelToScene(Anchor anchor, Renderable renderable) {
        AnchorNode anchorNode = new AnchorNode(anchor);
        // To give User flexibility to move, resize and rotate the model
        TransformableNode transformableNode = new TransformableNode(this.arFragment.getTransformationSystem());
        // disabling resize and rotate
        transformableNode.getRotationController().setEnabled(false);
        transformableNode.getScaleController().setEnabled(false);
        transformableNode.setRenderable(renderable);
        transformableNode.setParent(anchorNode);
        transformableNode.select();
        this.sceneView.getScene().addChild(anchorNode);
        this.debugText.setText("Model Added to the tap");
    }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-08-16 16:10:16

我解决了这个问题。我用的是旧版本的剪影。我想它适用于旧版本的手机软件,但是当它被更新后,它就停止工作了。

我将sceneform从1.8.0更新到1.11.0

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57403057

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档