Hiragi(GKUTH)の日常
理系大学生の日記

規格外の動作は楽しい

アバター
Hiragi(GKUTH)
記事: 167
登録日時: 14年前
住所: 大阪府
連絡を取る:

規格外の動作は楽しい

投稿記事 by Hiragi(GKUTH) » 10年前

最近、BMPを手動で表示するとかいう謎のプログラムを延々と拡張、修正を繰り返してまして(勉強しろ)
折角ピクセル単位での色の管理ができるんだから明るさとか、白黒の境目を変更してみよう、とか思って
やってみました。
[BBvideo 640,480]http://i.gyazo.com/193a5e51b5bd61273da309f1d2a87e13.mp4[/BBvideo]
うん、いいね、
と思って、フルカラーでの明るさの変更してみようかなーと思って適当に値足してたら案の定、規格外の値を渡してしまいまして。
(GetColor(int r,int g,int b) 0-255の値を渡すとDxLibで使える色の値が帰ってくる)
まぁ、そのまま動かしちゃえってことで、動かしちゃいました。

[BBvideo 640,480]http://i.gyazo.com/2d12d48a1564df2e780321e08d70dcdb.mp4[/BBvideo]
なにこれキモい。
謎の動きをするようになってしまいました。でもこういうのは見てて楽しいですよね、それに原因が何なのかなーとか考察するのもまた面白い。(まだわかってないけど)


昔初代ファミコンで、スーパーマリオブラザーズにて、テニスというソフトをしながら適当に歩いてソフトを抜いてマリオのカセットを入れると、
256面と呼ばれる様々なステージで遊べるというモノが話題になりました。
ソレはたまたまマリオのワールドを格納するアドレスとテニスの歩数を格納するアドレスが一致していたために起きたようです。
つまり「バグ」の一種なんだろうと思います。もちろん8面以降のデータはありませんから、完全に規格外の動作をしていたわけです。
なのにステージとして確立している面もありましたし、見てるだけで昔の私はワクワクしていたのを覚えています。
まぁ私のプログラミングという存在を知り、始めるきっかけになったのは殆どコレが原因だったりするんですけどね。

やはり規格外という動作には未知の可能性を感じます。あまりにも無理やりな動作をさせるといろいろなところにダメージが及ぶ可能性もありますが、
またそれもドキドキ感があって素晴らしい。

仕様書通りの動作を求める職業においてのプログラマにとってはバグは永遠の敵ですが、趣味でするなら逆に楽しいものでもあるんだなー
と、なんとなく感じたHiragi(GKUTH)なのでした。

#この日記は動画貼り付けのテストでもある。なんかレイアウトが...
► スポイラーを表示

コメントはまだありません。