enchant.jsのバウンスの式

0
    enchant.jsのSpriteは、オフセット座標の基準点が左上なのに、拡大縮小・回転の基準点はオブジェクトの中心。通常はたいした問題じゃないけど、拡大縮小する場合の当たり判定には注意。
    オブジェクトのX座標=x
    オブジェクトの幅=w
    オブジェクトのサイズ=s
    ステージの幅=Wのとき

    右の壁のバウンスX1=W-((w*s-w)/2+w)
    左の壁のバウンスX2=(w*s-w)/2;

    従ってxの範囲は
    (w*s-w)/2<=x<=W-((w*s-w)/2+w)


    めんどくさいので、いっそGroupに入れ子にして中央配置してしまえば計算は楽だが、Group自体はopacity等の表示に関するプロパティがないので、これはこれで注意が必要。バージョンアップでSpriteのcontainerクラスができることを強く望む。



    コメント
    コメントする








       

    selected entries

    categories

    archives

    recent comment

    recommend

    profile

    BOOKS

    links

    search this site.

    others