ハイハイスクールアドベンチャー_android版
差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン前のリビジョン | |||
ハイハイスクールアドベンチャー_android版 [2025/09/13 04:04] – [kotlinのこと] araki | ハイハイスクールアドベンチャー_android版 [2025/09/13 04:22] (現在) – [あれこれ] araki | ||
---|---|---|---|
行 45: | 行 45: | ||
===== あれこれ ===== | ===== あれこれ ===== | ||
+ | |||
+ | ==== オープニング・エンディング ==== | ||
+ | |||
+ | 前から、オープニングとエンディングの画面はあった。 | ||
+ | オープニングでは、ゲームのストーリーを、エンディングではスタッフロールをそれぞれ表示している。 | ||
+ | |||
+ | 旧来のものは、テキストを一行ずつ表示していたので、かくかく動いてかっこよくなかった。 | ||
+ | [[ハイハイスクールアドベンチャー SDL版]]を作ったときに、ビットマップ画面に描いたものを滑らかにスクロールさせる画面を作った。 | ||
+ | |||
+ | これを、Androidでもやろうと思った。 | ||
+ | |||
+ | AIに聞くと、まず進められるのが TextViewを使う方法。 | ||
+ | |||
+ | メッセージの高さの分のTextViewを作って、それを画面の下からちょっとずつスクロールさせていけばいいというもの。 | ||
+ | 確かに、テストコードはうまく動く。 | ||
+ | だが、メッセージの量が一定値を超えたところで、ぶったぎられた。 | ||
+ | どうも、TextViewの高さには何らかの制限がかかっていて、無制限にすることはできないらしい。 | ||
+ | さんざんAIが提案してくるパラメータを次々とぶっこんで試した結果確認できたことだ。 | ||
+ | |||
+ | 次に、ScrollViewを組み合わせる方法が提案された。これを使うと高さは切られないが、画面が表示されたときに既に画面がメッセージで埋め尽くされていて、そこからスクロールが始まる。 | ||
+ | ダメだ、イケてない。 | ||
+ | |||
+ | もう、SDLと同じでビットマップ作ってそれスクロールさせればいいんじゃない? | ||
+ | |||
+ | と、GeminiとCopilotにそれぞれ聞いてみたら、Geminiは「いや、ビットマップは素材の用意が大変だしメモリも食うから RecyclerViewを活用するのがだ太しいやり方だ」といって、新しい方法を提案してきたが、SCrollViewと大差なかった。 | ||
+ | |||
+ | Copilotはビットマップを使う方法を速攻で提案してきて、ほぼ完ぺきだった。 | ||
+ | 問題点は、例示されたコードをつかったら、ビューを初期化するところで落ちてて、原因を聞くと「ビューにコンストラクターがなければおちるのは当然」みたいなことを言われたことくらい。 | ||
+ | いや、あんたが提示したコードじゃないのよ。 | ||
+ | |||
+ | それ以外は、およそ文句の付け所はなかったので、速攻で採用した。 | ||
+ | |||
+ | AIは便利だし、開発の大きな助けになってくれるが、時に頑固で時に忘れっぽくて、しかもGeminiのように効く相手を間違えると、いつまでも盛会にたどり着けなかったりもするので、うまく付き合わないといけない。 | ||
+ | ((今回はGeminiが駄目だったが、Coplitが駄目なこともあるだろう。)) | ||
+ | |||
==== kotlinのこと ==== | ==== kotlinのこと ==== |
ハイハイスクールアドベンチャー_android版.txt · 最終更新: by araki