昔のゲーム

アバター
Ketty
記事: 103
登録日時: 11年前

昔のゲーム

投稿記事 by Ketty » 11年前

実は、昔のゲームがはちゃめちゃ好きなんです。
特に、ファミコン時代のやつ(スーファミではないです)。
ヤ○オクで、ばしゃばしゃ落札して、コレクションしてるくらい好きです。
毎月のお給料はパーですが、なんら問題ありません。

もちろん、全部実機でクリアしなければ!という使命感があるので、ファミコン本体でプレイしてます。
(Wiiバーチャルコンソール?・・・ソレってなんか違うんですけどぉ・・・。みたいな上から目線のソレです)

で、なんで昔のが好きかというと、
こんなしょぼいやつなら、自分でも作れそう!っていうぬるい期待感と、
箱の絵とゲームの絵がちゃうやん!っていうギャップです。

だからこそ、自分でゲームを作り始めて、改めて思うことは、
アイツラ・・・あんなちっこいメモリ領域で、アセンブラで、こんなゲームを!?・・・いったいどうやって作ったんだ??という不思議と、
この箱の絵、誰がどうやって描いたのか(開発中のゲーム画面からインスピレーション受けて描いた・・・わけじゃないよね?)・・・という不思議です。

今どきのパソコンで今どきのプログラミングで今どきのライブラリ様の恩恵にあやかって、(なんちゃって)制作してる自分としては、
当時のゲームというのは、まさしく魔法のような産物に思えます。

そこにシビレルあこがれる。というわけです。
だから、それをもっと知りたい、身に着けたい、体感したいと思う反面、
でも、そんなゲームを今作っても、誰も遊んでくれないんだろうな、という予測もできるわけで・・・。
やっぱり、プログラムも絵も、3Dに移行せねばならんのかなぁと悩みます。

3DCGですか・・・メタセコしか知らんけど・・・メッシュってなんだ・・・
床井先生の講義、もっと真面目に勉強しとくべきだったか・・・。

とか色々思い悩むのですが、とりあえず2Dでちゃんと遊べるものを完成させるまで、
なんちゃってでも開発し続けたいと思います。

そこには、あと5年くらいしたらきっとまた、
レトロゲームブームとか、チップチューンブームがくるからきっと幸せになれる、という淡い期待があります。
こういう期待は大事です。それを言いたいのです。

ヽ(`Д´)ノウワァン もうドットうつのつらい! ←本音

アバター
Ketty
記事: 103
登録日時: 11年前

Re: 昔のゲーム

投稿記事 by Ketty » 11年前

うぉっ話が進んでる!

>ISLeさん
なんか2Dが特殊だと思い込んでゲームを作らない言い訳にしてませんかね。
いいえ、してません。私はこの1年間、ゲーム製作をさぼった日は1日もありません!(^^)
(年末と年始とお盆と飲み会の日はさぼったので20日間くらいはさぼりましたが・・・、他の人よりかは集中して続けてると自負してます)

私の中には、ゲーム作るなら、3D作る前にまず2Dで慣れよう、という前提がありまして、
そうすると、おのずと先人の知恵や技術が気になります。
当時の制約されたハード性能の中で、仕方なく工夫した結果生まれた・・・と、一言で片づけたくない何かを感じるのです(^v^)
アイデアと、それを実現する技術がマッチしてそうなところに夢を感じるとでも言いますか、
時代がそうだったから、だけなのか、それとも、何か特別なものがあったのかというのが、気になるわけです。

その真実はわからないから想像してみる
⇒想像してもわからないので当時のゲームをプレイしてみる
⇒プレイしてみるとなぜか共感できてワクワクする

共感というのは、私の場合は、なるべく低スペックなパソコンでも同じように動くやつを作りたいのですが、
とすると、やっぱり計算量を少なく・・・絵の容量も節約して・・・一時オブジェクトを撤廃して・・・ロジックが複雑化してきた・・・やだなぁ・・・
とか考え込みます。
こういうジレンマを、当時のゲームプログラマの気苦労と重ねることで、なんとなく制作を続けてこれたように思うのです。
あとは、どうも今流行の最先端ゲームより、一昔前のゲームの方が熱中できる、という個人的な趣向もあいまってます(^^)

当時のサウンドをエミュレートする・・・については、
あれはどうやってるのか私は分からないですし、再現しようとは今は思ってません。
画面のカクカクと同期して音も途切れることから、やっぱり毎フレーム1音ずつ鳴らすプログラムをしてるのかな?と考察だけしています。

ISLe
記事: 2650
登録日時: 15年前

Re: 昔のゲーム

投稿記事 by ISLe » 11年前

いまのパソコンと比べたら当時のゲームはチープでしょうけど、当時のパソコンのスペック知ってますか?

どうしてロジックが複雑化するのか不思議です。
計算量を少なく・・・無駄な処理をするコードを削るのが楽しくないのですか?
絵の容量も節約して・・・キャラを動かすコードとは無関係ですよね。
一時オブジェクトを撤廃して・・・一時オブジェクトの意味を間違ってませんかね。バグの温床になりかねないわけで。

サウンドのエミュレート技術についてはDirectSoundを調べれば分かりますよ。
いまはとりあえず波形データを用意できればなんとでもなる時代ですし。
波形データをリアルタイムに作ることは負荷の高い処理なのでそのへんになるとスペックを要求しますが。

アバター
Ketty
記事: 103
登録日時: 11年前

Re: 昔のゲーム

投稿記事 by Ketty » 11年前

>ISLeさん
おつきあいくださりありがとうございます(^^)ヾ
いまのパソコンと比べたら当時のゲームはチープでしょうけど、当時のパソコンのスペック知ってますか?
そういえば当時のパソコンのことは調べたことがないです。
ゲームは、数百KB~数MBという世界だったと聞いた記憶がありますので、
パソコンはそれを動かしたり開発したりできるものと考えて想像すると…すごく低いように思います。
どうしてロジックが複雑化するのか不思議です。
え・・軽い・速いを意識すると、反比例してロジックは複雑になりませんか?
私はなりますが…。間違えてるのかな…。
計算量を少なく・・・無駄な処理をするコードを削るのが楽しくないのですか?
いいえ、楽しいです。気づくとそればっかりやってます。
でも、ふと振り返ると、それが目的になってしまっててゲーム制作としての進捗が滞ってるということに気付きます。
絵の容量も節約して・・・キャラを動かすコードとは無関係ですよね。
ごめんなさい。私の書き方が悪かったです。
これに関しては、私は、たくさんのパターンのキャラの絵をあらかじめ用意しておくのと、
パーツで用意したものを組み合わせて表現するやり方を想像して書きました。
後者の方が画像の容量は小さくなるけど、座標合わせする手続きが出る分、複雑化します・・・よね?
一時オブジェクトを撤廃して・・・一時オブジェクトの意味を間違ってませんかね。バグの温床になりかねないわけで。
え・・・ちょっと調べみますが・・・間違って覚えてしまってたのかな(o_o ;ヾ
計算の途中結果を退避するためのテンポラリ=一時オブジェクトと書いたしたつもりです。

私が最近よく思うこととして、自分が1年前に書いたソースがひどく不細工に思えます。
特にデバッグウォッチ用に途中休憩するためだけの変数がいっぱいあって。
今は、そういうのをなくしてすっきりさせたい、とか、今書いてるコードのレベルに合わせたいと思うのですが、
面倒だぁ・・・と言いたかったのですが、すみません、
私がコメントを思いつくままに書いたため、ご心配かけてしまったのかと思いますm(__)m
(いやだなぁというのも、本当にいやなのではなく、おふざけです^^;)
サウンドのエミュレート技術についてはDirectSoundを調べれば分かりますよ。
ありがとうございます。
ちらっと調べてみましたが、まだ私には必要なさそうでした。DTMソフトとかを作りたくなったら参考にします。

そういえば、上記でおっしゃっていたコンバートについてですが(すみません読み落としていました)
お仕事では、当時の仕様書をもらって、それをもとにお作りになったのですか(??)

ISLe
記事: 2650
登録日時: 15年前

Re: 昔のゲーム

投稿記事 by ISLe » 11年前

手段が目的になっちゃってますね。
当時を知らないから、そもそもどうしてそれをするのかってことが分かってないのではないでしょうか。
ファミコンのゲーム制作は当時のやり方でふつうのことなので、とりあえずふつうに作ったほうが良いと思うのですけどね。

キャラAを描けと命令すればキャラAを描くふうにしておけば、その中で一枚だろうがバラバラだろうが関係ないですよね。
このサイトの館や掲示板でも描画処理を分離する話は繰り返し出ていますよね。
ファミコンのような本物のスプライト機能ならもっと重要になる部分です。

移植については、メーカーにも資料が残ってなかったりして、多くは独自調べです。
実際のところ許可貰う前に勝手に作って提案したものもあります。


ところで、カセット1000本持ってたというのは壮大な勘違いでした。
ごめんなさい。
そもそもファミコンのカセット1000強タイトルしかないのです。
Wikipediaのタイトル一覧で確認してみたら、うろ覚えもありますが、200本程度でした。
ディスクシステムの持ってたの合わせても300本行きませんでした。
ダンボール箱に入れてたのは確かですがたいしたことなかったです。
#ほとんどがX68000買う1988年までに発売されたタイトルでした。

アバター
usao
記事: 1892
登録日時: 12年前

Re: 昔のゲーム

投稿記事 by usao » 11年前

同一タイトルを複数個所持する生粋のコレクターだったのかと思っていましたw
まぁ私的には
所持本数xに対する 大量に所持してるぞ感 f(x)=log(x+1) という感じで
f(x)の値が閾値3を上回ったあたりで既に 「x=すごい本数」 という感覚かな.

アバター
Ketty
記事: 103
登録日時: 11年前

Re: 昔のゲーム

投稿記事 by Ketty » 11年前

>ISLeさん
当時を知らないから、そもそもどうしてそれをするのかってことが分かってないのではないでしょうか。
そうですね。最近は少しずつ分かってきましたが、着手し始めたときは何もかもが不思議でした(^^)
このサイトの館や掲示板でも描画処理を分離する話は繰り返し出ていますよね。
あ、そこは大丈夫です。分離してます。
そのUpdateとDrawの中がごちゃごちゃしてるきらいがありますが。
移植については、メーカーにも資料が残ってなかったりして、多くは独自調べです。
実際のところ許可貰う前に勝手に作って提案したものもあります。
それはつまり、実際の動きをみて、仕様を逆起こしするのですか。
シューティングとかアクションならいざしらず、
RPGとかアドベンチャーみたいな物語があるゲームの場合は・・・無理ですよね(??)

>usaoさん
同一タイトルを複数個所持する生粋のコレクターだったのかと思っていましたw
同じくwww(^_^)
でもいますよね、同じやつを大量に所有してる人。ヤフオクでみかけました。
私もハード違いで同じタイトルを持つことはあります。

ISLe
記事: 2650
登録日時: 15年前

Re: 昔のゲーム

投稿記事 by ISLe » 11年前

スプライト・BGとか音源とかROMとRAMが明確に分かれてるとか、ゲームの動く仕組みがパソコンとは根本的に違っている部分がたくさんあります。
パソコンと作り方が違うというのはそういった部分がかなりを占めるわけですが。

更新と描画を分けるということについて、館に書いてあるくらいのことは心構えレベルです。
『描画処理』というカテゴリ単体でも適切な分離(モジュール化)は必要なのです。
環境に依存する部分を切り離すというのはプラットフォームに対して提供するゲームのようなプログラムを制作する上では特に重要なことです。

龍神録の作り方ではファミコンで動くゲームは作れません。
画像を分割して容量を減らすとかそういう問題でなく、根本的に違う部分があるのです。

移植の方法について詳しくは書けませんがストーリーのあるゲームでも関係ないやり方です。
分かるひとには分かると思いますが。
きちんと公式として問題ないと確認した上でリリースされてます。

セガサターン、ドリームキャスト、あとX68000でもたくさんゲーム買ってて、全部合計すれば軽く1000本越えるんですよね。
そこらへんの数字をうっかり間違って出してしまいました。

アバター
usao
記事: 1892
登録日時: 12年前

Re: 昔のゲーム

投稿記事 by usao » 11年前

私は何本ぐらいゲームをやってきただろう?と考えると
正確なところはわからないけど多分100~200程度ではないだろうか?
それに対して1000本という巨大数字! 1000本って消費し尽くせるのか? ということで計算してみたけど,

1本の消費にかかる時間を平均15時間とか仮定すると 全部で15000時間あればよい
→1年でこれを達成しようとすると,15000/365≒41.1 [時間/日] のプレイが必要で,これは物理的(?)に無理.
→N年で達成するなら 約 15000/(365*N) [時間/日] だけゲームに興じればよい.

20年間なら 約2[時間/日]. 予想外に普通に行けそう?
「ゲームは1日1時間」を守るなら40年程度か…

ISLe
記事: 2650
登録日時: 15年前

Re: 昔のゲーム

投稿記事 by ISLe » 11年前

セガサターンのゲームをいちばんたくさん買ってますが、一度も起動したことがないのがあるんですよね。
いつかプレイしようとまだソフトも本体も持ってます。
圧倒的にアクション系に偏っていますが、クリアするタイプのゲームはハマるとやたら時間を掛けるスタイル。
いまハマってるPSO2のプレイ時間が2年で3000時間超えてるあたり推して知るべしといったところですね。
我ながらいつプログラミング覚えたんだろうと思う。

アバター
usao
記事: 1892
登録日時: 12年前

Re: 昔のゲーム

投稿記事 by usao » 11年前

>2年で3000時間超え
→ 年中無休だとしても1日4時間以上やってる計算ですね