1. 创建新的Unity项目
打开Unity,创建一个新的项目“BuildingDemoProject”。
2. 获取Unity Package 安装包
打开 https://www.mapbox.com/unity/,单击 Download the SDK下载SDK包。
打开Unity,在 Unity 中导入程序包:Assets菜单—>Import package—>Custom Package。加载SDK,点击“Import”导入。
3. 配置您的 Mapbox API Token
您首先需要Mapbox访问令牌(access token),才能使用您的 Mapbox 账号中地图和服务。如果已经注册了Mapbox账号,可以直接打开:https://www.mapbox.com/studio/account/tokens/ 来查看Access Token。如果没有,还不赶快注册哦。
4. 在 Unity 中配置 API Access
从 Unity Editor 菜单中单击 Mapbox-> Configure Access。将您的令牌粘贴到Token字段中。如果令牌有效,就会保存到 StreamingAssets / MapboxAccess.text 里的文件中。此外,你也可以直接打开MapboxAccess.text 将token粘贴进去。
5. 构建Building场景
在Assets下创建一个文件夹BuildingDemo,并在其中创建一个新的场景:BuildingScene。
6. 创建BuildingVisualization
在BuildingDemo文件夹下创建BuildingVisualization文件夹,并在其中创建一个MapbVisualization,取名为“BuildingVisualization”;
7. 创建Factories
在BuildingVisualization文件夹下新建Factory文件夹来存放相关的Factories。在其中创建三个Factory,分别为:BuildingImageFactory(Map Image Factory)、BuildingMeshFactory(Mesh Factory)、BuildingTerrainFactory(Terrain Factory)等。
8. 创建MeshFactory
在Factory下创建MeshFactory文件夹,并在其中创建BuildingVisualizer,类型为VectorLayerVisualizer。
9. 创建BuildingModifier
在MeshFactory下创建BuildingModifier文件夹,并在其中创建BuildingHeight(HeightModifier)、BuildingPolygon(PolygonModifier)、BuildingTexture(TextureModifier)、BuildingUv(UvModifier)、BuildingStack(ModifierStack)。同时你也可以给Building创建一个Material纹理。
10. 设置BuildingStack
在BuildingStack中添加三个Mess Modifiers,分别为刚才创建的BuildingPolygon、BuildingUv、BuildingHeight,以及一个Go Modifiers: BuildingTexture。你可以设置BuildingTexture的Top和Side Material到一个你已经创建的纹理。
11. 设置BuildingVisualizer
打开BuildingVisualizer,将Key设置为“building”,Default Stack设置为创建的BuildingStack。
12. 设置BuildingImageFactory和BuildingMeshFactory
打开BuildingImageFactory,设置Map Type以及对应的Style和Map Id(此处我们使用Basic Mapbox Style的Streets);设置BuildingMeshFactory的Map Id,并添加一个Layer Visualizers为创建的BuildingVisualizer。
13. 设置BuildingVisualization
在BuildingVisualization下添加三个Factory,分别为刚才创建的BuildingImageFactory、BuildingMeshFactory、BuildingTerrainFactory。
14. 添加MapController
在BulidingScene里添加一个新的空对象:MapController,并添加一个新的Map Controller组件,将组件的Map Visulization属性为刚才创建的BuildingVisualization,并设置LatLng(中心经纬度)为31.24, 121.5(上海),Zoom为16。见下图。
15. 设置并执行BuildingScene
设置BuildingScene的Main Camera参数,具体见下图。
最后,让我们来执行刚刚创建的Scene!
以上是我们使用Mapbox Unity SDK创建3D建筑物场景快速入门步骤,您可以根据自身的游戏场景需求来实现3D建筑物的加载和渲染。
联系客服