var a = 10000000; // これは10進数の10000000であり、2進数の100110001001011010000000です
var b = 10101010; // これは10進数の10101010であり、2進数の100110100010000100010010です
var c = a | b; // 100110001001011010000000 | 100110100010000100010010 として演算されます。
結果は、100110101011011110010010です。
2進数の100110101011011110010010は10進数で10139538です。
show_debug_message(c); // ここで10進数の10139538が出力されます
正常になってよかったですね!
新バージョンは新機能も入っているので、バグもたくさんありそうです。
インスペクターの挙動もだいぶ怪しいので、安定化するまではいろいろ混乱しそうです。
DPIのところを何度か変えてその度にIDE再起動したところ、日本語表示が正常になりました。
何だったんでしょうかね。
デフォルトに戻しました
でも日本語は正常に表示されるようになりました。
画像を比較した時点で解像度がだいぶ違うようなので、DPI設定を変えてみましたら変わりました。
これの違いだったようですね。
[?]にマウスオーバーすると出る解像度の提案、167%に変更しました。
すると解像度が上がり、日本語フォントも綺麗になりました。
ただ私の環境の場合、画面が狭すぎて作業ができないので、デフォルトの100%に戻すことにしました。
僕の設定は↓でした。
他の設定はasaさんと一緒です。
dipの設定はチェックがついてなかったので、有効ではないと思いますが僕の設定では
100% of native DIP
192 Raw DIP value
ですね。
使用OSはwindows10です。(Surface Pro 7)
解像度が高いように見えますがその辺の条件でしょうかね?
画像のフォントとフォントサイズはいくつでしょうか?
私が貼った画像はこうでした(OSはWindows10)
Default
Font Consolas
Style Regular
Size 11
Anti-aliasing On
Comments
Font Use Default
Style Regular
Size Use Default
Anti-aliasing Default
dpiなんとかの設定が関係あるか分かりませんがこうでした
僕も実験してみましたが、変な表示のされ方はしませんでした。
何か条件があるんでしょうかね?
コメント等で日本語を使ったとき、特定文字の表示がおかしい問題が復活しました。
ありがとうございます!!
DnDで作ってる人が少ないのでチュートリアルもあまりないんですよね。
今ちょっとだけ検索したところ見つけたものはこれらでした。
公式のチュートリアル記事
https://www.yoyogames.com/en/blog/guide-to-gamemaker-particles
Youtubeにあるチュートリアル動画
https://www.youtube.com/watch?v=v-5-W679vQ8
一応、GMLマニュアルも。
https://manual-en.yoyogames.com/#t=Drag_And_Drop/Drag_And_Drop_Reference/Particles/Particle_Actions.htm&rhsearch=DnD&rhhlterm=DnD
>javaとかの「0b」のようなのがGMLにあれば便利なんだけどなぁ。。
私も今回マニュアルを見て混乱しました。で、GMLでは2進数で記述する方法が無いのか!?となりました。
他の言語でどうなってるか分かってないのですが、GMLもモダンな形に進化してほしいですね。
なるほど。
2進数で定義した気でいましたが、言われたらどう見ても10進数ですよね。
javaとかの「0b」のようなのがGMLにあれば便利なんだけどなぁ。。
ひとまず原因がわかってよかったです。ありがとうございます!
var a = 10000000; // これは10進数の10000000であり、2進数の100110001001011010000000です
var b = 10101010; // これは10進数の10101010であり、2進数の100110100010000100010010です
var c = a | b; // 100110001001011010000000 | 100110100010000100010010 として演算されます。
結果は、100110101011011110010010です。
2進数の100110101011011110010010は10進数で10139538です。
show_debug_message(c); // ここで10進数の10139538が出力されます
ということだと思います。
このツールが分かりやすいので、確認してみてください。
https://yanohirota.com/bitwise-operator/
こわい
チュートリアルが2018年、GMS2.3以前のものなので、現在のGMSとはコードの書き方などが全く変わりました。
他にも細かいところでいろいろ変わってると思います。
その関係でしょうかね?
一応直りました・・・
今日こちらのチュートリアルを学んでいたのですが
やった分丸々削除したら元に戻りました。。
https://www.youtube.com/watch?v=2CLm38HCP64&t=934s
バージョンの違いが原因なのでしょうか?
全く同じ症状で、一年以上メインPCでの起動を諦めていた者です。
こちらの情報のおかげで、無事に再インストールすることができました。
感激です!大変有益な情報を残してくださり誠にありがとうございました!!
解決しました!!ありがとうございます!
わたしの知る限りでは戻るボタンは無くて、Ctrl+Z(win版)でUndoする形だと思います。
1ですね。
なんかいい方法がありそうですね。
なるほど
array2 = array1
やってみました。
関数に渡したときと同じことが起きてるように見えます。
つまり、
array2 = array1
でarray2はarray1の参照になり、array2を変更しようとした時点でコピーされ別の配列になる。結果
(1) array1 = [ "dog","cat","flower" ]
(1) array2 = [ "dog","cat","flower" ]
(2) array1 = [ "dog","cat","flower" ]
(2) array2 = [ "dog","123","flower" ]
array2だけが変更されている。ということはコピーされていてarray1とarray2は別の配列になっていると見ることができる。
★1の部分を array2[@ 1] = "123"; にすると、
結果
(1) array1 = [ "dog","cat","flower" ]
(1) array2 = [ "dog","cat","flower" ]
(2) array1 = [ "dog","123","flower" ]
(2) array2 = [ "dog","123","flower" ]
array1とarray2が両方変わっている
array2はarray1の参照のままであり、array2[@ 1]でarray1[1]を直接変更したと考えられる。
★1の部分を array1[1] = "123"; にすると、
結果
(1) array1 = [ "dog","cat","flower" ]
(1) array2 = [ "dog","cat","flower" ]
(2) array1 = [ "dog","123","flower" ]
(2) array2 = [ "dog","123","flower" ]
array1とarray2が両方変更されている
array2はarray1の参照であるからarray1の内容を示していると考えられる。
array = array2;
みたいな代入だとコピーされるんですかね?
そこですよね...
ただ同名のものがあるとそっちが開いたりしますね
可能なら名前がダブらないようにした方がいいと思います
これはえぐい豆知識ですね!
メソッドについて。
このように、
を書くと、
メソッド変数に色が付き、F1キーで定義箇所を開けるようになる。
(Ctrl+Tで検索もできるようになるっぽい)
スクリプト関数とメソッドの違いについて。メモリの確保に違いがあるという話。
まだ私には「日本語でOK」な感じがありますが。理解したい。
https://forum.yoyogames.com/index.php?threads/functions-cause-memory-leak.91875/#post-551875
楽しみです!
スクロールする場合取り入れようと思ってます
リソース量やばそう
IDE v2.3.7.606
Runtime v2.3.7.476
今日はコード編集してると動きがすごく重い。キー入力に対して明らかにラグがある。
使用メモリもまた肥大化してる。
今日は試しにMicrosoft IMEを使っていたことに気づいた。
関係あるかどうか不明だがgoogle IMEに戻したら軽くなった(いつもの感じに戻った)。
使用メモリは700MB以下に戻った。
GMS関係ない問題かもしれないものの一応メモとして残す。
csvファイルからフォントに文字を追加できなくなりました。
バグではなく仕様変更だそうなので、考え直すように要望を伝えています。
このバージョンでMicrosoft IMEだとこの問題(現象1、2)は起きません。
(変換前のひら仮名を)10文字以上入力できない問題だけ発生します。
YoYoはMicrosoft IMEに対応していると過去発言しているので、サードパーティ製は今のところサポート外ということだと思います。ただgoogleIMEでも最近徐々に問題の現象が解消されてきてはいるので、サードパーティ製もついでに直ってくれないかなーと思ってます。
OS: windows10
IME: Microsoft IME
IDE: v23.1.1.443
Runtime: v23.1.1.417
現象1
IMEオン > 入力 > カーソルキー上下で変換候補を選んで変換 > Enter >結果が2回入力される
変換後の文字が二回入力されることはない。
現象2
1の後、他の位置に文字入力しようとすると、カーソルが1の位置へジャンプする(そこに文字が入力される)
変換後、別の部分にカーソルを当てて入力しても、現象2は起きない
ただ、ATOK 2017だと、asaさんとまったく同じ現象が起きました。
どうにもこうにも、サードパーティ製のIMEだと問題が起きるのかもしれないかなという印象です。
個人的にはお気に入りのIMEを使いたいのですが、開発中に日本語入力微妙だと困りますね。
英語でコメント等入力すればよいのですが、やっぱり日本語の方が楽なんですよね。
asaさんはWindows付属のMicrosoft IMEだと問題の現象は起きるのでしょうか?
IDE v23.1.1.443
Runtime v23.1.1.417
でも改善されてない。
2.3.7にアップデートしたところ、AdMobの広告表示に関して、バナー広告を表示させる AdMob_Banner_Create(banner_type, bottom)が正常に動作しなくなりました。2つ目の引数をtrueにしてもバナーが下部に表示されず、上部に表示されてしまいます。2.3.6に戻したら直りました。
iPhone11実機上では問題ありませんでしたが、iPhone8などでは正常に表示されませんでした。
そうですね、sprite描画の角度はimage_angle、移動量に関する角度はdirectionですので、
そのようにビルトイン変数を使い分けるといいと思います。
collision mask の幅は偶数だと自分は引っかからなくなったので、それで。
うっかりしがちのところでは、当たり判定の回転は direction ではなく image_angle に適用されるというところでしょうか。
とすると当たり判定は回転しないっていう
draw_healthbar()という、HPバーを描画するための関数がある。
spriteのcollision maskは、ビルトイン変数と連動して拡大縮小、反転する。
これらを独自の変数に代えたら、描画と当たり判定を分離できる。
キャラを左右反転する場合。
image_xscaleは1のままにする。
独自の変数(例:xscale)で-1を指定し、draw_sprite_extで描画する。
反転でcollision maskがずれないようにするには、
collision maskの幅を偶数pxにして原点を中央にする方法でも可(たぶん)。