将相机移离标记android(Kudan AR)时3D模型消失
我正在android中使用Kudan SDK开发增强现实。当手机摄像头指向标记时,我尝试生成3D模型。我能够做到这一点。但是如果我把相机从标记上移开,模型就消失了。我不希望3D模型消失,除非应用程序关闭或相机关闭。我想在移动相机的同时移动三维模型。以下是插入标记和三维模型的代码将相机移离标记android(Kudan AR)时3D模型消失,android,3d,camera,augmented-reality,kudan,Android,3d,Camera,Augmented Reality,Kudan,我正在android中使用Kudan SDK开发增强现实。当手机摄像头指向标记时,我尝试生成3D模型。我能够做到这一点。但是如果我把相机从标记上移开,模型就消失了。我不希望3D模型消失,除非应用程序关闭或相机关闭。我想在移动相机的同时移动三维模型。以下是插入标记和三维模型的代码 private void addImageTrackable() { // Initialise image trackable trackable = new ARImageTrackable("Sp
private void addImageTrackable() {
// Initialise image trackable
trackable = new ARImageTrackable("Space");
trackable.loadFromAsset("user_pic.jpg");
// Get instance of image tracker manager
ARImageTracker trackableManager = ARImageTracker.getInstance();
// Add image trackable to image tracker manager
trackableManager.addTrackable(trackable);
}
private void addModelNode() {
// Import model
ARModelImporter modelImporter = new ARModelImporter();
modelImporter.loadFromAsset("cube.jet");
ARModelNode modelNode = (ARModelNode) modelImporter.getNode();
// Load model texture
ARTexture2D texture2D = new ARTexture2D();
texture2D.loadFromAsset("cube.png");
// Apply model texture to model texture material
ARLightMaterial material = new ARLightMaterial();
material.setTexture(texture2D);
material.setAmbient(0.8f, 0.8f, 0.8f);
// Apply texture material to models mesh nodes
for (ARMeshNode meshNode : modelImporter.getMeshNodes()) {
meshNode.setMaterial(material);
}
modelNode.rotateByDegrees(10, 1, 0, 0);
modelNode.scaleByUniform(3f);
modelNode.setPosition(1, 1, 2000);
modelNode.play();
// Add model node to image trackable
trackable.getWorld().addChild(modelNode);
modelNode.setVisible(true);
}
但是我想保留这个3D模型,即使我把相机从标记上移开。当然,由于没有标记,模型正在消失。如果希望始终在同一位置绘制模型,只需在每个帧上保存模型的最后位置,并在标记检测丢失时在该位置绘制模型。如果您想尝试在世界上完全相同的位置(而不是屏幕上的相同位置)绘制手机,您可以尝试使用设备传感器来估计手机的移动,并相应地更新模型的位置。根据我在此类环境中的经验,我告诉过您需要做些什么来解决它。我没有一个特定的代码为您在这里,但我认为没有理由你不能做自己。。。如果您还有其他问题或具体困难,请继续提问。我正在使用kudan SDK,但我无法确定它在哪里使3D模型不可见。我查阅了他们的文件,但无论如何都帮不了我。
trackable
对象有一个监听器,它有一些方法,比如onDetect
onTrack
,但是我无法保持多维数据集的可视性。我不知道Kudan的具体情况,但我可以试着快速查看代码,看看是否可以提供帮助。你用的是哪种样品?如果可以,请为Android sdk提供链接。您甚至可以查找有关如何设置的文档。设置过程中的任何问题。你可以问我是的。。。虽然为你工作听起来很有趣,但我不会那么做,没有时间做两份工作。。。我说如果你有样本链接,我可以快速查看一下。否则我就得通过考试。很抱歉