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

news/2024/7/10 22:20:08 标签: 游戏, 开源

picture

Ryujinx/Ryujinx

Stars: 26.1k License: MIT

picture

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

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

stenzek/duckstation

Stars: 5.8k License: GPL-3.0

picture

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

picture

30-Days-Of-Python 是一个逐步指南,帮助在 30 天内学习 Python 编程语言。
该项目的主要功能、关键特性、核心优势包括:

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

marimo-team/marimo

Stars: 3.1k License: Apache-2.0

picture

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。


http://www.niftyadmin.cn/n/5456635.html

相关文章

NOIP,CSP-J,CSP-S——树

一、树 概念: 节点、深度、路径、边 树的直径 真题: 答案:B 答案:A 一个树的边是n-1 现在是m,所以m-(n-1)m-n1 二、二叉树 完全二叉树和满二叉树 满二叉树,有h层,124……2^(h-1)&#xff0…

吴恩达机器学习笔记 三十 什么是聚类 K-means

聚类(clustering)是一种无监督学习算法,关注多个数据点并自动找到相似的数据点,在数据中找到一种特定的结构。无监督学习算法的数据集中没有标签 y ,所以不能说哪个是“正确的 y ”。 K-means算法 K-means算法就是在重复做两件事&#xff1a…

Electron 应用性能优化策略大全

Electron 应用性能优化策略大全 资源优化渲染进程分离资源压缩与缓存动态资源按需加载 预加载内存管理与资源释放内存管理管理渲染进程内存主进程内存优化GPU内存优化 资源释放 垃圾回收与代码分割利用 V8 引擎优化内存回收代码分割与动态导入 启动优化离线资源缓存与服务端推送…

小米消金加大涉老领域金融知识宣传,满足老人多元化金融需求

近年来,电信网络诈骗案件持续高发,而诈骗分子紧跟社会热点,诈骗手法不断翻新升级。老年群体由于信息接收滞后,辨别能力有限,加之自我防范意识薄弱,个人信息更容易泄露严重,成为不法分子组织非法…

Grafana实时监控minio的极简方法

背景 想监控一下minio的部分信息. 使用过程中需要关注的内容挺多的. 只看简单的node感觉已经不够了. 所以想监控易一下. ERLANG 复制 全屏 方式和方法 minio其实集成了prometheus 支持的监控指标 只需要在配置文件中放开就可以了. 虽然可以使用mc 的命令 create beartoken 但…

JVM常见垃圾收集算法

JVM常见垃圾收集算法 标记-清除算法复制算法标记-整理(标记压缩)算法分代收集算法新生代和老年代分代收集算法工作机制 面试题:为什么分代收集算法把堆分成年轻代和老年代? 标记-清除算法 最基础的算法,分标记和清除两…

Pytorch:torch.utils.data.DataLoader

torch.utils.data.DataLoader 是PyTorch提供的一个功能,用来包装数据集并提供批量获取数据(batch loading)、打乱数据顺序(shuffling)、多进程加载(multiprocessing loading)等功能。当进行深度…

Nginx官方镜像Dockerfile浅析

目录 Dockerfile获取 dfimage逆向获取 Nginx官网获取 Dockerfile分析 启动命令分析 Docker 容器入口点脚本分析 exec "$" exec 命令 "$" 参数 总结 在云原生技术快速发展的今天,Docker 作为容器技术的代表,为软件的打包、…