Skip to main content

AI驱动的物理游戏引擎 - 聚合设计

Project description

NexusFine - AI驱动的物理游戏引擎

中文名:聚合设计

一个 AI 驱动的物理游戏引擎,可以快速构建子弹下落、球类运动等 2D/3D 物理小游戏。

特性:

  • AI 驱动 - 使用 AI 进行物理计算
  • 简单易用 - 几行代码即可创建游戏
  • 2D/3D 支持 - 自动适配维度
  • 档位调节 - A/B/C 三档性能调节
  • 模块化设计 - 子弹、球、云、蒸汽
  • 参数可调 - 重力、地面位置、反弹系数等

安装: pip install NexusFine

快速开始: from nexusfine import NF a = "SK-XXXXXXX" NF(a) # X轴 NF(a) # Y轴 NF(a, a) # 构建 2D 系统 NF("Game.exe") # 启动游戏

物理对象使用: from nexusfine import NF, NB, NC

子弹 - 2D 直线运动 + 重力

bullet = NF.Bullet(x=0, y=10, vx=5, vy=0, gravity=300) bullet.update(0.016) print(f"x={bullet.x:.2f}, y={bullet.y:.2f}")

球 - 2D 弹跳运动(可自定义参数)

ball = NB.Ball(x=0, y=5, radius=10, gravity=300, bounce=0.8, ground_y=600) ball.vx = 3 ball.update(0.016)

云 - 2D 飘动

cloud = NC.Cloud(x=0, y=5, vx=0.5, vy=0.1) cloud.update(0.016)

蒸汽 - 3D 扩散(由 NF 提供)

steam = NF.Steam(x=0, y=0, z=0, rise_speed=0.5, diffusion=0.3) steam.update(0.016)

模块说明: NF - 子弹,2D (X, Y),提供 Bullet()、Steam() NB - 球,2D (X, Y),提供 Ball() NC - 云,2D (X, Y),提供 Cloud() NS - 配置系统,提供档位调节功能(config / apply)

物理对象参数: Bullet(x=0, y=0, vx=5, vy=0, gravity=300)

  • x: 初始X位置,默认 0
  • y: 初始Y位置,默认 0
  • vx: 水平速度,默认 5
  • vy: 垂直速度,默认 0
  • gravity: 重力加速度(像素/秒²),默认 300

Ball(x=0, y=0, radius=10, gravity=300, bounce=0.8, ground_y=600)

  • x: 初始X位置,默认 0
  • y: 初始Y位置,默认 0
  • radius: 球半径,默认 10
  • gravity: 重力加速度(像素/秒²),默认 300
  • bounce: 反弹系数,默认 0.8
  • ground_y: 地面Y坐标,默认 600

Cloud(x=0, y=0, vx=0.5, vy=0.1)

  • x: 初始X位置,默认 0
  • y: 初始Y位置,默认 0
  • vx: 水平速度,默认 0.5
  • vy: 垂直速度,默认 0.1

Steam(x=0, y=0, z=0, rise_speed=0.5, diffusion=0.3)

  • x: 初始X位置,默认 0
  • y: 初始Y位置,默认 0
  • z: 初始Z位置,默认 0
  • rise_speed: 上升速度,默认 0.5
  • diffusion: 扩散幅度,默认 0.3

更新方法: 所有物理对象都有 update(dt=0.016) 方法

  • dt: 时间步长,默认 0.016(60帧/秒)
  • 返回: {"x": x, "y": y, ...}

使用示例: 子弹: from nexusfine import NF a = "SK-XXXXXXX" NF(a); NF(a); NF(a, a) bullet = NF.Bullet(x=0, y=10, vx=5, vy=0) for i in range(10): bullet.update(0.1) print(f"x={bullet.x:.2f}, y={bullet.y:.2f}")

球: from nexusfine import NB a = "SK-XXXXXXX" NB(a); NB(a); NB(a, a) ball = NB.Ball(x=0, y=5, radius=10, gravity=300, bounce=0.8, ground_y=600) ball.vx = 3 for i in range(10): ball.update(0.1) print(f"x={ball.x:.2f}, y={ball.y:.2f}")

蒸汽(3D): from nexusfine import NF a = "SK-XXXXXXX" NF(a); NF(a); NF(a); NF(a, a, a) steam = NF.Steam(x=0, y=0, z=0, rise_speed=0.5, diffusion=0.3) for i in range(10): steam.update(0.1) print(f"x={steam.x:.2f}, y={steam.y:.2f}, z={steam.z:.2f}")

高级功能(档位调节): from nexusfine import NF, NS a = "SK-XXXXXXX"

方式1:传统方式

config = NS.config("NF", mode="A", duration=20) NF.set_mode("A") NF("x_axis") NF("y_axis") NF(config, "x_axis", "y_axis")

方式2:直接应用(v0.2.5+ 新增)

NS.apply(NF, mode="C", duration=60) NF("x_axis") NF("y_axis") NF("Game.exe")

档位说明: A - 高性能模式(精度高) B - 平衡模式(精度适中) C - 省电模式(速度快)

依赖: Python >= 3.6 requests >= 2.25.0

更新日志: v0.2.6 (2026-06-20)

  • 物理参数可配置(重力、地面位置、反弹系数等)
  • Steam 扩散参数可调(上升速度、扩散幅度)
  • 新增 NS.apply() 直接应用档位
  • 导出简化,只保留 NF/NB/NC/NS
  • 文档修正:NS 为配置系统,蒸汽由 NF 提供

v0.2.3 (2026-06-20)

  • 新增物理对象:Bullet、Ball、Cloud、Steam
  • 新增 update() 物理更新方法
  • 完整物理引擎功能

v0.2.0 (2026-06-20)

  • 新增档位调节功能
  • 新增 NS 蒸汽模块(3D)
  • 优化代码结构

v0.1.0 (2026-06-19)

  • 首次发布

许可证:MIT License

作者:bengtiaotiao

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nexusfine-0.2.7.tar.gz (5.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nexusfine-0.2.7-py3-none-any.whl (5.7 kB view details)

Uploaded Python 3

File details

Details for the file nexusfine-0.2.7.tar.gz.

File metadata

  • Download URL: nexusfine-0.2.7.tar.gz
  • Upload date:
  • Size: 5.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for nexusfine-0.2.7.tar.gz
Algorithm Hash digest
SHA256 143bdff2c303ce8ec65e63ef9da1d0146279acc3eb293995971ca5ea24d919a7
MD5 3b26af8fd5d5965f76b8ed3e8b6c0d11
BLAKE2b-256 fdbdd54cd1e0d26f4465b5b0ebb53663f3d72895ac87fb4c0c35ada421b0760a

See more details on using hashes here.

File details

Details for the file nexusfine-0.2.7-py3-none-any.whl.

File metadata

  • Download URL: nexusfine-0.2.7-py3-none-any.whl
  • Upload date:
  • Size: 5.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for nexusfine-0.2.7-py3-none-any.whl
Algorithm Hash digest
SHA256 bd33c3590130ad49d34d9e25676b8789841da1903b2b5936bda6c0440caa3819
MD5 a1a70bf5162403bf1d33e498f6daf75c
BLAKE2b-256 9921eae7d5eb1b30f4a9dd1ae5f52f4b672fbfa50100794bb4558b0dc663d246

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page