This topic is related to AS2.0 .
最近我发现一个非常奇怪的返回值丢失的问题,情况是这样的:
我有一个类A,它继承自MovieClip,并在构造函数中调用了stop()方法。一切看起来都很正常,但是任何创建A的实例的方法的返回值都会丢失。
代码是这样的:
在A.as文件内:
class A extends MovieClip{
function A(){
stop();
}
}收到通知奥运期间可能会有互联网大检查,未备案的域名可能会被关闭解析
miian.com 这个域名由于是在国内的新网注册的,可能会受到影响,如果不能访问请尝试 dobbee.com ,着两个域名指向都是本站,没有任何区别。
btw: dobbee是我的狗的名字
自从上一个RigidParticle的demo发布以来,我重新整理了它的架构,并完善了它的算法。现在终于有新东西可以看了。
主要的改进是在这些方面:
不过新的架构也有缺点,目前它还无法和普通粒子发生互动,而摩擦力的计算上还没有完全解决。

这个3D引擎能够从obj文件中载入模型,而许多3D工具软件都能够输出obj格式,所以你可以在其它软件中建模,然后拿到这个引擎中使用。
我的3D汽车运动模拟就是在这个引擎的基础上建立的。
这个引擎最早是一个as1.0写成的开源3D引擎,我把它用2.0重写,然后增加了许多新的功能。这个引擎最大的特点是它是一个以矢量图形为基础的3D引擎。与其他大多数以点阵图形为基础的引擎不同。这个引擎更适合运行在flash 8.0以前的版本上。flash8之后引入了位图运算,所以更适合用点阵图形的引擎来做。
你可以看到这个引擎的隐藏面消除还有很多问题,这是因为大多数隐藏面消除的算法都是针对点阵图形引擎的,所以在这里我只用了一个很简单的方法来做隐藏面消除,于是在很多模型上的表现并不好。但是如果你能够在模型上多华一些功夫来细化,你一样可以得到很完美的结果。作为例子,你可以载入house.obj看看,这是我专门优化过的一个模型,你可以看到他的表现相当好,几乎看不到什么破绽。

这是汽车运动模拟试验的3D版本,它们使用相同的刚体运动引擎(这个刚体引擎本身就是3D的,它内部使用三维向量),只是这个用三维的形式来表现。
这是我一年多以前做的一个小程序,它能够比较准确地模拟汽车的运动,为了达到这个目的,我专门开发了一个模拟刚体运动的引擎。
这个模拟汽车的运动完全是从力开始计算出来的,加速度、速度、力矩、角速度等等完全是经过计算而得到的。所以它的运动方式几乎和真车一样,看起来相当真实。加速时,轮子推动汽车前进,转弯时,车轮与地面的摩擦力则提供整个汽车的向心力。
但是这个刚体引擎并不完整,它没有碰撞和连接、约束的处理,我曾尝试在引擎中加入这些,但是发现很复杂,所以后来就暂时搁置了这个项目。
For english version of this page, click here.
APE是一个用AS3.0编写的2D物理引擎,它以粒子系统为基础,你可以通过系统提供的粒子与弹簧来连接成你想要的物体。所以他不需要引入复杂的刚体运动的计算,也可以较好的模拟复杂物体的运动情况。这个方法虽然显著的减少了系统的复杂程度,但是另一方面,由于制作复杂物体需要许多粒子与弹簧做连接,而flash播放器本身效率就不高,所以在有些情况下系统速度会比较慢。
所以我产生了把基本的刚体运动引入这个引擎的想法,让它可以更高效率的模拟一些简单的刚体运动。例如一个方盒子的运动情况。实际上APE已经有方形的粒子模型,可以很好的处理碰撞与弹簧约束的情况,但是APE的RectangleParticle模型不能处理旋转,因为APE把它当作一个粒子来看,所以忽略了对它的旋转处理。我这个RigidParticle所做的,就是把这个方形粒子在受力时的旋转加速度考虑进去,让它更像一个真实世界的盒子。
下面就是RigidParticle的演示,里面没有用任何的弹簧约束,而全部都是RigidParticle在表演。
原文件可以在 这里找到。
最新版本 1.1 build1248
Blogger最近可能放弃了www2.blogger.com这个api地址,所以BlogSync对blogger的操作最近失效了。
现在我已经改到正确的api地址,blogsync可以继续使用了。