12月27日 あぁまにあわなんだー

 じるるんは27日から冬コミのため東京出撃なのです。

というわけで、2面体験版を公開するために頑張って作業してたんですけど、年内間に合いませんでした。ごめんなさーい。

でも着々とバグとりは進んでいるので、来年1月中には間違いなく公開できるとおもいます。

−終−

12月19日 256色パレット合わせ

 数日前、ネット友人のラスコーさんから「WinGLで複数DARファイルを読み込んだ時、パレットが合わない〜」という悲痛な叫びがきこえてきたのです。WinGLというのは僕が神威開発に使っているライブラリで、グラフィックの描画が非常に高速であるという利点があるんだけど、256色専用という問題もある。DARファイルというのはWinGLが使うグラフィックデータの形式。

 で、不安になった僕は神威の一面でパレット合わせを実行。結果はこんなかんじ↓

981219_01.gif (25701 バイト)
パレット統一パターン。こんなかんじー
981219_02.gif (27018 バイト)
こっちもパレット統一

どこが違うんだ?とおもうかもしれないけど、よく見たら、背景のディザ(ざらざらしたパターン)がなくなって奇麗になってるのがわかるとおもう。開発段階はパレットを合わせるのが面倒なので、ディザ処理パターンでつくっていくけど、完成版は全面こういう奇麗なパターンになります(体験版の間はディザ付きの荒いパターンで勘弁してね)。あと、まだパレットを合わせただけで、パレットの最適化をしていないので、最終的にはもうちょっと奇麗になるとおもう。

こんな感じで僕のパレット合わせは見事成功!
しかしラスコーさんの作っているゲームは、パレット統一の条件がきびしくて、僕ではパレット合わせ方法がおもいつきませんでした。むにゅぅ

−終−

12月12日 ばぐとりばぐとり

ここのところ、プログラムの整理を中心に作業していました。で、今までこのゲームにおいて、キャラクターをZ軸順にソート(並べ替え)するのに、バブルソートというもっとも単純で速度の遅い方法をつかっていました。なぜかというと、開発当初「とりあえず動く物を作って、あとから高速化しよう」と思って適当にプログラムかいちゃったからなんだなーこれが。もう2年くらい前の話か。で、今回ようやくこれを連結リスト(メモリのアドレスを繋ぐ方法)で書き直しました。っても、気分的な問題だけで、速度なんか全然かわらないんだけどね。でも遅いマシンだと結構差がでるのかもしれない。

他には、とりあえず目に見える変更はこれ↓

981212_01.gif (24235 バイト)
ボスのパーツがこわれるようになった

今回、ボスの破壊フラグをようやく付けたのです。前回ボスの攻撃を公開したけど、ほんとにボスが攻撃してくるだけで全く破壊不可能だったのだ。で、今回こわれてもらうようにしました。あと、攻撃パターンもいくつか追加しました。まだ第一段階用なんだけど

さらに別の作業として、2面体験版公開にむけて、バグ取りをしてました。最近プログラムをいろいろ整理したせいで、あちこちなおさなきゃならない部分が発生しちゃったのです。よくもまあこんな酷いコード書けるものだと我ながらびっくりするくらい。あはは。

−終−

12月5日 蜘蛛に見えない・・・

 とりあえず、長い月日を経てようやく3面ボスが動きはじめました。でもまだまだ未完成なので、出来てる攻撃だけ紹介。↓

981205_01.gif (22839 バイト)
弾ばらまき(そのまんま)
981205_02.gif (21255 バイト)
ちゅどどーん

981205_03.gif (22350 バイト)
実際に動いてるのはあんまり奇麗にゃなかったりする

 

 まだ攻撃を作りはじめたばっかりで、これらは全て第一段階のものです。しかしこのボス、パーツの配置をかなりの期間やってただけあって、砲台が大量にあるのだ。なんでこんなに付けたんだ!?とりあえず、今日はかなり前に書いた3面ボス攻撃パターン図をみながらいろいろ再現してました。
 ちなみにこのボス、蜘蛛のつもりでデザインしたんだけど、いざ動かしてみたらにしか見えない!!名前考えなおさなきゃ

ところで2面体験版を公開する話だけど、もうしばらく待ってください。もうすぐホームページの引越しをする予定なので、それに合わせて公開しようとおもってます。(今までの体験版はくるいぬにHP容量借りて置いてもらってたんだよー)

年内にはなんとかしたいところ。

−終−

12月2日 苦労したのに・・・

 最近は仕事の納期とか出張とか、自分のマシンCPU乗せかえたりとかいろいろやってたのでちょっと神威開発がおくれてました。

で、

 今回はなにをしていたかというと次のような作業。

 このゲーム、敵キャラクタを配置するとき、毎回キャラクタ用のメモリを動的に確保していたのだ(連結リスト)。で、メモリ確保時にメモリ確保用関数「malloc」を呼んでいたのだ。
 ところが、この「malloc」関数、実行速度がめっちゃ遅いという話をちらっと聞いたのだ。神威のプログラムは、場合によっては同時に100近くのキャラクタを配置しにいくこともあります。つまり短い時間中に「malloc」関数を100回呼ぶ可能性があるのだ。これはいかん!ということで、いままで動的にメモリを確保していたところを、一番最初に一定量のメモリを確保して、そこから各キャラクタに振り分けてゆく(静的に確保)に変更する作業をしてたのです。

 ところが、さくっとおわると思ったこの作業にバグが発生。しかも全然とれない!これのおかげで随分なやみました。散々悩んだ挙げ句、昨日ようやくバグを駆逐!

結果、実行速度ぜんぜんかわらへーん

一体この数日の作業はなんだったんだろう・・・ 

−終−


神威ホームに戻る