PICO8安卓原生前端

七级用户 miku233 4小时前 447

项目地址:GitHub - Macs75/pico8-android: A wrapper for PICO-8 to run on Android


PICO-8 Android 版 (v1.0.0)

本应用程序是专为 Android 平台开发的前端程序,允许你在 Android 设备上运行并游玩原版 PICO-8(具体为 Raspberry Pi 编译版)。

注意: 本程序仅为一个外壳/启动器,其本身不包含 PICO-8。你必须在首次启动时提供合法购买的 PICO-8 Raspberry Pi 可执行文件。


⚠️ 重要技术细节

Android 版本目标与警告

为了能够执行用户提供的外部 PICO-8 可执行文件,本应用针对较旧的 Android SDK 版本进行开发。

  • 原因: 出于安全考虑,较新版本的 Android 限制执行下载或拷贝到设备存储中的二进制文件。针对旧版 SDK 开发可以绕过此限制。

  • 结果: 你可能会看到系统警告,提示此应用是为旧版 Android 构建的。这是预期现象,也是应用正常运行所必需的。

存储权限

应用需要访问设备存储(特别是媒体/文档文件夹)的权限。

  • 用途: 用于将默认的 PICO-8 配置文件拷贝到 /Documents/pico8/data 路径下。

  • 你将在首次启动时被要求授予此权限。


📱 兼容性

当前版本的 APK 要求如下:

  • 操作系统: Android 9.0 (Pie) 或更高版本 (API level 28+)

  • 架构: 64 位 (arm64-v8a)

  • 注意: 不支持 32 位设备 (armeabi-v7a) 及 Android 9 以下的版本。

用户数据与卡带 (Cartridges)

/Documents/pico8/data 文件夹将在 PICO-8 首次运行时自动生成,其结构与标准 PC 版完全一致。

  • 跨平台兼容性: 由于结构相同,如果你在其他平台已有 PICO-8 数据,可以直接将 carts(卡带)、favorites(收藏)和 save data(存档)拷贝到此文件夹。

  • 迁移: 只需将文件拷贝到对应的子文件夹中,即可在 Android 上继续你的游戏进度和库。

  • 同步: 你可以使用 Syncthing 等外部工具将此文件夹与其他设备(PC、树莓派等)保持同步。具体设置请参考所选工具的说明文档。


🌟 主要功能 (Fork 分支改进)

此分支版本引入了多项增强功能,以优化 Android 设备的使用体验:

  • 横屏模式: 针对横屏方向优化的 UI 和显示。

  • 控制器支持: 全面支持外部游戏手柄。

  • 安卓掌机支持: 已在 RG Cube 等设备上经过测试和验证。

  • 虚拟键盘: 随时通过从屏幕底部向上滑动来调出 Android 键盘。

  • 选项菜单: 通过从屏幕左侧滑动或按下手柄上的 L1/LB 键来访问设置菜单。

  • 前端集成: 兼容 ES-DE 等前端,可直接启动 PICO-8 游戏或进入 Splore(设置请参考 v0.0.7 更新日志)。自 v1.0.0 起已添加对 Beacon Launcher 的支持。

  • 直接启动卡带: 支持从任何文件管理器或浏览器直接启动 .p8.png 卡带。支持深度链接 (Deep Links)(可直接从 Lexaloffle 官网启动卡带),以及标准的 Android “分享链接”和“分享图片”操作。

  • 双人模式: 支持连接两个控制器进行双人游戏。

  • 集成着色器 (Shaders): 内置多种着色器。你可以修改 /Documents/pico8/shaders 中的文件。复制现有着色器并重命名为 [名称].custom.gslang,下次菜单选择时即可加载。注意:格式为 Godot 着色器语言,而非标准 slang 格式。

  • 边框 (Bezel) 支持: 可在屏幕周围激活装饰边框。你可以通过修改 /Documents/pico9/bezel.png 来自定义。请确保给视频显示区域留出透明空间。

  • 自定义色彩校准: 通过调整颜色参数来控制视觉效果。


PICO-8 Android v1.0.0 更新日志

🚀 性能与核心优化

  • 优化帧步进 (Frame Pacing): 重写了视频渲染管线,采用“拉取式 (pull-based)”同步方案。

  • 底层 Shim 优化: 将 TCP 套接字缓冲区提升至 256KB,并实施了 120 FPS 帧率上限,在确保画面流畅的同时防止设备过热。

  • 降低输入延迟: 实现了输入批处理机制,防止在高轮询率设备上出现线程锁死。

🎨 图形与视觉效果

  • 着色器支持: 新增多款高性能着色器,包括 Retro V2LCD3xCRT-1tap 等。

  • 全局饱和度控制: 菜单中新增了调整颜色浓淡的选项,适用于所有开启的着色器。

  • 着色器自定义: 用户可以通过在 /Documents/pico8/shaders/ 放入修改后的 [名称].custom.gdshader 文件来覆盖内置着色器。

  • 自定义边框 (Bezel): 支持特定的 bezel.png 叠加层并实现自动缩放。你可以通过修改 /Documents/pico8/bezel.png 来更换边框。请确保图片中央 PICO-8 输出区域是一个真实的透明正方形。

    (我不清楚目前内置边框的原作者是谁,请私信我,我会把你加入致谢名单!)

🎮 输入与系统

  • 支持双人模式: 全面支持本地多人游戏,并提供专门的 P1/P2 控制器分配选项。

  • Beacon Launcher 支持: 继 ES-DE 之后,新增对 Beacon 启动器的支持。请使用以下自定义 am start 命令:am start -n io.wip.pico8/com.godot.game.GodotApp -a android.intent.action.VIEW -d {file_uri}

🐛 错误修复

  • 音频路由修复: 切换至 OpenSL ES 驱动,以正确处理耳机与扬声器的切换。

  • 休眠修复: 当你切换到其他 Android 应用或关闭屏幕时,PICO-8 现在会正常进入休眠状态。



百度分流:

链接: https://pan.baidu.com/s/1JuGbRGEbl073bjnKPmg9Aw 

 


上一篇:每日一问:在国外索尼这种强制退款是合法的吗?
下一篇:老腰要断了
最新回复 (4)
  • 三级用户 kevintwh 2小时前
    0 2
    感谢分享
  • 二级用户 kinkymouse 1小时前
    0 3
    感谢分享
  • 五级用户 fanalc 1小时前
    0 4
    what‘s it
  • 六级用户 一条大辉狼 32分钟前
    0 5
    高级了
    • 老男人游戏网配套论坛
      6
        立即登录 立即注册
发新帖
本论坛禁止发布SWITCH和PS4相关资源,若有其他侵权内容,请致邮3360342659#qq.com(#替换成@)删除。