更改日志¶
Pymunk6.6.0(2023-11-02)¶
Experimental Batch API
此版本添加了(实验性的)批处理API,可用于在一次调用中高效地获取实体属性,如位置和空间中所有实体/碰撞的碰撞数据。这样,调用底层c库(Chipmunk2D)的开销最小,在某些情况下可以实现巨大的加速。
更改:
带有批处理API的新的pymunk.Batch模块。
批处理API基准
Colors.py示例的批处理版本
改良型
改进构建/打包
Pymunk6.5.2(2023-10-22)¶
Python 3.12
这是一个次要版本,主要针对CPython3.12的发布轮。
更改:
为CPython3.12构建轮子
文档改进
添加了实验环境PYMUNK_BUILD_SLIM来为WASM/PYODIDE瘦身。
添加了在酸洗/复制时循环引用的断言
修复了批处理API基准中的内存泄漏
Pymunk6.5.1(2023-06-26)¶
Fix source dist
一些定制的CFFI c标头和源文件现在包含在源代码分发中,因此可以完全从它构建Pymunk。
更改:
在源代码dist压缩文件中包含pymunk自定义c文件
Pymunk6.5.0(2023-06-23)¶
Repeatable pickle/unpickle of simulation!
当酸洗时,内部碰撞状态现在也将被酸洗,这意味着未酸洗的空间将表现为原始的行为,即使在酸洗期间正在进行的碰撞中也是如此。如果要重放模拟,这将非常有用。
更改:
内部碰撞状态的酸洗
合并了最新的上游Chipmunk版本
改进的类型提示
改进的文档
Pymunk6.4.0(2022-11-20)¶
Support Pyglet 2 debug drawing!
这是一个较小的更新,主要更改是对最近发布的Pyglet 2的支持。同时,对Pyglet 1.5.x的支持已被弃用,当将pyglet_util与pyglet 1.x一起使用时,将记录有关该弃用的警告。另一个较大的变化是,这些示例已经被移到了pymunk的子包中,因此即使在从轮子上安装了Pymunk的情况下,也可以很容易地运行它们。
更改:
支持使用Pyglet 2.0调试绘图
不建议使用Piglet 1.5,并将在未来的版本中删除。
将示例作为pyumnk.Examples包移动到发行版中。
改进的类型提示
Pymunk6.3.0(2022-11-04)¶
Build wheel for CPython 3.11!
这是一个较小的更新,对为CPython3.11构建轮子构建管道进行了更改。一些内部部分也被重写了。
更改:
将回调实现更新为CFFI推荐的方式
改进断言以更早地捕获错误
改进类型提示
为更多目标打造车轮
移除实验体。_id
Pymunk6.2.1(2021-10-31)¶
Build wheel for CPython 3.10!
这是一个较小的更新,对构建管道进行了更改,以构建适用于更多情况的轮子,特别是最近发布的CPython3.10。
更改:
使用pyproject.toml
要求CFFI 1.15以确保轮子在Apple ARM64/M1上制造正常。
单据改进
为更多目标打造车轮
Pymunk6.2.0(2021-08-25)¶
Improved transforms for debug drawing!
此版本包含使用调试绘图转换使用的增强功能,并更新到最新的git版本的Chipmunk。它还包含了一个新的例子,说明如何实现中心重力。
更改:
将Chipmunk更新到最新的Git版本
更新了调试绘图以支持旋转,并修复了约束的缩放
“行星”引力的新例子(从Chipmunk移植)
修复了垃圾收集逻辑中可能出现的角例错误
Pymunk6.1.0(2021-08-11)¶
Transforms for debug drawing!
此版本中的主要改进是现在可以在SpaceDebugDrawOptions对象上设置变换,该对象在绘制任何内容之前应用。这在所有的调试绘图实现中都是有效的,例如,对于pyGame。通过这种方式,可以轻松地实现诸如相机平移之类的功能,从而轻松地调试绘制代码。有关这方面的示例,请参阅新的camera.py示例。
更改:
向SpaceDebugDrawOptions添加了Transform属性。
扩展了转换,允许使用@与另一个转换或Vec2d进行矩阵乘法。
改进了向空间添加对象时的错误处理。
改进了文档。
《Pymunk6.0.0》(2020-12-07)¶
Typehints, dropped Python 2, and Vec2d rework and wrapping upgrade!
这个版本是对Pymunk的一个非常大的更新,有许多突破性的API变化。很可能大多数升级的Pymunk用户需要做一些更改才能工作,但在大多数情况下,这些更改应该是次要的。
亮点-主要变化:
需要使用Python3.6或更高版本。对包括2.7在内的更老的 Python 的支持已被删除。
添加了类型提示。已为所有公共接口添加类型提示。
Vec2d(向量类)已被彻底检修。它现在是不变的子类
NamedTuple
,具有简化的API接口。详情见下文。
Vec2d更改:
Vec2d不再接受具有
.x
和.y
属性,但不支持__getitem__
为[0]
&[1]
在构造函数中。如果您有这样的对象,请重写Vec2d(myobj)
至Vec2d(myobj.x, myobj.y)
。Vec2d现在是不可变的。
移除
__setitem__
)你不能这样做Vec2d(1,2)[1] = 3
不再)。无法设置长度属性。
Vec2d(1,2).length = 10
,而改用Vec2d(1,2).scale_to_length(10)
。移除
Vec2d.get_length
方法(改用Length属性)。移除
Vec2d.rotate()
方法。使用Vec2d.rotated()
取而代之的是。移除
Vec2d.rotate_degrees()
方法。使用Vec2d.rotated_degrees
取而代之的是。无法设置角度属性 (
Vec2d(1,2).angle = 3.14
)。使用Vec2d.rotated()
取而代之的是。移除
Vec2d.get_angle
方法(使用angle
而不是属性)。无法设置
angle_degrees
物业 (Vec2d(1,2).angle_degrees = 180
)。使用Vec2d.rotated_degress
取而代之的是。移除
Vec2d.get_angle_degrees
方法(使用angle_degrees
而不是属性)移除
Vec2d.normalize_return_length
方法(使用Vec2d.length
和Vec2d.normalized()
,或新的Vec2d.normalized_and_length method
)。移除
__iadd__
,__isub__
,__imul__
,__ifloordiv__
和__itruediv__
)。
已删除
__nonzero__
魔法。这在Python3中从来不起作用,也没有包含在任何测试中。已删除
__pow__
和__rpow__
魔法。再也不可能做了Vec2d(1,2)**2
,相反,您需要手动进行计算。已删除
__invert__
魔法。再也不可能做了~Vec2d(1,2)
。已删除
__mod__
和__divmod__
魔法。再也不可能做了Vec2d(1,2) % 2
或divmod(Vec2d(1,2), 2)
。删除了位操作右移位、左移位、或、与、异或。 (
<<
,>>
,|
,&
,^
)。变化
abs(Vec2d(1,2))
返回预期的向量长度,而不是Vec2d(abs(x), abs(y))
。Vec2d现在只支持与长度为2的其他Vec2或元组(序列)相加。
Vec2d现在只支持与其他长度为2的Vec2或元组(序列)的减法。
Vec2d现在只支持整数和浮点数的乘法运算。
Vec2d现在只支持整型和浮点型除法。请注意,不支持反向除法,即
1 / Vec2d(1,2)
。Vec2d现在仅支持地板分割 (
//
)通过整型和浮点型。请注意,不支持反转楼层分割,即1 // Vec2d(1,2)
。改进了Vec2d中的错误检查,当操作员(魔法,如
__add__
)与不兼容的类型一起使用。删除了创建具有空构造函数的零Vec2d的选项。
Vec2d()
应替换为Vec2d.zero()
。制造
Vec2d
的一个子类NamedTuple
。Vec2必须用独立的
x
以及一个y
价值观。Vec2d((1,2))
可以更改为Vec2d(*(1,2))
。Vec2d(Vec2d(1,2))
可以更改为Vec2d(*Vec2d(1,2))
。Vec2d()
可以更改为Vec2d(0,0)
或Vec2d.zero()
。Vec2d(1,2)
不再等于[1,2]
因为它们是不同类型的。(但是Vec2d(1,2) == (1,2)
仍然是正确的)
放松
get_angle_between
,convert_to_basis
,cpvrotate
和cpunvrotate
接受大小为2的元组作为参数,就像Vec2d上的大多数其他方法一样。
一般更改:
add_collision_handler(a,b)
和add_collision_handler(b,a)
将返回相同的处理程序。第132期。形状使用的实体必须在添加形状之前(或同时)添加到空间中。这一更改将帮助Pymunk的用户发现错误,修复旧代码应该是直截了当的。
需要使用Python3.6+。如果您使用的是较旧的Python,请继续使用5.x系列的Pymunk,直到可以升级为止。
Space.add()
和Space.remove()
不再接受对象列表(形状、实体或约束),仅直接接受对象。可以更新现有代码以解压缩参数:space.add(list_of_stuff)
vbl.成为space.add(*list_of_stuff)
。ShapeFilter.ALL_MASKS
和CATEGORIES
更改为静态方法。ShapeFilter.ALL_MASKS
vbl.成为ShapeFilter.ALL_MASKS()
和ShapeFilter.CATEGORIES
几个问题ShapeFilter.CATEGORIES()
。注意:指定颜色时需要4个数字的元组(或使用
SpaceDebugColor
类)。在测试过程中,发现一些演示使用的是3的元组,这在Pymunk 6.0(或更早的版本)中不起作用。返回一个
PointQueryInfo
对象来自Shape.point_query
,而不是前一个(distance, PointQueryInfo)
元组。需要该距离的代码可以从PointQueryInfo.distance
。已删除
pymunk.inf
。使用标准的Pythonfloat('inf')
取而代之的是。已重命名的包
pymunk.constraint
至pymunk.constraints
。导入先前名称的代码应更新为从新名称导入。变化
pygame_util.positive_y_is_up
缺省值为False
。依赖旧缺省值的现有代码应设置所需的值 (True
)。对于新代码,更好的做法可能是使Pymunk模拟的行为像原生的pyGame坐标一样。有关示例,请参见Examples文件夹中的Examples。现在预计,位置函数需要一个
Vec2d
或长度为2的元组已经是元组(或Vec2d
)。以前,通过调用tuple(argument)
。要修复旧代码,只需将参数包装在tuple( ... )
。(注意:由于没有类型检查,长度为2的列表也可以使用,但是不支持该列表,并且可以随时更改。BB
基类更改为NamedTuple
。它们现在必须用来建造left
,bottom
,right
,top
作为单独的论据。回复:
BB
会回来的BB(left=1, bottom=5, right=20, top=10)
而不是(1, 5, 20, 10)
。BB
现在是不可变的。启用新的回调
Constraint
对象,pre_solve
和post_solve
,它可用于在约束的求解器之前或之后运行函数。在上添加了辅助方法
Transform
轻松创建要平移、缩放和旋转的变换。移除了现在未使用的pymunkOptions模块。
更改了自动组合测量的类型
march_*.sample_func
需要长度为2的元组,而不是Vec2d(以提高性能)。第126期。已删除
march_*.segment_func
参数,而是返回一个PolylineSet
结果就是。这允许将来进行优化,并且更易于使用。第126期。添加了代码,使Pymunk在不需要在PyInstaller、py2exe以及可能还有其他捆绑包中进行额外配置的情况下工作。
添加了调试日志以更容易地理解c内存问题。使用logging.DEBUG,因此应该很容易解决。
不太可能影响现有代码的微小更改:
已删除
pymunk.chipmunk_path
。变化
Shape.sensor
类型为bool(来自int)。添加检查以确保已腌渍的对象是由加载它的代码所用的相同的Pymunk版本进行的。内部的酸洗格式可以在主要版本、次要版本和点版本之间进行更改。
格式稍有更改
pymunk.chipmunk_version
版本字符串。小改动以使冲突处理程序起作用 (
begin
,pre_step
.)返回赋值的函数,而不是包装的函数。删除了多余的
*args
和**kwargs
争论到CollisionHandler.__init__
方法。派芒克源代码格式化与黑色和isort。
moment_for_poly()
和area_for_poly()
现在需要长度为2的元组的序列(元组/类似列表的对象)。添加参数的缺省值
point
至apply_force_at_local_point
。删除了自变量的缺省值
apply_impulse_at_world_point
。只需指定point = (0,0)
以模仿旧有的违约模式。添加了许多断言以检查无论何时长度为2或
Vec2d
预计元组的长度为2。工作代码不太可能受到影响,但错误将更容易找到。
幕后:
为了允许添加一些Chipmunk没有的高级功能,用于调用C代码的方法已更改为CFFI API模式。除了更容易扩展外,它还提供了更高的性能。
《Pymunk5.7.0》(2020-09-16)¶
Fix release
此版本包含一系列较小的修复和改进。
更改:
修复了PyInstaller onefile的问题。
改进了Vec2d创建的性能。谢谢米哈伊尔·西敏!
处理长度为0的弹簧的调试绘图。
从空间访问时对实体和约束进行排序。
添加了Space.USE_SPATIAL_HASH函数,以支持使用空间散列作为其空间索引,这可以在存在大量大小相似的对象时提高性能。
修复了Vec2d投影获取元组作为其他参数时的情况。
修复了Vec2d投影的ZeroDivisionError。谢谢穆罕默德·萨阿德·伊本·塞迪克!
修正了Shape.Center_of_Graight属性的返回类型(现在返回Vec2d而不是CDATA)。
修复了安装开发人员依赖项时的问题。
增加了Chipmunk坦克的例子(可以在Examples文件夹中找到)。
改进了文档。
当心!Pymunk的一个重大更新正在进行中,将以Pymunk6.0的形式发布。它将包含很大的变化,其中一些非常违反API,而且它还将放弃对Python2的支持。
Pymunk5.6.0(2019-11-02)¶
Fix to avoid incompatible CFFI version
此版本的主要目标是确保在通过pip安装Pymunk时安装兼容版本的CFFI。不幸的是,在Linux的CFFI 1.13.1上有一个问题。(更高版本和更早的版本可以正常工作)
更改:
添加了CFFI不能为1.13.1的要求(因为1.13.1不起作用)。
更新CFFI定义以防止最新CFFI中的弃用警告。
将普通属性添加到仲裁器对象。
从提交的代码中删除已编译的文档。
从Travis和Appveyor配置中删除了CPython3.4的构建/测试,因为它不再受支持。
更新小程序示例以使用小程序1.4。
修复了平台示例中的小问题。
改进了文档。
Pymunk5.5.0(2019-05-03)¶
Updated Chipmunk version, FreeBSD, Android/Termux support and more!
此版本包含许多改进。Chipmunk被更新到最新版本,然后一些未合并的PR被合并。(Chipmunk的GIT回购已经死了,所以在手动审核后,Chipmunk将包括未合并的PR)。另一个重大改进是,Pymunk现在可以在免费BSD上运行。它还在Android上的Termux上进行了测试,并对安装过程进行了一些改进。还包括一些较小的修复程序。
更改:
将Chipmunk更新为7.0.2+未合并PR
可以在FreeBSD上安装和运行Pymunk
可以在Android上的Termux上安装和运行Pymunk
修复带有半径的多边形的调试图形
改进了PYGAME上的片段调试绘制
修复在未安装车轮包的情况下安装时的问题
新的约束演示
改进的文档
Pymunk5.4.2(2019-01-07)¶
Fix for chipmunk.dll load troubles on windows
此版本修复了Windows上的一个问题,该问题使chipmunk.dll文件依赖于libwinpline-1.dll,由于新的构建设置,在Pymunk 5.4.1中发生了该问题。修复意味着目前在Windows上禁用线程解算器。在实践中,这应该不是一个大问题,线程解算器在运行Windows的桌面上的性能优势尚不清楚。
更改:
在Windows上禁用线程解算器。
Pymunk5.4.1(2018-12-31)¶
Improved packaging
这一版本包括对Pymunk的包装进行了一些修复。一个允许为Conda构建的修复程序,以及在Linux上构建二进制轮子的一些更改。
更改:
修复以帮助Pymunk使用冰柜,如CX_FREAK。
更好的车轮,现在它们包含了正确的标签
在编译Chipmunk时使用自定义CFLAGS修复问题
好好享受吧!
Pymunk5.4.0(2018-10-24)¶
Fix support for MacOS 10.14
主要修复程序是允许在最新版本的MacOS上安装Pymunk。此版本还包含一系列次要修复,并像往常一样对文档、测试和示例进行了改进。
更改:
在较新版本的MacOS上,只能在64位模式下编译(32位已弃用)
改进的文档、示例和测试
在传递Vec2d而不是元组时修复Moment_for_*
修复在步骤期间向空格添加或删除多个对象时的大小写。
在Windows上允许线程求解器。
使用msys mingw在Windows上编译Chipmunk(以前的解决方案已弃用)。
好好享受吧!
Pymunk5.3.2(2017-09-16)¶
Fixes ContactPointSet updating in Arbiter
此版本包含对仲裁器上的ContactPointSet的修复。有了这个修复,它可以在碰撞回调期间更新联系人,例如更新正常,就像突破游戏示例中一样。
更改:
修复仲裁器.联系人_点_集
Pymunk5.3.1(2017-07-15)¶
Fix for Pycparser 2.18
此版本包含对最近发布的Pycparser 2.18的修复,该版本由Pymunk通过使用CFFI间接使用。
更改:
修复了使用Pycparser 2.18时中断的回调。
Pymunk5.3.0(2017-06-11)¶
Pickle and copy support!
本版本新增了对Pickle(保存和加载)和复制的支持。这一点我已经想了很长时间了,当我在Github上收到Rick-C-137对它的功能请求时,我进行了最后的努力。看见 examples/copy_and_pickle.py 举个例子。
该功能本身非常易于使用,Pickle的工作方式与预期不谋而合,而Copy则是一个简单的方法调用。但是,请注意,对带有回调函数的PICLE空间的支持取决于PICLE协议版本。最早的PICLE协议对PICLE功能的能力有限,因此要获得最大的功能,请尽可能使用最新的PICLE协议。
更改:
泡菜支持。大多数对象都可以进行酸洗和非酸洗。
复制支持和方法。大多数对象现在都有一个Copy()函数。同样,标准库的复制深度复制()函数也可以正常工作。
修复了BB.Merge和其他BB功能中的错误。
改进了文档和测试。
新的Kivy示例(如前面的新闻条目所述)。
我希望你会喜欢它!
Pymunk5.2.0(2017-03-25)¶
Customized compile for ARM / Android
此版本的主要原因是ARM/Android交叉编译支持,这要归功于可以覆盖c编译器和链接器。在这个版本发布后,不需要修补Pymunk代码,就可以为Pymunk创建一个Python-for Android构建食谱。它也应该更容易为其他环境构建。
变化
允许使用CC、CFLAGS、LD和LDFLAGS环境变量覆盖编译器和链接器,从而允许定制Chipmunk的编译。(通常您不需要这个,但在某些情况下它很有用)
使用pyglet_util修复有时损坏的多边形绘制。
添加功能,允许您设置形状的质量,并让Pymunk自动计算身体质量和力矩。
不要对32位和64位版本使用单独的库命名。(应该不会有任何明显的效果)
Pymunk5.1.0(2016-10-17)¶
A speedier Pymunk has been released!
此版本是作为 基准 在Pymunk5.0和4.0上完成。Pymunk 5.0在PyPy上已经非常快了,但在CPython中有一些回归。事实证明,这一变化的一个重要部分是Vec2在两个版本中的处理方式。Pymunk 5.1包含优化的代码,以帮助缩小这种差异的很大一部分。
变化
由于改进了Vec2d的处理,相比于Pymunk 5.0,性能有了很大提高。
文档方面的改进。
Shape.point_Query的返回类型中的微小更改。现在,它正确地返回了文档中所写的元组(距离,信息)。
将Poly.create_box拆分为两个方法Poly.create_box和Poly.create_box_bb,以便更清楚地了解发生了什么。
我希望你会喜欢这个新版本!
Pymunk5.0.0(2016-07-17)¶
A new version of Pymunk!
这是《Pymunk》的一次大发行!正好赶在Pymunk明年10岁生日之前!
在Windows上支持64位Python
更新为使用Chipmunk7,包括许多重大改进
更新为使用CFFI进行包装,改进了开发和包装(车轮,耶!)
带matplotlib绘图帮助的新util模块(带有示例Jupyter笔记本)
支持自动生成几何图形。可用于可变形地形之类的东西(包括示例)。
过时的子模块pymunk.util。
许多较小的改进
新版本还在Travis和Appveyor上进行了测试,以确保良好的代码质量。
我希望你会喜欢这个新版本!
Pymunk4.0.0(2013-08-25)¶
A new release of pymunk is here!
这一版本绝对是一个里程碑,金龟子已经5岁多了!(第一版于2008年2月发布,用于PyWeek比赛)
在这个版本中,已经对Pymunk做了许多改进。它包括了对侏儒的调试绘图(在3中引入了对pyGame的调试绘图),更新了的Chipmunk版本,以及由此产生的API调整,更多更好的例子,以及一如既往的整体润色。
在新的Chipmunk版本(6.2测试版)中,碰撞检测的行为可能会略有不同,因为它使用的算法与早期版本不同。新的算法意味着现在将检测到段到段的冲突。如果您有一些不想冲突的段,则可以使用传感器属性或自定义冲突回调函数。
要查看新的pymunk.pyglet_util模块的运行情况,请查看pyglet_util_demo.py示例。它有一个类似于pyGame_util的接口,但由于pyglet和pyGame之间的不同而有所不同。
对API进行了一些添加和更改。现在,在模拟步骤中(例如,在回调中)添加和删除物体和形状是合法的。实际移除将安排在模拟步骤完成后立即进行。其他更改包括更改形状的主体,获取形状的BB,以及创建具有空体的形状。在实体上,现在可以检索附加到它的形状和约束。
此版本已经过测试,并在CPython2.5、2.6、2.7、3.3和PyPy 2.1上运行。至少已经在以下平台上运行了一次单元测试:Windows上的32位CPython,Linux上的32位和64位CPython,以及OSX上的64位CPython。在上述平台之一上运行的PyPy 2.1。
变化
新的DRAW模块帮助进行侏儒原型制作
更新了Chipmunk版本,增加了新的冲突检测代码。
添加、改进和修复损坏的示例
可以在形状上切换主体
使在模拟步骤中添加和删除实体成为合法操作
将造型和约束属性添加到实体
可能得到一个形状的BB,他们现在允许构造函数中的空体
添加了多边形的半径属性
将Poly.get_Points重命名为Get_Verits
已将Segment.a和Segment.b属性重命名为UNSAFE_SET
添加了使用pyinstaller的示例
修复了报告的许多错误
改进不同地方的文档
一般抛光和清理
我希望你会喜欢这个新版本!
Pymunk3.0.0(2012-09-02)¶
I'm happy to announce pymunk 3!
这一版本比起之前的2.x版本来说,是一个明显的改进。它的特点是有一个大大改进的文档,一个更新的Chipmunk版本和附带的API调整,更多和更酷的例子。此外,为了帮助进行快速原型制作,Pymunk现在包括了一个新的模块pymunk.pyGame_util,可以在电子游戏表面上绘制大多数物理对象。查看新的pyGame_util_demo.py示例,以了解它的工作原理。
另一个新特性是改进了对在非调试模式下运行的支持。现在可以将编译标志传递给setup.py以在发布模式下构建Chipmunk,并且有了一个新的模块,可以用来关闭Chipmunk的调试打印。
此版本已经过测试,并在CPython2.6、2.7、3.2上运行。至少已经在以下平台上运行了一次单元测试:Windows上的32位Python,Linux上的32位和64位,以及OSX上的32位和64位。
这个版本也已经在PyPy 1.9上进行了测试,所有测试都通过了!
变化
添加了几个新的有趣的例子
新的DRAW模块可帮助进行电子游戏原型制作
新的pymunkOptions模块允许禁用调试
在OSX上测试,包括编译的dylib文件
大量扩展和修改的文档和主页
Chipmunk的最新进展
较小的API更改
一般抛光和清理
闪亮的新域名:www.pymunk.org
我希望你会喜欢它!
Pymunk2.1.0(2011-12-03)¶
A bugfix release of pymunk is here!
这个版本中最明显的变化是,现在的源代码版本包含了所有这些内容,包括示例和Chipmunk源代码。:)其他修复是Body的新速度限制属性,以及一些已移除的方法(移除它们的原因仍然是相同的版本:无论如何,您都会收到调用它们的异常。删除应该不会影响正常运行的代码)。注意,所有用户都应该通过将输入参数设置为None来创建静态实体,而不是使用无穷大。Inf将在即将发布的版本中删除。
变化
将pymunk.inf标记为不推荐使用
为车身添加了速度限制属性
修复了64位Python上的错误
已使用Python2.5重新编译chipmunk.dll
更新的Chipmunk来源。
Vec2d中获取整型元组的新方法
删除了旋转和调整散列大小的方法
从示例/测试中删除了pymunk.init调用
更新了创建静态实体的好方法的示例/测试
祝你玩得开心!
Pymunk2.0.0(2011-09-04)¶
Today I'm happy to announce the new pymunk 2 release!
这一版本中的新玩意主要来自更新后的Chipmunk库。现在身体可以睡觉了,有了一个新的数据结构来保存对象和其他更小的改进。更新的版本号主要来自于新的睡眠方法。
版本中的另一项新功能是一些简化,你现在不需要自己初始化金龟子,这是在导入时自动完成的。另一个很酷的特性是,Chipmunk在最新的PyPy源代码上通过了所有的单元测试,我认为这是一件很棒的事情!我还没有时间做任何性能测试,但PyPy声称ctype库比cpython有了改进。
注意,这个版本并不是完全向后兼容的,一些细微的调整将是必要的(主版本号增加的原因之一)。
与上一版本相比的更改:
移除了init pymunk方法,它在导入时自动完成
支撑睡梦中的身体。
更新到最新版本的Chipmunk
更多API文档,更多单元测试。
现在仅依赖于Windows上的msvcrt.dll。
消除了对SetupTools的依赖
对其他API的次要更新,添加了一些缺少的属性和方法。
Pymunk1.0.0(2010-07-16)¶
Pymunk0.8.3(2009-07-26)¶
Pymunk0.8.2(2009-04-22)¶
Pymunk0.8.1(2008-11-02)¶
《Pymunk0.8》(2008-06-15)¶
在Pypi上首次公开发布。
Pymunk0.1(2007-08-01)¶
第一次公开发布。在PyWeek游戏竞争论坛上,后来在我们的PyWeek 5中使用。