プレイ日記
Soybeanman 2013niconico
砂のシュミレーションで、IF減らしたらFPS上がるかなーと思ったら、FPS2下がったよこんちきしょぉ
9そうだね
プレイ済み
返信[1]
親投稿
ツララ LongIceSword
IF文で条件式に該当しないときは、THEN以下の文をまるごとすっ飛ばしてくれるので B=BUTTON():X=X-(B AND 4)/4+(B AND 8)/8 みたく論理式の加減算で書くより速かったりするんですよね。 条件式も複数の式を X==0||Y==0||X==15||Y==15 みたく繋げてるときは、左から順番に評価して、FALSE判定した時点でその後の式をすっ飛ばしてくれるらしいですし。
2そうだね
プレイ済み
返信[2]
親投稿
Soybeanman 2013niconico
さらにIFを減らしたらFPSが16から14になったよ…なんなんだよ…
0そうだね
プレイ済み
返信[3]
親投稿
Soybeanman 2013niconico
つららさん説明ありがとうございます。 初めて知りました。勉強になります!
2そうだね
プレイ済み
返信[4]
親投稿
ツララ LongIceSword
自分もIF文を論理式の加減算でも書けるのを知った時はENDIFの場所考えなくても良いからこれラクだわ〜って思って多用したりしてたんですけど、配列使う様になってから添字の範囲外エラーで苦しんで、やっぱりIF文いいなって思う様になったんですよね。 ぐるっと一周回って戻って来たみたいな。
2そうだね
プレイ済み
返信[5]
親投稿
イスターリャ arduinotexter
ORでは飛ばしてくれないのに||では飛ばしてくれるんだ…… 判定に関数を入れたらそちらが先に処理されるのだろうか? 今度実験しよう
2そうだね
プレイ済み
返信[6]
親投稿
||と&&にはスキップがあるのよね
2そうだね
プレイ済み
返信[7]
親投稿
Oskar oskar_liebig
たぶん、こういうIFなら取ったほうがいい。 FOR I=0 TO 9999 IF I==4126 THEN X[I]=50000 ELSE X[I]=2*I NEXT 'v 'v FOR I=0 TO 9999 X[I]=2*I NEXT X[4126]=50000
0そうだね
プレイ済み