ゲーム作成のコーナー
Unity
Unreal Engine
JR-200
Room16
水分くん
一攫千金
html5
移植
(2025年3月9日更新)
◎No0011 2025.3.9
「main()」
そーいえば、main()が見当たらないけど、
どこからプログラムが開始されるんだろう?
と、またしても初歩的な疑問が・・
AIに聞いたら、main()はなく、
どのオブジェクトから読み込まれるかは
システムがお決めになり、わからないそうだ。へ!
しかし優先順位をつける事も出来るようで、
そうすれば最初に呼ばれるなど依存関係も明確に
設定出来るそうだ。へーそうかいな。
皆絶対必要でもないんかな。これないと全体指揮取れない
と思うんだが・・何かと常識が異なるなぁ。
◎No0010 2025.3.2
「外壁」
ちょっとしたことがパっと出来ないので、どうも進みが遅い・・
(焼肉食べ放題行ったり、LINE漫画の真なる男読んだりしてるからやろ)
とりあえず、壺を敷き詰めても嘘くさいので、
実際にゲーム画面の一部となる外壁を作ってみた。
(たったこれだけでもC#がビルドエラーとか出るし・・ 何でじゃ・・)
横15x縦11の緑の聖なる岩を表示してみたが、
縦がはみ出し、横は余ってる状態になってしまった。
カメラを調整すればよいのか、
はたまた画面サイズやアスペクトをいじればよいのか・・
さすがにここは綺麗に表示してから先に進めたいよなぁ。
◎No0009 2025.2.9
「画像サイズ」
32x32ドットの画像を表示させたいので、
AIのCopilotくんに聞きまくったり、ネットをググって確認。
壺(32x32dot)のインスペクター設定
・テクスチャタイプ=スプライト(2DとUI)
・単位毎のピクセル数=32
・フィルターモード=ポイント(フィルターなし)
・最大サイズ=32
・圧縮=なし
スクリプトを動かすように、
ヒエラルキーの所で右クリックして、「空のオブジェクトを作成」を選択。
どっかのサンプルコードを見て、
前回作成したスクリプトを縦4つx横4つの壺を表示するようにコーディング
ヒエラルキーにある空オブジェクト「GameObject」をクリックして、
インスペクターの「コンポーネントを追加」の所にコーディングした
Assets画面にあるpotion.csのスクリプト(#マーク)をドラッグする。
さらに、インスペクターの「Sprite Prefab」の欄に、
ヒエラルキーの32x32の壺画像「potion6_0」をドラッグする。
えいやー実行(画面上部の△)ボタンを押すと、見事聖なる壺(黄色)が
縦4、横4にドットで隙間なく表示するように出来ました!
結構大変だなぁ・・まだあくまで実験レベルやけど、
スクリプトがエラーになったりと、なかなか動かずに苦労しました・・
さーて、次はどこに手をつけようかなぁ。
◎No0008 2025.1.26
「スクリプトファイルの作成」
壺が無事落下する事はわかったので、
いったんYとZにチェックを入れて、重力は無しに戻して、
キー入力で壺を動かすようなスクリプトを作成してみようと思う。
ググった所、Assets画面で右クリックして作成→C# スクリプト
と叩けば、スクリプト書けるファイルが出来るらしい。
しかし、C# スクリプトなんてものはなくて、
「MonoBehaviour スクリプト」というものしかなかった。
うーん、これでいいのかなぁ??
まぁいいや作成!と。おぉファイルが出来た。ファイル名はpotionにしとこ。
出来たファイルをダブルクリックすると、
おなじみのVisual Studioのコード編集画面が表示された!
いよいよプログラミングらしくなってきた所で、
眠たくなってきたので、来週に続く・・えーー
◎No0007 2025.1.21
「重力について2(突っ込みあり)」
一昨日書いたように、聖なる壺に、
Compornent→Physics 2D→Rigidbody 2D
日本語モードだと、コンポーネント→2D物理→2Dリジッドボディ
を追加してみた。
おーい日本語、リジットボディってそのままカタカナにした
だけやないかーい!
と快く突っ込みを入れた所で、右側のインスペクターエリアに、
Rigidbody 2Dが追加された。!?こっちは英語のままなんかーい!
再生を押すと見事に壺が重力で加速して落下していった。
面倒なので、写真は省略・・寝よ。
◎No0006 2025.1.19
「重力について」
体調を崩してしまったので、
ごろごろネット見てたが、重力は、
Compornent→Physics 2D→Rigidbody 2D
を追加して、重力Gravity 1あり/0なしを設定が必要なようだ。
体調が戻ったら試してみよう。まだ喉痛い・・
◎No0005 2025.1.15
「位置について」
昨日画像を適当に表示してみたが、どうもしっくりこないというか
不明点がいくつかある。
まず最初に疑問に思ったのが、位置の単位だ。
聖なる壺の位置X「3.449075」、Y「3.194444」これいったい何の単位?
ドットじゃないとやりにくそうなんですが。。
さっそくググってみたが・・うーんよくわからん。
Pixels Per Unitという単位で、1mとかを見かけたが・・
1m?さっぱりわからん。
眠たくなってきたので、また今度・・
残業かもで、土日までスリープ・・
◎No0004 2025.1.14
「キャラクタを表示」
とりあえず、見様見真似でキャラクタを表示してみよう。
さすがにUnityとUnreal Engine両方やっていくのはしんどいので、しばらくUnityのみで。
立ち読みした知識だと、画像を画面下のAssetsという所にドラッグすれば
取り込んでくれるような事が書いてあった。
1)取り込むキャラの準備
Room16で使用してた画像ファイル一式をc:\game\image\001の下へコピーした。(一部Room16で使ってない画像もあるけど)
超チープな画像だけど、昔の7色しか使えない時のキャラ達なので、すごく愛着が沸いてるなぁ。
2)Unityへ画像取り込み
Waterくんの水分をx2にしてくれるアイテム「聖なる壺(黄色)」を
試しにUnityの画面下部のAssetsという所にドラッグしてみた。おぉーー無事に取り込んだぞ!
ちゃんと壺に見えるゾ!私にも見える!
3)壺の情報を見る
勇気をもって、壺をクリックしてみた所、右側にあるインスペクターという場所に何やら詳細属性が表示された!
言葉の意味はわからんが、何やらすごい自信になるなぁ。
4)ゲーム画面に壺を置いてみる
さらに勇気をもって、壺を画面上部のシーンにドラッグしてみた。南無さん!
おぉめっちゃ画像が小さいけど置けたみたい。
5)壺を大きくしてみる
壺が小さいので、右側にあるインスペクターのスケールのXとYを1だったのを5にしてみたら、
でっかくなった!素晴らしい!
6)ゲームを動かしてみる
立ち読みレベルの知識だと、画面上部の右▲再生ボタンを押すとゲーム実行モードになるらしい。
壺を置いただけだけど、無性に動かしてみたくなった。ひょっとして壺は重力が働いて落下し、割れてしまうのだろうか!?
えーい、ぷちっ。あれぇ・・ただ表示されてるだけだ。まぁ何も設定してないので背景画像として認識されたのかもしれんなぁ。
これまでの言語なら、画像読み込み、初期化、表示位置設定、画像表示とプログラムしていたが、
プログラム無しで壺が表示された。うーん簡単な気もするが、全部プログラムする方が性に合ってるなぁ。
今日のところはひとまずこれまで。平日はあまりする時間がないなぁ。
◎No0003 2025.1.13
「本屋」
本屋でUnityとUnreal Engineの入門書を4冊程
おりゃーーと1時間ほど立ち読みした。立ち読み懐かしい!
ネットにも入門情報は散らばってるけど、
やはり本の方が纏まっていてわかりやすい。
以下、わかったこと。
1)カメラという概念がある。
カメラから見た内容を表示しているという概念だ。なるほどねー。
これならカメラをズームしたらアップにできるし、
角度変えたり、複数カメラを切り替えて表示したりも出来る。
さすが3Dプラットホームやなぁ。
でも面倒くさそう・・
2)光と影、材質/光沢などの概念がある。
まぁ3Dなんでそうなんだろうが凄いなぁ。綺麗だなぁ。質感が凄いなぁ。
でも面倒くさそう・・
3)重力がある。
普通にキャラを表示しても重力があるので落ちていくらしい。
重力は数値で変更可能。デフォルトは地球と同じ設定らしい。うーん壮大すぎる・・
オブジェクトを地面のように着地出来るように設定もできるらしい。
当たり判定もオブジェクトに対して出来るらしい。なるほどね。
でも面倒くさそう・・
4)iphone用ゲーム作成にはmac-PCが必要。
xcode環境がApple mac上でしか動かないので。
うーん、WindowsPCしか持ってない。買うかmac・・
早速候補)
・@MacBookAirノートPC 194,800円税込 13インチ/M3チップ/RAM16GB/SSD512GB
・AMacBookAirノートPC 228,800円税込 同15インチ
・BMacMini PC本体のみ 124,800円税込 M4チップ/RAM16GB/SSD512GB
Mac Miniがスペックも良くてめっちゃ安いなぁ。
でも画面/キーボード一体で持ち運べるノートPCの方が、自分には合ってるからなぁ・・やっぱノートかなぁ悩むなぁ。
5)用語が難解。
聞きなれないカタカナ英語満載。
・ヒエラルキー:Unity左側のパス表示してる画面をこう呼ぶらしい。
ちょっと・・何言ってんのかわかんない・・
・インスペクター:Unity右側の属性表示してる画面の事らしい。
あーん、ちょっとー何なのこれ・・ピンと来ないしん。
・レベル:UnrealEnginで背景の事らしい。
きーーーー、何で背景がレベルなの??
・他にも、アセット、メッシュ、マテリアル、テクスチャ、アクタ、ブループリント、
シェーダー、シェイプ、リギングなど、いっぱい・・
わざとわかりにくくしてるんとちゃうやろな・・
とはいえ、無料で文句言ったらバチが当たりそうなので、覚えましょう・・
6)その他
・マルチプラットホームでPC/iphone/Android/専用ゲーム機の開発が可能。
・アセットストアで素材を購入可能。無料のものもあり。
・プログラム言語は、UnityはC#、UnrealEngineはC++
・書籍や情報はUnityの方が多い。
・2Dゲームの作成ならUnityの方がよさそう。
明日は出社なので、早目に退散・・・
◎No0002 2025.1.12
「インストール」
■Unity
まずはUnityからインストール。
ユニティーというと同期のODAのソフトウェア会社名を思い出すが、関係なさそうだ。
Unityは1年の収益が10万ドル(1ドル150円で1,500万円)未満なら無料で使えまーす!太っ腹!いいね!
■1)Unity-Hub 最初に開く管理画面。プロジェクトを選択する画面やね。環境設定で日本語にした。
さっそく右上の青いボタン「新しいプロジェクト」を押してみるべし!
■2)テンプレートが選べるみたいだ。今回移植するRoom16は当然3D!ではなく、
昔ながらの2Dなので、「Universal 2D」を選択する。
・プロジェクト名は「My Documents」がデフォルトだが嫌なので「Room16」に変更
・保存場所も「C:\User\〜」と嫌なので、Cドライブ直下に専用パス「C:\game\001」を作成して指定した
当然ながら、日本語のパスやプロジェクト名は使わない方がよい。
・Unity Cloudに接続にチェックがついてたが、クラウドには置かないのでチェック外した。
右下の青いボタン「プロジェクトを作成」を祈りながら押してみた。ぷちっ神様!
■3)ゲーム作成画面が表示された!いえーい。あとはここでえいやで作成すれば出来上がりじゃ。
それにしても、さっぱり何が何だかわかりません。中央の画面でゲーム画面を作成していくのかな。
呆然と立ち尽くした感があるので、右上の×ボタンを押していったん終了。しゃーなら。
■4)元のUnity Hub画面に先ほど作成したプロジェクトが無事表示されている。めでたし。めでたし。
今日はこれくらいにしといたろ。
■Unreal Engine
次はUnreal Engineをインストールしてみよう。
UE5は1年の収益が100万ドル(1ドル150円で1億5,000万円)未満なら無料で使えまーす!さらにすげー!
容量もでかい。60GBくらい?Cドライブの空きが十分ないとやばい。
途中、ディスプレイドライバが古いとか、スペックが悪いので一部機能が使えないとか警告でた・・はー。
■5)ランチャー画面というらしい。ばばーん起動した。
眠たくて時間もないので、さっそく右上の黄色いボタン「起動 Unreal Engine 5.5.1」をポチっとな!
■6)こちらもUniy同様プロジェクト選択画面になったが、より3Dっぽいものばかりじゃ。
2Dっぽいのがないので、とりあえず「ブランク」というのを選択。
・右下の言語選択らしい「ブループリント」を知ってる「C++」に変更しておこう。
・品質プリセットも最高級いらんので「Scalable」にして画質を落としておこう。
・スターターコンテンツ うーんよくわからんけどチェック入れておいた。
・画面下部の、プロジェクトの場所はUnity同様に「C:\game\unreal_engine\001\」に変更
・画面右下の、プロジェクト名は「Room16」に変更
右下の青いボタン「作成」をぽちっ。
がーん英語でエラー出た。どうやらC++に変更したから出たようだ。
ぐぐってVisual Studio Community 2022で幾つか関連コンポーネントを追加インストールでエラー解消!
■7)無事ゲーム作成画面が表示された!
うーん青空に雲、遠くに岩肌も見えるし、どうみても3D仕様やなぁ・・
どこをどうすれいいのかわからないので、そっと右上の×ボタンを押した。
■8)無事ランチャーにプロジェクトが追加された。
夜中に開始したら、朝になってしまった・・寝ます。もやぷみ・・
今日の所はひとまず退散・・
◎No0001 2025.1.11
「今年の仕事以外の目標」
昨年は超〜多忙で出来なかったが、
今年はゲーム作成出来るようにしたいなと。
業界標準になってるUnityとUnreal Engineで。
まずは、7年程前にhtml5+JavaScriptで作成した
Room16というマイゲームを移植してみる。
http://www.ama.sumomo.ne.jp/room16.html
超久しぶりにHPに新コーナーを立ちあげてみた。
作者雑日記と同じ形式で習得した事を綴っていこう!
Back