【CF2.5】Clickteam Fusion/Multimedia Fusion 21

レス数が950を超えています。1000を超えると書き込みができなくなります。
2020/06/25(木) 13:46:32.68ID:4WaRMjS2
汎用ゲームエディター『Multimedia Fusion 2』及び、『Clickteam Fusion 2.5』シリーズに
関する情報、技術、雑談、質問などに使いましょう。

■前スレ
【CF2.5】Clickteam Fusion/Multimedia Fusion 20
https://mevius.5ch.net/test/read.cgi/gamedev/1554114947/

■参考リンク
・Clickteam本家
http://www.clickteam.com/
・Multimedia Fusion 2シリーズ日本語版公式サイト
http://www.clickteam.jp/
・Multimedia Fusion 2 wiki
http://wikiwiki.jp/mmf2/
・mfaアップローダ
ttp://ux.getuploader.com/mmf/
・『Multimedia Fusion2』避難所
http://jbbs.livedoor.jp/computer/43067/
2021/08/07(土) 13:36:15.68ID:yqYZRmD7
>>885
結局視線のレーザービームを視界になる扇部分の角度だけループで照射させる事で落ち着いたけど
ループ使ってなので常時は負荷の問題が出てきそうかな。

>>887
それは抜きたいアクティブオブジェクトのエフェクトを減算に指定すればいい
2021/08/07(土) 17:17:35.93ID:FiTwp0+x
>>887
いわゆるグラフィックソフトみたいなマスク機能は無いみたいだね
でもレイヤーを個別に用意して、レイヤー事態に比較(暗)とかのエフェクトを掛けて
マスク画像のアルファ部分だけを白塗りして最前面に出せば白は無視されるからマスクと同じことできるよ
プレイヤーだけに柱の陰が落ちたり、遠いブロックを一色で塗りつぶしたりの表現ができる
2021/08/07(土) 17:44:20.48ID:W9owJpOV
格ゲーのようなヒットストップを実現するにはどうするのか・・
2021/08/07(土) 18:18:57.22ID:FiTwp0+x
>>890
ヒット時に止めたいフレーム数を何かに入力
数字が0より上なら毎フレーム数字が1減少
数字が0より上ならオブジェクトが停止、0で再開
これでいけるよ
2021/08/07(土) 22:07:04.82ID:zkL32mSl
>>887
これって、2つのオブジェクトが重なった部分だけ背景が透過されてみえる効果のことを指しているんで
しょうか?初心者すぎてすみません
2021/08/08(日) 01:53:51.24ID:2v3PNJpH
グローバル変数はインデックス1から始まるのに
通常変数はインデックス0から始まるのが納得できない
2021/08/08(日) 12:41:44.18ID:iSFB8+i/
数字は合わせて欲しいよねぇ
アニメーションフレームだって0開始か1開始で統一して欲しい
2021/08/08(日) 13:46:43.98ID:vRiLWgGn
いろいろ試してみたがレイヤーを3枚用意し加算レイヤー(上)と減算レイヤー(中)通常レイヤー(下)を
重ねるとマスクらしきことは出来た

けど複雑すぎてとても手軽に使えないな
手軽に重ねるだけで使えるマスクオブジェクト欲しい
2021/08/08(日) 15:18:59.41ID:0hHhc4dC
テキスト文字を表示させるのに
「文字列」「フォーマットテキスト」「リッチエディットオブジェクト」の3種がデフォでありますが
どれもプロパティに背景色の設定があるのに
色を指定しても反映しません
文字は白、背景は黒みたいにしたいのですが
どなたかわかりませんでしょうか
2021/08/08(日) 15:41:11.08ID:vRiLWgGn
え?そんなことあるの?

まさか「表示オプション」のRGB係数を変えてないよね?
「テキストオプション」の「色」を変えれば
普通に反映されると思うよ
2021/08/08(日) 16:09:35.64ID:0hHhc4dC
>>897
たぶんテキスト文字と勘違いされてると思います
私が変えたいのは背景です
2021/08/08(日) 17:08:32.43ID:iSFB8+i/
エディター上だと背景色表示されてるのに
実行すると透明になるね
こりゃ不具合なんじゃないかな
2021/08/08(日) 17:39:41.30ID:xaAx96dT
>>896
文字列オブジェクトのプロパティは896さんが思っている機能と違い、文字列オブジェクトを動かす
ときに背景をバッファに保持するか指定色で塗りつぶすかの指定です
同様のプロパティはアクティブオブジェクトにもあります
なので文字列オブジェクトで背景色を変えたいときはアクティブ背景オブジェクト等と併用して
みては如何でしょうか

リッチエディットは確かにプロパティ変えても反映されませんでしたが
アクションーコントロール−背景−文字列から色を変更で変えることができました
ここに例えば "255,173,91" と指定してやると背景がオレンジ色になります

フォーマットテキストは使い方よくわからず
2021/08/08(日) 18:11:40.34ID:0hHhc4dC
>>899
>>900
確認してもらえてありがとうございます
仕様について了解です
最初から透過されてるので背景とセットで色付けすることにします
ありがとうございました
2021/08/11(水) 14:20:10.39ID:WmxP7lMd
フレーム上でのデータはフレーム移動すると消えちゃうよね?
フレームが100個あってその全部にオブジェクトAがあって
オブジェクトAの変数をフレーム移動しても保持したい場合ってini使わない方法でないかな
グローバルイベントだと変数が足りなくて
2021/08/11(水) 15:06:06.90ID:F2HQhV4k
グローバルオブジェクトにチェックしたらいけるよ
2021/08/11(水) 17:55:46.20ID:sJcIi6D7
>>903
?!
ありがとう
こんなあっさり解決するなんて
wikiにないわけだ
2021/08/21(土) 01:54:51.43ID:7Jxehhe2
オブジェクトの重なり判定の反転ってありますよね
あれって両方のオブジェクトが最低一つ作成されて初めて有効になるんですか?
AがBに重なっていない、でBの開始時作成をオフにすると条件が無効になってしまいます
2021/08/21(土) 21:39:46.18ID:azUso+Zb
>>905
その通りですね。
もしゲーム的にどちらかが全く存在しなくなるようなら
画面外にダミーを置いておくと良いでしょう。

数を数えたり、他のオブジェクトとのペアリングで困るなら
衝突判定をオブジェクトグループで記述しておいて、
画面外に同じオブジェクトグループを持つダミーを置いておくのも手です。
2021/08/22(日) 16:16:49.83ID:cA0CQDJK
>>906
ありがとうございます
れっきとした仕様なわけですね
2021/09/02(木) 15:28:51.42ID:45DoptRs
命令の順序でちょっと気になることがあります
オブジェクトA、B、Cがあり

オブジェクトAをクリック AとBを破壊
オブジェクトAをクリック AとCを破壊

この場合は上から順に実行されて、結果Cは残ると考えていたんですが
両方破壊されるんですね
変数で管理した場合は下が残るんですが……
2021/09/02(木) 16:47:43.06ID:cQNfhX6d
オブジェクトの破壊はフレームの最後で行われるので
>オブジェクトAをクリック AとCを破壊
の条件を通過する時点ではまだAもBも健在。
なのでCも破壊されて結果全部なくなります。
2021/09/02(木) 21:01:08.79ID:45DoptRs
>>909
ありがとうございます
変数管理の場合は行ごとに状態が変化するから2番目が実行されなかったわけですね
2021/09/09(木) 16:25:11.05ID:jA8Egsmx
質問です
マス移動(ドラクエ1みたいなマス〜マスの移動はスムーズに動くけど停止するのはマス単位)
を基本にゲームを作りたいのですが、大量のキャラクター(50体〜
を制御しようとすると、foreachで1ドットづつ移動させてという方法では平行して
各キャラクターの四方に視野を持たせたりしているので重すぎて使えません。
何かほかにいい方法ありますか?
2021/09/09(木) 19:19:03.83ID:7KkZFZgT
マス単位移動なら工夫すれば50体くらいならPCではforeachで動かしても余裕あるはず
たぶん当たり判定とか移動で無駄な処理が多くて重くなってるはずだけど
foreachより速いループ無いので処理を効率化するしかない
実際にどう効率化するかは現時点での処理を見ないとわからない
2021/09/10(金) 11:13:15.28ID:0r9mr5Be
無理に全てを1ドット単位で移動させなくてもいいだろう
全てを厳密にチェックする必要があったらそうするしかないかもだが
普通に好きな単位で移動させて、移動終了後にマス目からはみ出してる分を補正してやればいい
2021/09/12(日) 01:14:32.51ID:FQRM8T9f
フォーラムに例のウイルス検知の良さそうな回避投稿されてるので貼り
https://steamcommunity.com/app/248170/discussions/0/3033726413396401513/

自分のアンチウイルスだとそもそも検出したことないから確かめられないんだけど
だれか検出しちゃう人試せないかな?

リンク先の図の通りプロパティで製作者情報を入れたら検出されなくなるとか
2021/09/12(日) 11:19:11.95ID:MywC8Tek
>>912
>>913
50体だから50回回してるわけでもなく、衝突管理や付いてくる別パーツの位置合わせとか
プレイヤー側の検知ループとかやってるとやっぱり重くなるんですよね。
と言う事で、効率化をしていったら何とか処理も軽くなってきました。
厳密に動かさずに、移動後にマス目に矯正するというのが大変だったけれどいいヒントになりました!
ありがとう御座います。
2021/09/12(日) 21:30:11.47ID:rya9bGCB
弾幕豊穣祭ってゲーム以前にダウンロードして誤検知出た者だけど(>>783で書き込み)
今日再度ダウンロードしてみたらちゃんとプレイできた!
更新ログに(2021/06/09)アップデート(ビルドR292.29→ビルドR293.1)を適用ってあるので
自分のPCで誤検知出たのver292.29ビルドverだったんだと思う
この弾幕ゲー作者さん技術力凄いね
917名前は開発中のものです。
垢版 |
2021/09/15(水) 17:39:21.96ID:TmRdw0ui
これフレームをまたいでのBGM再生ってどうやるんですか?
2021/09/15(水) 23:18:16.83ID:hjkWHd0d
>>917
アプリケーションのプロパティのラインタイムオプション内
「フレームをまたいでサウンドを再生」にチェックを入れます。

ただし、「フレームをリスタート」を使う場合はサウンドも途切れるので
一旦他のフレームに行ってから戻ってくると継続再生できます。
919名前は開発中のものです。
垢版 |
2021/09/15(水) 23:40:37.30ID:TmRdw0ui
>>918
できました!ありがとうございます!
2021/09/18(土) 13:58:18.29ID:ZdcM5tll
スニッパーズのような
オブジェクトが二つ重なった時に
前面にあるオブジェクトの形に背面のオブジェクトが削られる
物を作りたいのですが、どのように組めばよいでしょうか
2021/09/19(日) 16:57:46.37ID:g0+TjydA
永続的に削られたままと言うならできないんじゃないかな
予め削られたオブジェクト用意しとかないと
CFはオブジェクトを分解するようにはできていない(はず)
2021/09/19(日) 19:12:15.94ID:THFN8BZL
あらかじめオブジェクトをパズルみたいに細かく分割しといたらいけそう
サイズ32x32のオブジェクトだとしたら例えば
サイズ2x2のオブジェクトを16x16個くっつければいける
2021/09/19(日) 19:29:50.15ID:aWNoQFEY
ヨッシーアイランドのタマゴとかで掘れる土みたいな?
2021/09/20(月) 12:25:07.31ID:jsZaaW/r
少し掘られた土と中程まで掘られた土と貫通した土のタイルをアクティブで座標毎に切り替えればいいんじゃね
2021/09/23(木) 12:25:53.91ID:VVI85Upl
制作ちゅうのテスト実行では動くのに、exeに出力したら機能しない命令があるね
具体的には特定条件でBreakが機能しなかった
2021/09/23(木) 18:25:10.34ID:/viRHg2o
breakてなに
2021/09/23(木) 21:03:36.81ID:rpbSHytM
>>926
マテ、
2021/09/23(木) 23:02:24.32ID:q1ILX4r4
2021/09/24(金) 20:25:29.98ID:KEOnZUxQ
+持っていないなら知らない可能性もある。
2021/09/30(木) 06:16:10.76ID:tl1a/kMm
昔見かけたような気がするのですが
差分ファイルの作り方みたいなのなかったでしたっけ
一度完成した作品にバグがあったときに
全体の実行ファイルをもう一度ダウンロードしてもらうんじゃなくて
バグ修正の差分ファイルだけみたいな感じの

検索しても公式のアップデートの話ばかりヒットしてしまって
見つけられなくてここで聞いてみようと思いました
2021/10/01(金) 17:53:10.11ID:C+0Te82N
Clickteam Fusion専用があるのかはわかりませんがバイナリファイルの差分パッチを作成するツールを
ネット検索すると色々見つかりますよ
2021/10/02(土) 11:31:39.68ID:+gz06Kes
>>931
ありがとうございます
そちら方面で検索してみます
2021/10/05(火) 06:25:30.00ID:IeYRpBST
オブジェクトを動かして壁に衝突してめり込んだらその分押し戻す
という理屈はわかるのですがそのまま方向キー入れてると壁にめり込んで抜けてしまいます
押し戻すドット数を上げていくとある地点からめり込まなくなりますが
今度は壁際でブルブル震えるか跳ね返る感じになるんです
ちょうどいいうまい方法ってないでしょうか
2021/10/05(火) 09:05:11.64ID:k05RyS+X
>933
押し戻すドット数を直接指定するとよっぽどミラクルがないとプルプルします。
押し戻しは1ドットずつを高速ループで行うと良いでしょう。
操作するオブジェクトに壁を検知するオブジェクトを付随させ、
そのオブジェクトが地形に重なってる間だけループが回るようにすると
めり込みが解消されればループが止まるのでプルプルを防ぐことができますよ。
2021/10/05(火) 10:43:20.59ID:SZjOsjWZ
win11で動く?
2021/10/05(火) 19:08:25.07ID:h/rZHu9p
>>934
たとえば右の壁にぶつかったときx座標をマイナス1すると思うんですけど
壁に重なってるとき、の条件でループを開始するんですよね?
ループ回数は5くらいだとすり抜けて
10回にするとブルブル震える感じになってしまうよでそのやり方だとだめみたいです
2021/10/05(火) 20:23:01.80ID:k05RyS+X
>>936
まず、ループの回数は想定される移動量を超える大きさにします。
そして、押し出しのアクションに衝突の条件を併記すると上手くいくと思います。

・ループが実行中
・判定が背景に重なっている
  X座標をX-1にする

ループが実行中 が上になるように並べてください。
(逆だと赤文字になるはずです)
2021/10/05(火) 21:39:31.90ID:oDZqG8Yp
>>937
できました
条件のところに壁と重なってる間を入れる必要があったんですね
理解できました
ありがとうございました
2021/10/06(水) 08:26:45.91ID:/j7pDcEY
それってループ回数分必ず実行するわけじゃなくて
ループが実行中のとこに新たに条件加えてたら
ある程度回数の調整はできるってことなんだ
2021/10/06(水) 09:42:05.26ID:VXzW334I
>>939
条件によって実行される回数を制限することはできますが
内部では最初に宣言した回数分判定されているはずなので
不必要に多く回さない方が良いと思われます。
2021/10/06(水) 12:05:17.28ID:DWhrjgEZ
オブジェクトとオブジェクトが重なっていない部分だけを非表示にすることはできますか?
お絵かきで言うならマスク機能のような表現がしたいと考えてるのですが、
オブジェクトから離れたら非表示にするしか今のところできなくて困ってます。
2021/10/06(水) 13:56:34.49ID:KkQL0k7B
>>940
そうか余計なメモリ消費につながる可能性あるんだね
ありがとう変なことするとこだった
2021/10/13(水) 16:19:00.95ID:ehtE+FYi
質問です。
クリックフュージョン2.5の
背景画像のランタイムオプションの衝突という項目で
障害物の種類に「障害物」「下からすり抜けられる障害物」「はしご」と
3種類有りますが、
これってプレイヤーが操作するキャラクターのアクティブオブジェクトに対して
どうやって使うんでしょうか?
すいませんが教えて下さい。
2021/10/13(水) 21:54:06.18ID:6zzpQt/M
>>943
アクティブオブジェクトの条件の衝突→背景 または 背景に重なっている は
「障害物」に設定した背景との衝突を検出できます。
「下からすり抜けられる障害物」と「はしご」は
アクティブオブジェクトのプロパティの動作で
「ジャンプとはしご」を設定した際に使われます。
ただし、「ジャンプとはしご」は色々と融通が利かないので使用はお勧めできません。
よくあるジャンプアクションを作るならエクステンションの
Platform Movement Objectを使うのが簡単で良いでしょう。
2021/10/13(水) 22:33:19.72ID:ehtE+FYi
>>944
なるほど、背景の障害物はそういう使い方なんですね。
試してみます。
後、ジャンプとハシゴはあまりオススメ出来ない、と。
制作中なのは障害物のある縦シューなので、ジャンプ等は使わない感じですが、
よくあるジャンプアクション、スーパーマリオみたいなやつ?を作る時は、
教えて貰ったエクステンションを使うのが良さそうですね。
すごく参考になりました、ありがとうございました!
2021/10/15(金) 18:29:12.14ID:rYoXmnNW
CF2.5時代しか知らないんだけど、Madewithfusionってのは何?
目新しい機能何か追加されたの?
2021/10/15(金) 18:49:02.13ID:GcmyOS8T
cf2.5で作ってるぞっていうただのツイッターのハッシュタグ
2021/10/15(金) 21:06:29.27ID:pgYfxBs5
あ、そうなのね。ども
2021/10/19(火) 18:31:13.52ID:EwQRb+W0
高速ループ停止してもそのインデックスの回は最後まで実行されますよね ブレイクみたいに停止した時点で完全にループ終わらしたい時はどうやるんでしょうか?
2021/10/20(水) 13:24:35.53ID:oyngoS6B
変数かフラグを条件にして処理対象外するとか
951949
垢版 |
2021/10/21(木) 17:35:07.20ID:Z9sHYarZ
>>950
そのやり方でいこうと思います
ありがとうございます
2021/10/23(土) 16:16:03.40ID:eTAi2+0t
リストオブジェクトでテキストファイルを読み込んで、目的のテキスト行を抽出し、
次にString Parser 2で、そのテキスト行から任意の文字列を抽出したり、文字を置き換えたりして、ゲームを作っていたのですが、
String Parser 2は中国語には対応してないことが判明し、中国語にも対応できるような方法を探しています

それとも、テキストを扱うオブジェクトは、どれも中国語には対応していないものなのでしょうか
どなたか詳しい方いらしたら、教えていただきたいです
2021/10/24(日) 14:05:01.01ID:HJZQMeo+
>>952
本体は2バイト文字に対応してるんだからcsvを読み込む方向で行列モドキにすればなんとかなるんじゃね
2021/10/25(月) 07:34:01.65ID:39CD/eNk
>>952
String Parser2はUnicodeに対応してないからCJK(中国日本韓国)は文字化けします

テキスト系のオブジェクト全てがUnicode非対応ではなくClickteamの公式とかUnicode対応したSDK使って作られたサードパーティー製オブジェクトは日本語も正常に扱えるし表示できます

文字化けしたデータをUnicodeに再変換することも日本語なら昔できたけど中国語は試したことないから分からないしPC専用になっちゃう

日本語はゲーム用だとだいたい3000文字くらい使えるけど中国語ってゲーム用だと何文字くらい使うの?
2021/10/25(月) 13:33:57.88ID:KJxko0y8
あれ?String Parser 2日本語普通に扱えてるけど?
2021/10/25(月) 18:48:39.67ID:EsimfK/Y
>>953-954
ありがとうございます
いろいろ試してみた結果、String Tokenizerが中国語でも普通に変換できることがわかりましたので、機能は少ないですが、こちらを使っていこうと思います

>日本語はゲーム用だとだいたい3000文字くらい使えるけど中国語ってゲーム用だと何文字くらい使うの?
まだ中国語のゲームを作ったわけではなく、今後対応を可能にしたいため、念のために中国語にも対応できるような作りにしておきたいということなのです

>>955
String Parser 2は、たしかに日本語の変換は問題ないと思います
2021/11/11(木) 05:41:28.71ID:WtTLqyaX
上から視点で自キャラを追尾する敵やミサイルを作ってるんですけど
ブロックや壁に当たると引っかかって止まってしまいます
衝突したらバウンス、をやっても効果がなくて
うまく回り込むませるような方法ってやっぱり難しいんでしょうか
2021/11/11(木) 14:44:23.14ID:mNNbdWDI
>>957
公式にある縱スクロールのチュートリアルの画面外に磁気が出ないようにする奴で出禁じゃね
2021/11/11(木) 14:47:37.16ID:bSFVRzK1
なんつー誤字だw
2021/11/11(木) 16:41:21.70ID:3tDaL8AW
パスファインダーで探索させるんじゃだめ?
2021/11/11(木) 21:33:14.46ID:fRg4c8ui
>>958
それだと画面の端という条件を満たさないといけないので

>>960
パスファインダーは決められた経路しか移動できないんです
誘導弾みたいな動きさせつつ
ブロックにあたったときにヌルリと迂回してほしい、と
やっぱ無理ですかね
2021/11/11(木) 22:31:23.00ID:gKzl8mJp
たぶんできるけどゲームデザイン次第で実装が違ってくるので雛型作ってくれればそれに応じて作ってみる
2021/11/12(金) 12:01:45.23ID:9TP4/ZRW
>>961
あれは座標でやってるよ
なのでオブジェクトの座標を見れば良い
2021/11/12(金) 16:24:28.72ID:Tn/hnfRD
経路探索使いこなせたらゲーム作りの幅広がりそうなんだけど
なんか難しそうだ
2021/11/13(土) 21:57:50.64ID:xL1DYw0r
上で言ってるのってせいぜい直前60f以内のキー入力見て衝突判定来たら許可方向に流すだけじゃね
2021/11/15(月) 17:34:20.83ID:SqdCP/py
経路探索は本当に難しそう
2021/11/17(水) 12:17:48.94ID:keY1gwaA
経路探索アルゴリズムはYouTubeに解説色々あるけど
見てるといつの間にか寝てる
2021/11/17(水) 16:09:41.38ID:xEuX+oY1
経路探索はわれらCF25使いの夢
2021/11/17(水) 18:28:29.81ID:VpefB2Z8
ググるとフィールドをオセロみたいなマス目で考えて
位置関係からポイント振ってみたいなのがヒットするけど
そんなプログラム作るの大変そうだな
2021/11/17(水) 22:57:40.88ID:aa9M4vr+
経路探索しそうなエクステンションは幾つかありますね

・Advanced Path Finding (たぶんマス目前提 機能豊富そう)
・Advanced Path Movement (たぶんノードを追加して結ぶやつ)
・Pathfinding object (たぶんマス目前提 一番コマンドが少なくてわかりやすそう)
・Wargame Map Object (六角形マップ専用)

ただしどれも使い方がわかりません(ToT)
使えればAスターそのものを実装せずに済むので強いと思います。
研究したいけどなかなか時間が…orz
2021/11/17(水) 22:59:00.85ID:wNqHW8NS
そもそもその計算がオセロの次手に優先順位を付けるための計算だし
2021/11/19(金) 13:16:43.71ID:6KRbJf9O
>>802
SwitchのSlayin 2ってゲームの体験版やったら、「Clickteam Fusion 2.5」って出てきたけど、
これはすでにSwitch版のゲームも作れるということなのだろうか

改めてSteam見たら、2017年あたりまでのcf2.5製のゲームの一覧が出てて、いまだとどれくらいに増えてるのか知りたいところ

https://steamcommunity.com/app/248170/discussions/0/666828126951531546/?l=japanese
2021/11/19(金) 18:22:02.17ID:sYcd2Sc9
BABA is YOUもCF2.5製だよね
clickteam本家では家庭用に移植するためのサポートをしてたような?
2021/11/21(日) 20:18:44.80ID:HNf3T2G0
どなたかスクロールを教えてください
画面を切り替えるタイプのスクロールを考えてるのですが
作ってみたところ左右と下は動作してるんですが上に戻るときスクロールしません
あと何度も左右を移動してるとどんどんズレてしまうのもなぜだかわかりません。
https://ux.getuploader.com/mmf/download/1138
アップしてみたのですがどなたかわかりませんでしょうか
2021/11/21(日) 20:53:08.78ID:wC0SRH/y
>>972
それの1はスマホでプレイしてたけどCF製だとは知らなかった
あれならスクロールもない1画面マップだから割と簡単に作れるかも
2021/11/22(月) 11:34:00.13ID:aZmu6SQH
不思議な仕様を見つけた
A 1.0*1/3
B 1*1.0/3
どちらも答えは3.333333...
になるかと思いきや、Aでは3.00、Bでは3.333333...
となる。
A (1.0*1)/3
にすると3.333333...と正しい答えが返ってくる。
2021/11/22(月) 12:00:51.58ID:aZmu6SQH
>>974
物自体は海外のサンプルサイトから引っ張ってきたものだけど
シンプルにまとまっているので何も考えずにそのまま使ってもいいと思う。
少々やってることが難解だけど一日掛けて数式とにらめっこしたら理解できるかも。
https://ux.getuploader.com/mmf/download/1140
2021/11/22(月) 19:03:38.94ID:LHuExnUq
>>976
割り算が先に処理されるってことなのかな
なんだかわからなくなってきた この仕様
2021/11/22(月) 21:02:33.62ID:Yv02Xldb
>>977
ありがとうございます
これがやりたかったです
中身読み解いて仕組み理解したいと思います
2021/11/23(火) 20:02:07.22ID:wC+wLM1X
>>976
型変換にまつわる糞仕様で、通常の計算式だと乗算と割り算は優先度等しいからこの場合式の左から優先なんだけど
浮動小数を扱うfloat型と整数のlong型が混在する式の場合、一致する型同士での計算が演算子の記述順よりも優先されてる

A 1.0*1/3=0
B 1*1.0/3=0.333

この書き方にも実は問題があってAとBは厳密に言うとA=Bではない

1.0は浮動小数点符号付きだからfloat型、1は整数のlong型、それぞれ違う数値型で2つは確保される

コンピューター内部では1.0と1は型が違うから特にC++とか型にうるさい言語ではこの2つはそのまま計算に使えない、だから型変換が必要になる

意図しない型変換を避けるためにもfloatとlongを混在させず、上記式も

A=Bの場合 1.0*1.0/3.0=0.333

こう書くと曖昧さがなくなって当然同じ計算結果が得られる
この型変換の糞仕様の糞部分は、型変換知らないと式を括弧で囲っても解決されない点にあって

1.1*(1/3)=0.

これがなぜこうなるか理解できない人もいる可能性

要するに計算に用いる値は型を揃えて書いてください、整数型と浮動小数混ぜると計算結果違ってくる可能性あります
2021/11/23(火) 20:16:24.50ID:MAlTQ8Dq
なるほど、そんな仕様があったのか・・・型を合わせるために
乗算している1.0が裏目に出てる感じなのね。
変数で代入する場合が往々にあるのでよく1.0を乗算させたりしてるけど
()付ける癖を付けた方がいいね。
2021/11/23(火) 23:48:28.34ID:XEE1lCd2
オブジェクトの変数に例えば1.0を保持させて
その値をカウンターで表示したら1になるんだけど
内部ではちゃんとフロート型で保持してるってことですか?
2021/11/24(水) 00:36:44.52ID:0j5Nzn5C
>>982
型を確認したいのならオブジェクトをデバッガに追加して、デバッガから直接値を見れば良いです

アクティブオブジェクトの変数はデバッガからみると
1.0と1はどちらも1と単純化されて表示されるけど、値をeditで更に見るとちゃんとintとFloatの区別があります
1.0の場合はfloatで、小数点を含まない場合はCFのデバッガの場合はintegerと表示されてるけど

例えば200000000000000とかわざとオーバーフローさせた値を代入すればデバッガは2147483647と32ビット整数の上限まで数値をまるめるからこれでlongだと分かります
2021/11/24(水) 04:28:18.27ID:SERd0zlw
>>983
その方法で浮動小数確認できました
てか実行中に変数変更できるの初めて知りました
ありがとうございます!
2021/11/28(日) 22:02:05.46ID:9nd0W3nf
wikiのポーズサンプル見て自分のに組み込んでみてもメイン画面が出なくて悩んでます
内容少ないのになぜ画面でないのか仕組みが理解できないのですが
これは高度な仕組みなのでしょうか?
2021/12/10(金) 04:29:18.72ID:dN/lrj5t
サブアプリは使い方よくわからないから自分はポーズはイベントで組んでる
2021/12/14(火) 12:06:09.90ID:ER5inuUb
イベントで全部のアクション停止させる感じ?
レス数が950を超えています。1000を超えると書き込みができなくなります。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況