Vuforia IOS柱面示例 - 添加按钮

时间:2015-09-18 16:16:50

标签: ios objective-c opengl-es augmented-reality vuforia

我已成功构建了Vuforia的示例应用程序。我感兴趣的是采用气缸跟踪并用一个不旋转但位于相对于罐头(跟踪图像的中心)的某个位置的按钮替换围绕汽水罐旋转的足球。

我是iOS开发的新手,我不确定如何做到这一点。理想情况下,这将以编程方式完成。

我可以使用以下代码向CylinderTargetsViewController.mm添加一个按钮:

- (void)viewDidLoad
{
 [super viewDidLoad];
 UIButton *button = [UIButton buttonWithType:UIButtonTypeSystem];
 [button setTitle:@"Gossamer Rules" forState:UIControlStateNormal];
 [button sizeToFit];
 button.center = CGPointMake(320/2, 60);
 [button addTarget:self action:@selector(buttonPressed:)
 forControlEvents:UIControlEventTouchUpInside];
 [self.view addSubview:button];
}

- (void)buttonPressed:(UIButton *)button {
    UIApplication *mySafari = [UIApplication sharedApplication];
    NSURL *myURL = [[NSURL alloc]initWithString:@"http://www.example.com"];
[mySafari openURL:myURL];
}

然而,这会在屏幕上添加一个按钮,无论是否找到目标,并且它与目标没有空间关系。

我尝试将此代码移至CylinderTargetsEAGLView.mm但在行[self.view addSubview:button];上收到错误,说该视图不是自我属性。

我意识到这可能不是正确的方法。我认为按钮需要渲染为openGl对象或其它东西,以便它是3维的,并且可以在移动目标时从一个角度看到。

有没有人这样做或有任何线索可以做到这一点?

1 个答案:

答案 0 :(得分:0)

我决定使用Vuforia Unity Package,因为学习纯OpenGL编程的学习曲线要​​陡峭得多。 Unity路线有更大的社区支持,还有更多的教程/信息。