初学 iOS 请问各位 iOS 高手这个游戏地图是如何实现的呀? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
flashlight
V2EX    问与答

初学 iOS 请问各位 iOS 高手这个游戏地图是如何实现的呀?

  •  
  •   flashlight 2023-06-10 11:36:43 +08:00 1966 次点击
    这是一个创建于 923 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我最近沉迷塞尔达于是就看到了这个 App 所以非常好奇这个带缩放的地图在 iOS 中是如何实现的。

    就是左边这个图一里面的地图,可以明显的看出来缩放之后清晰度也会变,然后地图的渲染也可以看出来是有瓦片的设计的感觉。

    看起来这个 App 是原生做的,所以我就非常想知道原生要怎么实现。希望能有有高手指点一下给一些方向,谢谢啦!


    13 条回复    2023-06-11 04:07:45 +08:00
    w88975
        1
    w88975  
       2023-06-10 11:59:32 +08:00
    mapbox
    flashlight
        2
    flashlight  
    OP
       2023-06-10 12:12:16 +08:00
    @w88975 谢谢你呀 mapbox 看了下没找到支持第三方的地图的功能呢
    DJCNMHG
        3
    DJCNMHG  
       2023-06-10 13:16:33 +08:00
    求一个 App 名字
    beimenjun
        4
    beimenjun  
    PRO
       2023-06-10 13:26:36 +08:00
    其他组件看着是原生,地图部分不一定是啊……
    iOCZ
        5
    iOCZ  
       2023-06-10 13:53:25 +08:00
    多重纹理吧?
    iOCZ
        6
    iOCZ  
       2023-06-10 13:56:49 +08:00
    看看游戏引擎是用的啥,原生 SpriteKit
    Jeven
        7
    Jeven  
       2023-06-10 14:04:27 +08:00
    请问这个 App 叫什么名字呢
    b821025551b
        8
    b821025551b  
       2023-06-10 14:15:39 +08:00
    xRayyyy
        9
    xRayyyy  
       2023-06-10 14:48:35 +08:00
    哈哈 我买了一个类似的老头环的地图
    做的确实很牛逼
    老头环的比这个的复杂度还要高好几倍
    mogita
        10
    mogita  
       2023-06-10 15:27:28 +08:00 via iPhone
    目测 vector tiles
    exploreexe
        11
    exploreexe  
       2023-06-10 17:24:11 +08:00
    可以问下 chatgpt..

    这位楼主正在寻找关于如何在 iOS 上实现游戏地图的建议,特别是那种支持缩放和清晰度变化的地图,而且他观察到这种地图看起来有瓦片的设计感1 。

    在 iOS 中实现此类地图的一种常见方式是使用瓦片地图( tile maps )。瓦片地图由多个小的图像或“瓦片”组成,这些图像拼接在一起形成更大的地图。当用户在地图上滑动或缩放时,只有可见的瓦片才需要加载和渲染,这可以极大地优化性能。

    而且,iOS 的原生框架 SpriteKit 提供了 SKTileMapNode 类,它可以用来创建和管理瓦片地图。你可以创建不同的瓦片组,每个瓦片组都有自己的瓦片定义。然后你可以设置每个网格单元格的瓦片组,从而创建出复杂的地图。你甚至可以动态地改变每个网格单元格的瓦片组,以此来实现地图的动态修改。

    至于缩放和清晰度变化,你可以为每个瓦片创建多级的 mipmaps ,这些 mipmaps 是原始瓦片的不同分辨率版本。当地图缩放时,你可以根据当前的缩放级别选择合适的 mipmap ,这样可以保证在所有缩放级别下地图的清晰度。

    如果你的地图非常大或者需要复杂的渲染效果,你可能还需要使用一些更专业的游戏引擎,如 Unity 或 Unreal Engine 。这些引擎都提供了强大的地图编辑和渲染功能,可以满足更复杂的需求。
    Mar5
        12
    Mar5  
       2023-06-10 23:48:59 +08:00 via iPhone
    @DJCNMHG
    @Jeven
    Z 助手
    gooin
        13
    gooin  
       2023-06-11 04:07:45 +08:00 via iPhone
    leaflet openlayers 都能实现
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     948 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 21ms UTC 23:27 PVG 07:27 LAX 15:27 JFK 18:27
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86