今日はほぼ草だけ描いて終わった。
自分用に草を描く作業1日分を記録。割と集中して描いてこんな量。
バリエーションが増えればコピペできる箇所も増えるのでスピードアップできる。
進捗情報とゲーム内容についてあれこれ
今日はほぼ草だけ描いて終わった。
自分用に草を描く作業1日分を記録。割と集中して描いてこんな量。
バリエーションが増えればコピペできる箇所も増えるのでスピードアップできる。
草を生やしている。微妙な曲線に合わせて生やす必要があり、
コピペがあまり使えない。時間かかりすぎて草も生えない(笑えない)。
こういう作業を通して分かった。
際(エッジ)の部分をちゃんと描くと、その内側も密度を持って見えるようになる。
あさまど
だから草生やすのがんばる。
こういう作業は嫌いじゃない。
昨日この問題が発生して気持ちが谷底まで落ちてしまったものの、ちょっとした幸運が重なって原因(あるいは発生条件)が分かったので記しておく。
自分の中の整理のためにぐだぐだ書くけど結論だけ見たい人は
【結論を見る 】 ←これをクリックして読んでください。
▼
まずこの問題が再発する前に、Windows7を入れ直してChromeをインストールしてYoutubeを見るなどしていた。
Youtube動画を見たらちょっとティアリングが起きている。どの動画でも起きている。
「たぶんグラフィックドライバをまだ更新してないから、ドライバ更新したら直るかな」と思いつつちょっと調べたら、
「Chromeの『 ハードウェアアクセラレーションが使用可能な場合は使用する』 が悪さをして表示がおかしくなるよ」
というような記事を見つけた。で、Chrome設定でこれをオフにしたところ、Youtube動画のティアリングは綺麗に解消された。よかったよかった。
Gamemakerをインストールして、ゲームを動かしてみた。ここでティアリングを確認。前の記事に書いたとおり。
変化なし。ダメだった。
オン・オフどちらにしてもダメだった。
これもダメだった。
他にもいろいろ設定変えたりして試したがダメだった。
gamemakerフォーラム関係を調べると、ティアリングが起きてるのはフルスクリーンモードの時のようだ。自分の場合は逆で、フルスクリーンモードでは発生しない。ウィンドウモードのときで発生する。
これの意味するところは・・・?分からない。
ブラウザのインプットフォームなどでIMEで入力している時、変換候補リストの残像が残って消えない現象を確認。表示周りが全部おかしいのか、Chromeだけおかしいのか、分からない。おかしいことがぼろぼろ見つかってきて、何がどう悪いのか理解がおっつかなくなってきた。
新しいタブを開いてロードしているタイミングで、表示がおかしくなる。簡単に言うと、半透明なはずが不透明なベタ塗り状態になる。
あれ?ウィンドウって半透明のはずだよな?
やっぱりブラウザ?ウィンドウ周りがおかしいな?
ここまできて、windowsのテーマをちょっと確認したくなった。なんとなく。
動画を録画する時にAeroが重いので切るという処理がされるが、そういうのが関係あるのか無いのか、たぶん関係ないだろうな、でもAeroの設定がどこにあるかだけ確認したいな、と思った。
Aeroは「Aeroテーマ」を使っていると有効になる機能らしい。Aeroテーマではなく、「ベーシックテーマ」を使っていることが分かった。それでウィンドウの枠が半透明じゃなかったのか。
まさかね、と思いつつ、Aeroテーマを選択して、ゲームをもう一度動かしてみた。
ティアリングは起きない。問題ない。
もう一度「ベーシックテーマ」を選んで試したら、ティアリングが発生した。
Aeroテーマでもう一度試した。問題は起こらない。
これだろ(´・ω・`)
もしかしてYoutubeのティアリングもこれが原因だったんじゃ?と思って、Chromeのハードウェアアクセラレーションをもう一度オンにして、動画を見た。
ティアリングは発生しない。問題ない。
今回のティアリングについては、 ハードウェアアクセラレーションは関係ないっぽい。
これでYoutubeのティアリングが解決されたことは、ちょっとした罠として働いた。でもこの罠に深くはまらずに気づけたのはラッキーだった。
さっと調べただけなので詳しく調べるとまた変わるかもしれないがこういう関係になった。
結論:自分のPCではベーシックテーマを使っているとティアリングが発生する。
これが自分のPCだけで起きることなのかどのPCでも起きることなのかは不明。
これはgamemaker側で制御したり、あらかじめ対策しておくことはできないので、特定の環境ではティアリング問題が発生すると言えるだろう。買ってくれた人にはごめんなさいするしかない。
それは好ましいことではないのでYoYoGamesになんとかしてもらいたい。
一応YoYoGamesに問題の報告をしようと思う。
パソコンがもう重くて頻繁に固まったりするようになっていたので、OSをクリーンインストールで入れ直した。
とりあえずgamemaker:studio2も最新版を入れた。
試しにゲームを走らせたら、ゲーム画面にティアリングが生じるようになっていた。
えっ……。
いやな汗が出てきた。
これは大問題だ。
数年前にgamemakerをいじり始めた頃、同じ現象に悩まされていた。
ティアリングとスタッタリング。
重い処理も変な処理もしていない。何もないRoomにオブジェクト数個置いて、キャラを十字キーで動かすだけ。それだけでティアリングとスタッタリングが起こった。
どうやっても解消できなかったのでこれがGamemaker:studioの限界なのだろうか?あるいは自分のPC環境に起因する問題でゲーム側ではどうにもできない問題なのでは?と思っていた。
数か月の間、ゲーム作りあきらめなきゃいけないだろうかと本気で悩んでいた。
そしていつしか解決できていた。それから昨日まではティアリングもスタッタリングも起きてなかった。
なぜかどうやって解決したのかを全く覚えていない。
本当に精神を削られていてつらかったので、記憶が飛んだのかもしれない。
原因を突き止めて自力で解決したのではなく、いろいろやってるうちにいつの間にか解決されたのかもしれない。覚えていない。
当時の作業ノートを探したが、その当時はノートを使っていなかったようだ。
垂直同期をONにすることで解決したんだっけか?そんなことで解決できるなら1日で直ってたはずだ。それに今は垂直同期をONにしている。OFFにしても変わらない。
グラフィックドライバのバージョン?設定?そういうのが原因だとするとゲーム側でできることが無いので困る。
グラフィックドライバを最新にしてみたが変わらない。
GeForceの垂直同期の設定をオンでもオフでもどの設定にしてもティアリングが消えない。
Gamemakerでティアリングやスタッタリングが起こる問題について、原因や解決法に心当たりがある人は是非、教えてください。
追記
自分の環境での原因をつきとめました!これも読んでください!
【記事】GameMaker: Studio2 ティアリング問題の原因が分かった。
敵1体との戦闘の重みを上げた。
ばったばったとなぎ倒す戦闘から、もうちょっとゆっくり敵1体1体と対峙して戦う形に変えた。
ドラマ性が上がったんではないか。
下の画像はキャラの描き込みのバリエーション。細かすぎて分からないだろうが、右上が現状のもので、他のは上から見下ろした感じを上げて描いた。変えるなら一番下のものがいいんじゃないだろうか。