DHQの雑記とか

mugen関連でいろいろと

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
  1. --/--/--(--) --:--:--|
  2. スポンサー広告

ceilで整数が切り上げられる現象の対策

一部の数値は、整数であるにもかかわらずceilをかけると1増えることがあります。
その現象の簡易的な対策方法。


floatの仕様で、一部の整数をfloatに入れた場合、
60.00000001(便宜上の表記で、実際の数値とは異なります)のように、
60.0よりもわずかに大きくなります。
この数字に対してceilをかけると、60よりも大きいわけですから、61が出力されます。
60ちょうどにしたつもりでいるところにceilをかけているのが問題なので、
小さな数字を引いてからceilをかけることで、回避できることがあります。
具体的には
ceil(60*fvar(0))
から
ceil(60*fvar(0)-0.0001)
に書き換えるなど。
ただし、値が0.0001でも動くと支障をきたす場合や、
mugenのfloatの有効数字よりも小さな値を引いた時にどうなるかについては動作確認が取れていないので、
実装の際にはご注意下さい。
正直なところ自分でも信用しきれていない部分があるので、
自作物には、ダメージのように値が1ずれたとしても致命的な壊れ方をしないことが
わかっている箇所にしか使わないつもりです。信頼度としてはその程度。

  1. 2012/12/20(木) 01:06:57|
  2. キャラ製作の豆知識
  3. | トラックバック:0
  4. | コメント:0
<<5030~5062番animのスプライトの選び方について | ホーム | 部分無敵と押し出し判定用ヘルパーについて>>

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://dhq.blog137.fc2.com/tb.php/84-b1639ad8
この記事にトラックバックする(FC2ブログユーザー)

プロフィール

DHQ

Author:DHQ

最新記事

最新コメント

最新トラックバック

月別アーカイブ

カテゴリ

未分類 (0)
お知らせ (2)
mugenの仕様 (16)
mugenのAI (3)
キャラ製作の豆知識 (31)
動画について (32)

FC2カウンター

検索フォーム

RSSリンクの表示

リンク

このブログをリンクに追加する

ブロとも申請フォーム

この人とブロともになる

QRコード

QR

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。