本文介绍如何通过AR跟踪真实世界中的图片(Marker)
1、准备一张图片作为Marker
随便找一张图片作为Marker(支持.jpg格式,不支持png格式)
将图片放到/Content/ImageTrack目录,命名为Marker1
2、创建ARCandidateImage
右键->Miscellaneous->DataAsset,选择ARCandidateImage,创建数据资产,命名为D_ARCandidateImage
双击打开D_ARCandidateImage,填入必要参数:
1.Candidate Texture选择Marker1
2.Friendly Name写入Marker1
3.Width和Height为图片打印出来的实际大小(单位是cm)
如果将图片打印到A4纸上,用尺子测量一下A4纸上图片到宽和高,并填入;如果将图片通过手机打开,用尺子测量一下手机上图片的宽和高,并填入
3、配置ARSessionConfig
右键->Miscellaneous->DataAsset,选择ARSessionConfig,创建数据资产,命名为ARSessionConfig_ImageTrack
为ARSessionConfig添加ARCandidateImage
4、创建ImageTrackManagerBP跟踪图像
先在场景中放置1个Cube,Position为0,Scale改为0.05(对应5cm),设置为Movable
右键->BlueprintClass->Actor,创建蓝图Actor,并命名为ImageTrackManagerBP,在蓝图中创建一个StaticMeshActor的变量命名为MyCube,同时设置为Instance Ediable
自定义StartImageTrackEvent,获取物理世界图片的世界坐标,并将图片的世界坐标设置给Cube,这样Cube就跟踪了图片的位置
将ImageTrackManagerBP放置到场景中,同时将Cube赋值给MyCube变量
5、在StartAR后同时启动图像检测
给场景中的ImageTrackManagerBP添加Tag,命名为ImageTrackManager
打开MainPage蓝图,添加一个函数,命名为StartImageTrack
在MainPage蓝图的StartAREvent函数中调用StartARSession后,调用StartImageTrack启动图像跟踪
修改StartARSession函数的入参为ARSessionConfig_ImageTrack