|
![]() ※該当の記事タイトル一覧はリンク一覧から参照できます。
プチコン4で迷路自動生成プログラム名前: 小川 邦久 リンク: https://kunisan.jp 日付: 2021年5月16日 ![]() ![]() 迷路生成のルールはこんな感じです。 1)1本目の通路を生成開始。基本は通路が行き止まりになるまで迷路の生成を続ける(ただしランダムで終了あり)。 2)座標をランダムに取って、既に通路があるところであれば、そこから分岐した通路を生成開始。基本は通路が行き止まりになるまで迷路の生成を続ける(ただしランダムで終了あり)。 3)画面上に新たに通路を生成できなくなるまで2)を繰り返す。 自分では「我流のアイデア」と思っていたこの迷路作成のアルゴリズムは、「穴掘り法」という名前で既に存在していました。いずれにしても、思った通りに迷路を自動生成するプログラムができて嬉しく思いました。 以下、穴掘り法のプログラムと迷路自動生成の動画です。 これをきっかけに、ネットで迷路の自動生成について調べていると、「棒倒し法」がより簡単に実装できて一般的であることがわかりました。せっかくなので、自分でも作ってみることにしました。 棒倒し法のルールはこんな感じです。 1)フィールド上に1マス置きに「棒(壁)」を設置する。ただし、画面の端のマスは上下左右とも空白であること。 2)一番上の棒からスタート、ランダムに上下左右のいずれかに倒す形で、倒した所のマスも壁として埋めていく。ただし、既に壁として埋まっているところには棒は倒せない。 3)上から2番目以降の棒も随時倒していくが、これ以降は下と左右のみ倒せる(上には倒せない)。既に壁として埋まっているところには棒は倒せない。 以下、棒倒し法のプログラムと迷路自動生成の動画です。 棒倒し法の方が圧倒的に短くシンプルなプログラムにはなりますが、迷路に短い分岐が多くなってしまうのと、スタートとゴールを設置した際に、解法が「一旦上に向かって、その後に下に降りていく」というワンパターンな感じになってしまいます。個人的には穴掘り法の方が好みです。 一方、穴掘り法については迷路の規模が大きくなると描画に時間がかかってしまうことと、「長くくねくね」とした感じの通路になりがちということがあります。 ついでに、「迷路を自動的に解く」プログラムも作ってみることにしました。以下のようなルールで迷路を解いていきます。 1)スタート地点から進行できる方向に行ける所まで進めていく。 2)行き止まりになったら、逆に戻るようにして分岐の手前までを塗りつぶして、次にここに辿り着かないようにする。 3)2)を繰り返しながら行き止まりをつぶしていくうちに、ゴールまでの道のりがあぶり出されていく。 以下、迷路を自動的に解くプログラム(一部)と動画です。この動画の迷路の生成は棒倒し法ですが、もちろん穴掘り法でもこのプログラムは適用できます。 穴掘り法、壁倒し法以外に、「壁伸ばし法」という方法もメジャーなようです。今のところ試してはないですが、また時間のある時にプログラムを作ってみようと思います。 ニンテンドー関連記事(リンク一覧): アケアカ版パックランドをゲームセンター版のように3ボタンでプレイ / 屋上から目薬 - プチコン4で37年前の雑誌に掲載のゲームをアレンジ移植 / ディスプレイを新調(Dell S2722QC 27インチ 4Kモニター) / プラグ&コンセント - プチコン4で35年以上前の投稿ゲームを再現 / プチダートレース - プチコン4でシンプルな2Dレースゲーム / ...(記事連続表示) 関連カテゴリー: ニンテンドー関連記事, プチコン4関連記事
![]() 令野蘭子さんのフリースロー - プチコン4でバスケのフリースローゲーム名前: 小川 邦久 リンク: https://kunisan.jp 日付: 2021年5月5日 ![]() ![]() タイトル: 令野蘭子さんのフリースロー 公開キー: 4E3N5B1 ![]() ![]() プログラムは以下の通りです。 実はフリースローのゲームは高校時代に一度作った事があります。ただ、当時はX68000の熱血高校ドッジボールのキャラをそのまま使ったため、一般に公開することはありませんでした。今回は著作権に配慮して(?)オフィシャルのプリセットのキャラを使っており、久しぶりに同じようなルールのゲームが陽の目を見ることになった感じです。 ニンテンドー関連記事(リンク一覧): アケアカ版パックランドをゲームセンター版のように3ボタンでプレイ / 屋上から目薬 - プチコン4で37年前の雑誌に掲載のゲームをアレンジ移植 / ディスプレイを新調(Dell S2722QC 27インチ 4Kモニター) / プラグ&コンセント - プチコン4で35年以上前の投稿ゲームを再現 / プチダートレース - プチコン4でシンプルな2Dレースゲーム / ...(記事連続表示) 関連カテゴリー: ニンテンドー関連記事, プチコン4関連記事
![]() スマイルじいさんのポリゴン宇宙旅行 - プチコン4で3Dポリゴンの避けゲーム名前: 小川 邦久 リンク: https://kunisan.jp 日付: 2021年2月5日 ![]() ![]() タイトル: スマイルじいさんのポリゴン宇宙旅行 公開キー: 4NKANEXPF ![]() ![]() ![]() ![]() プログラムは以下の通りです。 今回は普段作っているプログラムよりも計算が色々と複雑で、頭で整理するのが中々難しく、プログラム中のコメントもできるだけ丁寧に描きました(今回はちゃんと漢字を使いました)。今後ポリゴンのプログラムを作ることがあるのか分かりませんが、ベースの考え方だけは忘れずにいたいところです。 ニンテンドー関連記事(リンク一覧): アケアカ版パックランドをゲームセンター版のように3ボタンでプレイ / 屋上から目薬 - プチコン4で37年前の雑誌に掲載のゲームをアレンジ移植 / ディスプレイを新調(Dell S2722QC 27インチ 4Kモニター) / プラグ&コンセント - プチコン4で35年以上前の投稿ゲームを再現 / プチダートレース - プチコン4でシンプルな2Dレースゲーム / ...(記事連続表示) 関連カテゴリー: ニンテンドー関連記事, プチコン4関連記事
![]() ぱちぱちフルーツ農場 - プチコン4で羽根モノパチンコ風ゲーム名前: 小川 邦久 リンク: https://kunisan.jp 日付: 2021年1月2日 ![]() ![]() タイトル: ぱちぱちフルーツ農場 公開キー: 4EKS3Q5XF ![]() ![]() ![]() プログラムは以下の通りです。 パチンコ風のゲームは「一度は作ってみたい」と思っていたので、これでようやく欲求を満たすことができました。ちなみに、パチスロゲームは4年前にJavaScriptで作ったことがありますが(JavaScriptパチスロ)、プチコン4で作ることは多分ないかと思います。 ニンテンドー関連記事(リンク一覧): アケアカ版パックランドをゲームセンター版のように3ボタンでプレイ / 屋上から目薬 - プチコン4で37年前の雑誌に掲載のゲームをアレンジ移植 / ディスプレイを新調(Dell S2722QC 27インチ 4Kモニター) / プラグ&コンセント - プチコン4で35年以上前の投稿ゲームを再現 / プチダートレース - プチコン4でシンプルな2Dレースゲーム / ...(記事連続表示) 関連カテゴリー: ニンテンドー関連記事, プチコン4関連記事
![]() 落ちるジョニー - プチコン4でレトロPCのBASIC風ゲーム名前: 小川 邦久 リンク: https://kunisan.jp 日付: 2020年12月31日 ![]() ![]() タイトル: 落ちるジョニー 公開キー: 4EKS3Q5XF PC-6001mkIIに限らず、レトロPCと呼ばれる1980年代前半のパソコンを持っていた人で、BASICがそれなりにできる人であれば、ほぼ誰もが作ったと言えるようなゲームです。私がBASICを使い始めたのが小6の冬で、それから1~2ヶ月後位には、テキストベースではありますがこの程度のゲームが作れるようになったと記憶しています。 ところで、いつもの年末年始は「今年の個人的ニュース」のようなタイトルでブログを書くのですが、今年はコロナの影響で海外旅行のような大きなイベントは皆無で、良くも悪くもプチコン4のみに没頭した年でした。インドアの趣味があるので外出できないのも全く苦にはならなかったものの、やはり生活にメリハリをつけるには外出できる方が良いのは間違いないです。 ニンテンドー関連記事(リンク一覧): アケアカ版パックランドをゲームセンター版のように3ボタンでプレイ / 屋上から目薬 - プチコン4で37年前の雑誌に掲載のゲームをアレンジ移植 / ディスプレイを新調(Dell S2722QC 27インチ 4Kモニター) / プラグ&コンセント - プチコン4で35年以上前の投稿ゲームを再現 / プチダートレース - プチコン4でシンプルな2Dレースゲーム / ...(記事連続表示) 関連カテゴリー: ニンテンドー関連記事, プチコン4関連記事
![]() プチコン4でポリゴン描写の実験名前: 小川 邦久 リンク: https://kunisan.jp 日付: 2020年12月13日 ![]() ![]() まずは各面の表示の順番を考える必要のない「ワイヤーフレーム」の立方体から作ってみました。回転行列のところでちょっとした勘違いがあって、少し時間がかかってしまいましたが、それ以外はほぼ頭の中で思い描いた通りに作ることができました。 ※このワイヤーフレームも以降の他のプログラムも、Joy-Conで回転や移動の操作が可能なものです。動画の最後の方でプログラムを確認できます。 続いて6面色違いの立方体を作ってみました。グラフィック面に三角形を描く「GTRI」という命令で、三角形を合計12個描写する形です。グラフィック面での描写になるので、各面(三角形x2枚)の描写の順番を「向こう側からこちら側(最前面を最後に描写)」に合わせる必要があります。これについては当初、頂点座標等の配列変数を各三角形の中心のZ座標を基準にRSORT(逆順)で並び替えたのですが、これだと時折向こう側の三角形の一部がこちら側に表示されてしまう不具合が発生してしまいました。そのため「面の中心から座標0,0,-200(カメラの位置)までの距離」を基準に配列変数を逆順に並び替えた所、今度はうまく表示されるようになりました。 ちなみに一般的なポリゴンは三角形を単位図形として、これを多数構成して描写することが多いようです。私は最初、「四角形のスプライトを自由に変形できれば、ポリゴンも楽に表現できるのに」と考えてしまいました。しかし、「一般的な手法」ということであれば、「三角形をいくつも構成する方法で慣れておくのも悪くないかな」と思うようになりました。 今度は「プチコン4では処理落ちせずに三角形をいくつまで描写できるのだろう?」ということで、球体に三角形をいくつも貼り付けた形のものを作ってみました。当初は300個位で画面にチラつきが発生するようになってしまったのですが、これはプチコン4のVSYNC命令がグラフィックの描画の完了を待たずに画面を更新してしまうからのようです。そのため、GTARGETとSPPAGEを用いて、フレーム毎に描画面と表示画面を切り替える形にしたところ、600個位までは問題なく表示できるようになりました(動画は三角形600個のものです)。この数を超えてもチラつきは発生しないのですが、今度は処理速度に遅延が発生するようになります。 最後に今回の一連の実験のおさらいとして、三角形24枚で構成した異形(6方向に尖ったもの)を作成してみました。さらに光源の概念も入れ込んでみました。面の光の強さは、「面の法線ベクトル(単位ベクトル)を外積で算出し、それを光源からのベクトル(単位ベクトル)で内積したもの」としています。本当なら尖った部分の影が異形の本体にも反映されないとリアルとは言えないですが、まあそこまではさすがにいいかなということで、これにてポリゴンの実験は一区切りということにします。 ここからゲームとして発展できればいいのですが、今のところは具体的なアイデアが無いので、また後日何かひらめいたら作ってみたいと思います。それにしても、三次元の回転行列、外積、内積などが出てきて、久しぶりに頭が数式でいっぱいになってしまいました。 ニンテンドー関連記事(リンク一覧): アケアカ版パックランドをゲームセンター版のように3ボタンでプレイ / 屋上から目薬 - プチコン4で37年前の雑誌に掲載のゲームをアレンジ移植 / ディスプレイを新調(Dell S2722QC 27インチ 4Kモニター) / プラグ&コンセント - プチコン4で35年以上前の投稿ゲームを再現 / プチダートレース - プチコン4でシンプルな2Dレースゲーム / ...(記事連続表示) 関連カテゴリー: ニンテンドー関連記事, プチコン4関連記事
![]() BALLS AND PANELS 3D - プチコン4で三次元の物理演算(ボールの衝突処理)名前: 小川 邦久 リンク: https://kunisan.jp 日付: 2020年12月5日 ![]() ![]() タイトル: BALLS AND PANELS 3D 公開キー: 4JBN3K2AE ![]() ![]() ![]() ![]() プログラムはこんな感じです。 プチコン4では今までに色々と技術的な事にチャレンジしてきました。個人的にプチコン4から初めて取り入れた技術はこんなものがあります。 ・ボール同士の衝突計算(+重量の概念) ・ボールとグラフック面の衝突計算 ・LMATRIXと回転行列で360度移動可能な擬似3D ・内積による衝突の力の計算 ・ばねの動き ・磁力の概念 ・三次元のボール同士の衝突計算(+重量の概念) 今回、三次元のボール衝突の演算がうまく行ったことから、技術的なことに関しては大凡「やり切った感」があります。これからは新しいアイデアとか作り込みの度合いを上げるとか、別の方向で伸ばせるところを伸ばしていければと思っています。 ニンテンドー関連記事(リンク一覧): アケアカ版パックランドをゲームセンター版のように3ボタンでプレイ / 屋上から目薬 - プチコン4で37年前の雑誌に掲載のゲームをアレンジ移植 / ディスプレイを新調(Dell S2722QC 27インチ 4Kモニター) / プラグ&コンセント - プチコン4で35年以上前の投稿ゲームを再現 / プチダートレース - プチコン4でシンプルな2Dレースゲーム / ...(記事連続表示) 関連カテゴリー: ニンテンドー関連記事, プチコン4関連記事
![]() 焼肉食べ放題 - プチコン4でミニ・シミュレーションゲーム名前: 小川 邦久 リンク: https://kunisan.jp 日付: 2020年11月8日 ![]() ![]() 当時のベーマガは手元になく、ゲーム自体の記憶も薄れているのですが、「面白かった」という事だけはよく覚えていて、「これっぽいゲームをプチコン4で再現しよう」と思いつきました。さすがにプチコン4でテキストベースのゲームという訳には行かないので、グラフィックを添えた形になります。完成したゲームが「焼肉食べ放題」です。 タイトル: 焼肉食べ放題 公開キー: 4BKK482NV ![]() ![]() ![]() ![]() 頭の中で「やーきーにーくーやきにくやきにく、やーきーにーく…」というフレーズが繰り返されたので、それをそのまま曲にして採用してしまいました。メロディ感のあまりない曲ですが、まあもともと凝った曲は作れないので、「これで十分かな」と思っています。 色々と手間がかかったものの、出来上がったゲームは「ミニ・シミュレーションゲーム」と言った感じで、プレイ時間も2~3分程度と短いです。それでも自分で絵を描いたり曲を作ったりと、今回はかなり充実感のあるゲーム制作となりました。 プログラムは以下の通りです。 まだ次回作は何で行くか決めていませんが、年末年始の休みまでに一つ仕上げられれば、と思っています。 ニンテンドー関連記事(リンク一覧): アケアカ版パックランドをゲームセンター版のように3ボタンでプレイ / 屋上から目薬 - プチコン4で37年前の雑誌に掲載のゲームをアレンジ移植 / ディスプレイを新調(Dell S2722QC 27インチ 4Kモニター) / プラグ&コンセント - プチコン4で35年以上前の投稿ゲームを再現 / プチダートレース - プチコン4でシンプルな2Dレースゲーム / ...(記事連続表示) 関連カテゴリー: ニンテンドー関連記事, プチコン4関連記事
![]() 花火のデモと炎色反応クイズ - プチコン4で高校化学の学習?名前: 小川 邦久 リンク: https://kunisan.jp 日付: 2020年10月11日 ![]() ![]() タイトル: 花火のデモと炎色反応クイズ 公開キー: 4NAE3SEQD ![]() プログラムは以下の通りです。 ここ最近は短めのプログラムで公開というのが続いています。プログラミングのモチベーションが低下しており、仕方ないところではありますが、時間を見てもう少しまとまったものも久しぶりに作りたい所です。 ニンテンドー関連記事(リンク一覧): アケアカ版パックランドをゲームセンター版のように3ボタンでプレイ / 屋上から目薬 - プチコン4で37年前の雑誌に掲載のゲームをアレンジ移植 / ディスプレイを新調(Dell S2722QC 27インチ 4Kモニター) / プラグ&コンセント - プチコン4で35年以上前の投稿ゲームを再現 / プチダートレース - プチコン4でシンプルな2Dレースゲーム / ...(記事連続表示) 関連カテゴリー: ニンテンドー関連記事, プチコン4関連記事
![]() KING'S MAGNETIC MAGIC - プチコン4で磁石的な動きのゲーム名前: 小川 邦久 リンク: https://kunisan.jp 日付: 2020年10月3日 ![]() ![]() タイトル: KING'S MAGNETIC MAGIC 公開キー: 4V4Q383NJ ![]() ![]() ![]() プログラムは以下の通りです。 ゲーム的には「デモから強引にゲームにしちゃった」感が出てしまっていますが、まあ何とかまとまったかなという所です。ここ最近はプログラミングのモチベーションが下がり気味なので、ゲーム制作を止めるまでは行かないにしても、ゆっくりと作っていこうと思っています。 ニンテンドー関連記事(リンク一覧): アケアカ版パックランドをゲームセンター版のように3ボタンでプレイ / 屋上から目薬 - プチコン4で37年前の雑誌に掲載のゲームをアレンジ移植 / ディスプレイを新調(Dell S2722QC 27インチ 4Kモニター) / プラグ&コンセント - プチコン4で35年以上前の投稿ゲームを再現 / プチダートレース - プチコン4でシンプルな2Dレースゲーム / ...(記事連続表示) 関連カテゴリー: ニンテンドー関連記事, プチコン4関連記事 ![]() ※該当の記事タイトル一覧はリンク一覧から参照できます。
■ ホームへ
|