英雄联盟世界的地图抓取与分析

0.背景

S11比赛正在如火如荼的举行。作为一个S3赛季的老玩家和地理人,我想从另外个角度带你了解LOL的世界。

1.数据获取

1.1数据初探

英雄联盟推出了其世界地图网页版,访问地址为:https://map.leagueoflegends.com/.

鼠标移动到图标上时,会有该地区的行政图:

放大时,该地区会变得清晰,并且有地形的起伏:

因此这个地图应该有一个高分辨率的地图、高分辨率的地图,类似于栅格金字塔。同时有一个DEM数据对地形进行拉伸渲染。

1.2地图抓取

亘古不变的F12键,查看从页面打开时的网页请求,找到png图片:

1.3英雄联盟地图结构解析

通过后期数据的抓取与思考,我粗略的画了一下LOL展示地图的结构:

英雄联盟的地图浏览起来非常丝滑,但是这个地图的原理很复杂。不仅对DEM进行了在线渲染,而且会根据各种掩膜进行判定,比如说被海洋掩膜覆盖的区域,会生成一个“水波荡漾”的效果。

2.本地地图制作

主要分为三个方面:各个城邦矢量图的制作、高分辨率影像图的合成以及DEM数据的重构。

2.1城邦矢量化

从官方网页结构中,我们可以获得矢量图,每一个城邦拥有一个范围栅格图(.png格式,2048*2048像素),比如说诺克萨斯城邦:

我们将其放到arcgis,根据其边界逐一描绘:
在这里插入图片描述

2.2 DEM数据的重构

从官网界面,我们可以看到三维的地形数据,实际上是利用了一个DEM图进行了Blender在线渲染,我们从网页中获得的DEM数据是一个Unit8像素深度的栅格图,DEM值的范围是0-255。
在这里插入图片描述
DEM的Value值范围为0-146,我们不知道真实的海拔高度。有没有什么办法大致知道DEM的每一个值代表的真实高度?
在这里插入图片描述
考虑到德玛西亚城的河谷平原像素值在20左右,以及LOL最高峰应该超过4000米。我们假设每一个像素值代表高度为28米。因此,LOL世界最高山峰的海拔为4116米。
在这里插入图片描述
使用栅格计算器,重新计算LOL世界的D

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

叫我锐多宝

请我喝杯啤酒吧

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值