Switch 和 PS1 模拟器:3000+ 游戏随心玩 | 开源日报 No.174

Ryujinx/Ryujinx

Stars: 26.1k License: MIT

Ryujinx 是用 C# 编写的实验性任天堂 Switch 模拟器。

该项目旨在提供出色的准确性和性能、用户友好的界面以及稳定的构建。它已经通过了大约 4050 个测试,其中超过 4000 个可以启动并进入游戏,其中大约 3400 个被认为是可玩的。主要功能和优势包括:

  • 兼容性高:支持多种语言翻译
  • 音频输出完全支持
  • CPU 仿真器支持 ARMv8 指令集,并具有三种内存管理选项
  • GPU 仿真器使用 OpenGL、Vulkan 或 Metal API,并提供六种图形增强功能
  • 支持键盘、鼠标、触摸输入以及 JoyCon 输入等多种控制方式

stenzek/duckstation

Stars: 5.8k License: GPL-3.0

duckstation 是一款快速的 PlayStation 1 模拟器,支持 x86-64/AArch32/AArch64/RV64 平台。

该项目是一个 PlayStation 1 的模拟器,旨在提供可玩性、速度和长期可维护性。它力求尽可能准确,并保持适用于低端设备的性能。不鼓励使用 "Hack" 选项,默认配置应支持所有可玩游戏,只有部分增强功能存在兼容性问题。

  • 支持多种硬件渲染方式(D3D11、D3D12、OpenGL、Vulkan 和 Metal)以及软件渲染。
  • 提供升频、纹理过滤和真彩色(24 位)等硬件渲染功能。
  • 支持 PGXP 进行几何精度校正、纹理修复和深度缓冲区仿真。
  • 自适应降采样滤镜以及后处理着色器链(GLSL 和实验中的 Reshade FX)等特点。

系统要求:x86_64, AArch32/armv7, AArch64/ARMv8 或 RISC-V/RV6 CPU;OpenGL 3.1/OpenGL ES 3.1/Direct3D 11 Feature Level10.0 (或 Vulkan 1.0) 及以上版本的 GPU;SDL, XInput 或 DInput 兼容游戏控制器。

Asabeneh/30-Days-Of-Python

Stars: 28.7k License: NOASSERTION

30-Days-Of-Python 是一个逐步指南,帮助在 30 天内学习 Python 编程语言。

该项目的主要功能、关键特性、核心优势包括:

  • 逐步指南:按照每日主题进行学习
  • 多种资源:提供视频教程和练习
  • 面向初学者和专业人士

marimo-team/marimo

Stars: 3.1k License: Apache-2.0

marimo 是一个用于 Python 的响应式笔记本,可以运行可重复的实验、作为脚本执行、部署为应用程序等。

marimo 是一个响应式的 Python 笔记本,具有可重复性、与 git 兼容以及可以作为脚本或应用程序部署的特点。它允许您快速进行数据和模型实验,在笔记本正确性方面具有自信,并将笔记本产品化为流水线或交互式 Web 应用程序。主要功能和核心优势包括:

  • 响应式:运行单元格时,marimo 自动更新所有受影响的单元格和输出。
  • 交互式:将滑块、表格、图形等绑定到 Python 上,无需回调函数。
  • 可重复性:没有隐藏状态,确定性执行顺序。
  • 可执行:作为 Python 脚本执行。
  • 可共享:部署成应用程序并分享给他人使用。
  • 与 git 兼容:存储为 .py 文件。

该项目提供了丰富而完整的功能集合,并通过解决传统笔记书写工具(如 Jupyter)存在问题来改进编程环境。

jetpack-io/typeid

Stars: 1.5k License: Apache-2.0

TypeID 是一个类型安全、可排序的全局唯一标识符,灵感来自于 Stripe 的 ID。TypeIDs 作为 UUIDv7 的现代化、类型安全扩展而存在,并受到了 Stripe API 中前缀使用方式的启发。

以下是 TypeID 的关键特性和核心优势:

  • 类型安全:在期望使用 post ID 时无法意外地使用 user ID。调试时,通过查看 TypeID 前缀可以立即理解该标识符所指向实体的类型。
  • 与 UUID 兼容:TypeID 是 UUID 的超集。它们基于即将发布的 UUIDv7 标准。如果你解码 TypeID 并移除其包含信息,则得到一个有效的 UUIDv7。
  • K 可排序:使用 TypeIDs 作为数据库中主键能够保证良好本地性 (locality),相比完全随机生成如 UUID v4 等不具备良好本地性 (global ids),这点非常重要
  • 精心编码:base32 编码既 URL 安全且大小写不敏感,避免模糊字符,在复制黏贴过程中更易选取 (只需双击),并且较传统十六进制编码 (UUIDs 所用) 更紧凑 (26 个字符 vs.36 个字符)

目前已有多种语言对此项目进行了官方或社区提供支持,包括 Go、Python、SQL 和 TypeScript。此外还有社区提供的其他语言实现。

TypeID 还附带了一个命令行工具用于生成 TypeID,并且可以将已存在的 TypeID 解码为 UUID 或者将 UUID 编码成 TypeID。

相关推荐
星哥说事3 小时前
使用开源免费雷池WAF防火墙,接入保护你的网站
web安全·开源
机器视觉知识推荐、就业指导3 小时前
开源QML控件:进度条滑动控件(含源码下载链接)
前端·qt·开源·qml
DolphinScheduler社区3 小时前
白鲸开源WhaleStudio与崖山数据库管理系统YashanDB完成产品兼容互认证
数据库·开源·认证·崖山数据库·白鲸开源
264玫瑰资源库3 小时前
斗鱼娱乐电玩平台源码搭建实录
运维·服务器·游戏·娱乐
心随_风动4 小时前
RHEL与CentOS:从同源到分流的开源操作系统演进
linux·开源·centos
DolphinScheduler社区5 小时前
白鲸开源与亚马逊云科技携手推动AI-Ready数据架构创新
人工智能·科技·开源·aws·白鲸开源·whalestudio
自由鬼7 小时前
开源AI开发工具:OpenAI Codex CLI
人工智能·ai·开源·软件构建·开源软件·个人开发
韩仔搭建8 小时前
美乐迪电玩大厅加载机制与 RoomList 配置结构分析
游戏·小程序·开源·lua
灏瀚星空11 小时前
用Obsidian四个插件打造小说故事关联管理系统:从模板到图谱的全流程实践
经验分享·笔记·开源
二狗哈12 小时前
制作一款打飞机游戏21:自定义工具
游戏