「keim」の編集履歴(バックアップ)一覧に戻る

keim - (2006/01/21 (土) 11:56:51) の編集履歴(バックアップ)


このドキュメントはNYSDLにて公開しています.

keimの妄想置場

一人の人間が一生の間に生み出せる作品数は有限.だけど妄想は無限.
時間的・技術的に作れるか分からないけど作ってみたいものを,とりあえず挙げてみて,その為に必要な技術や理論をここでこねくり回してみます.多少まとまったらここら辺とかにhtml化してみたいかも.しないかも.

もくじ




このページの位置付け

推敲中の文章置場.まとまって無いし,矛盾だらけだし,頭悪.文章力皆無なので,つっこまれて叩かれて鍛えていかないとまともな文書にならない.誤解を恐れず無知を恥じず書き殴る.




妄想

作ってみたいものを書いてみたり.

Small Irregular Programming Style

「ゲームなんて動けば良い」的なC++プログラミングスタイルを考える.

Invisible Vision 2

タイマン(サイバーコマンド)+リソース管理(アーマードコア).

Nomltest VS

「編隊を組み合わせる」はきっと戦略ゲームになる.

A R C A N A

弾幕Rez.

ぽけこん

非常に厳しい制限のある簡易Basic環境.

OpenGL retouch soft

OpenGL を使ったレタッチソフト.

TSSCP Notepad

TSSCP用MML専用に的を絞ったメモ帳.

トップへ
htmlプラグインエラー: このプラグインを使うにはこのページの編集権限を「管理者のみ」に設定してください。

感想

作ってて思ったことを書いてみたり.
トップへ

作製中

Sky Swimmers' Heaven

音楽シーケンス≒弾幕シーケンス.テンション&リラックス.

TSS Clipboard Player

Windowsプログラミングの総復習.自己顕示欲を刺激する仕組み.

未完成

Speed Shooter

考えるパズルと考えないパズルはどっちも面白い.

Invisible Vision

リソース管理ゲーのチューニングを練習.

ぶろっくくずし

ウェブランキングシステムの練習.

完成

Nomltest FS

単純作業は楽しい

Captrect

作業ステップ数が少ない≠使い易いUI

Colpick

作業ステップ数が多い≠色々出来るUI


開発

ゲーム作製環境

自分の扱ったことのあるゲーム作製環境の内,一応現役っぽいものを主観で比較してみます.
トップへ

Flash Actionscript 2.0

利点;ブラウザで動く.モーション作製が楽.
欠点;ごちゃごちゃで遅い.

As2.0はものすごく中途半端にオブジェクト指向が導入されている印象を持っています.綺麗なプログラムが書けないので再利用性が低い.でもAs3.0は結構ドラスティックに変わってるみたいです.あと「1つのスプライト=1つのオブジェクト」という概念はちょっと素敵.ただ,何にしても「ブラウザで動く」は最強な気がします.As3.0勉強しようかな.


Visual Basic

利点;小規模でそれなりのツールアプリケーション開発に使える
欠点;アクションゲームには不向き

Visual Basicはイベントドリブンプログラムと相性が良いように設計されているため,アクションゲーム等には不向きだと思います.一方,適当でそれなりのWindowsツールアプリ開発をする場合,かなり楽ができます.ゲーム用ツール作製(マッパーやスクリプター)や,コンフィグアプリ作製には結構使えると思います.


Visual C++(MFC)

利点;VBよりマニアックな挙動のツールが作れる.そこそこ早い.
欠点;かゆい所に手が届かない,アクションゲームには不向き

MFCは確かに簡単高速高機能で(C言語直書きよりはやや低速),とりあえずマニュアル通り打ち込めば動く物が作れるのですが,これもイベントドリブンベースで設計されているため,アクションゲーム等には不向きだと思います.ただ,ツール開発をする場合結構楽できるので,今でもツール開発には使っています.オリジナリティのある挙動を実装しようとすると急激に負荷が上がるのですが,それでもVBよりはマシ.あとCStringやCPtrListがちょっと楽.

あと,MFCの隠れた利点として,オープンソースな事が挙げられます.コード量は膨大ですが意外に分かり易く書いてあるため,結構読み易いです.MFCがいかにしてmain()を隠蔽しているかとか,かなり参考になりました.


Visual C++(EasyLinkLibrary)

利点;ゲームプログラミングの基礎を学べる.C言語なので早い.
欠点;デバッグがしづらい.C言語の割には遅い.

ベースはC言語+DirectX7なので,上の物よりは比較的高速.
EasyLinkLibraryは,公式ページが閉鎖してしまっていますが,別の方が引き継いで配布を行っているようです.Windowsプログラムの面倒な部分をマクロで隠しているため,デバッグがしづらいという欠点はありますが,ゲーム本体のプログラムに集中できます.ただし,60FPSとか時間単位で動かす場合,AddOnが必要になります.

このライブラリもオープンソースなので勉強になります.自分はこのライブラリのソースをトレースする事で,WindowsAPIでのゲームプログラミングに入りました.


Visual C++(WindowsAPI)

利点;満足感.
欠点;手間がかかる.

main()からほぼ全てを手作りでプログラミング.DirectXなんて軟弱なものは使いません.Bitmapデータ上にガリガリソフトウェアレンダリングです.これが出来ればほぼ何でも作れると言っても良いです.それ故,高難易度・高手間暇ですが,自由度と達成感はプライスレス.
ってか,素直にDirectX使えよ.


Visual C++(SDL+OpenGL)

利点;覚える事の少なさと応用性の高さ
欠点;低機能で手間がかかる.中途半端.

一応,現在の主力スタイル.
VCならDirectXの方が高機能で有利,SDLならGCCの方がマルチプラットフォームで有利.つまり,このVC+SDLの組み合わせはかなり中途半端.
このスタイルの利点は,覚える事の少なさと応用性の高さにあると思います.裏を返せば低機能で手間がかかるって事ですが.
VCはGCC+Makeに比べて開発が楽です.また,SDL+OpenGLはDirectXに比べ低級な関数しかサポートしていないので,自分の好きなように実装できます(つまり「ぐりぐり3Dなのにここまで低負荷」みたいな自己満足に浸れる.とはいえ,DirectXの方がグラフィックボードに恵まれているので分が悪い).



音楽作製環境

自分の扱ったことのある音楽作製環境の内,割りと使えると思ったものを主観で比較してみます.全体的にかなり古いので中古選びの参考程度に読んでください.

ハードウェア

QY20/70/100/300/700

YAMAHAのハードウェア音源+シーケンサ.現在新品買えるのはQY100位ですが,まさに音の出るおもちゃ.シーケンサ部も非常に使い易いです.ハードウェアシーケンサはソフトウェアには無い魅力があると思います.

SC55/88/88Pro/SD20

Rolandの汎用音源.現行最上位のSD90に触った事が無いので言及でき無いんですが,88Proってほぼ完成形な気がします.SC55/88と88Proの間には大きな差があるので中古で買うなら88Pro.汎用音源故に扱い易い音がそろっていて,汎用音源の癖にかなり際立った音が出せるみたいです.使いこなせば.俺は無理.

JV2080/XP50/XV5080

Rolandのマルチ音源.Roland特有のまとまり易い癖の無い音がそのまま高音質になった感じ.適当に重ねてもそれっぽく聞こえます.さらにちょっといじればかなり面白い音も出せて,↓のエキスパンションボードを指せば,AKAIサンプラーが無くともそれに近い音が出せます(言い過ぎ).SCからUpgradeの感覚ですんなり入れます.自分はこっちが先でしたが.

XP/XV Expantion Board

上のJV系に指すと扱える波形が増えるボード.とりあえず,お勧めは VintageSynth.生音系ならDrum'n'Baseか,Drums(XV用).あとDanceに入ってるループ使い易かったです.Piano(XV用)も,この価格帯で考えるとかなり高音質な部類だと思います.

X5DR

Korgのハーフラック音源.古いKorg特有の,全く協調性の無い,癖(アク)の強い音が,低価格で手に入る名機だと思います.

SE70

Boseのハーフラックマルチエフェクタ.かなり古いものですが,これ一つで大体の事が出来ます.コンプレッサとか結構素直で非常に重宝しました.

VL70m/WX11

YAMAHAの単音物理音源+ウィンドシンセ.ウィンドシンセってのは,T-Squareの本田雅人のアレです.とはいっても全然難しく無く,指使いはリコーダーと同じで,息の速度で音色が変わります.ちょっと慣れれば,簡単に表情のあるシンセ音の打ち込みができます.VL70mも,物理音源の癖に結構まとまりが良くて,でもちゃんと芯が残ってる音で使い易いです(SSHの1面のメロ).

ソフトウェア(商用)

ACID

SonicFoundaryのループシーケンサ(だっけ?).適当なサンプルCDがあれば,音楽知識無しでかなりそれっぽい音楽が作れるすげーソフト.ただ,自分色を出すのが大変な気もします.

CubaseSX

Steinbergの総合音楽作製環境.かなり高いソフトですが,それだけに出来る事も凄まじいです.使いこなせません.シーケンサが使いづらい印象があります.ミキシングでは高機能を楽々操作できて,つい余計なエフェクトを掛けたくなってしまいます.

VSTi:VirtualGuiterist

ギターサンプリングを鳴らすVSTインストゥルメント.面倒なロードや割り当て無しに,いきなりギターサンプリングが鳴ってくれるので非常に楽.本格的に使うにはサンプル数が少なくて物足りない&割高感がありますが,ちょっとしたDTMには結構重宝します.

VSTi:SampleTank2

マルチ音源のVSTインストゥルメント.普通のハードウェア音源とも遜色無く使っていけるくらい音質が良い.ただし馴染ませるためのエフェクトは必須.あと,結構重い.

Wavelab

Steinberg のwave加工ツール.普通に多機能wave加工ツールだけど,VSTプラグインが使えるのが魅力.デフォルトのエフェクタだけでもゲームBGM用マスタリング作業位なら問題無くこなせます.値段相応.

ソフトウェア(フリー)

Rebirth

リズムマシンのエミュレータ.元々リズムマシン超名機のエミュレータがフリー化された物で,これさえあればテクノのリズムは何でもこなせます(言い過ぎ).CDイメージなので導入がちと面倒ですが,プリセットのパターンをちょっといじるだけでも,BGMが出来ます.

KanaWave

擬音入力でSEが作れるソフトウェア.わりと皆さん使ってますね.下のTSSと相性バッチリな気がします.

TSS

データの軽さ,動作の軽さ,音の多様性,相当のポテンシャルを持ったソフトウェア音源.
TSS MML データの直打ち込みって結構高負荷なので,何とかしたいって思いから TSS Clipboard Playerの仕様を考えてます.TSSデータ作製環境はもっとしっかり構築して,将来的には自分のゲームのメイン音楽エンジンにしたいなぁ,とか思ってます.



  • Visual C++(WindowsAPI)でのCOMリンクがエグくて嫌いな処理です。自分がCOMに関する正しい知識に乏しいせいもあるんですけども...あと開発系のページは一階層下へ分割しても良いかもしれません。だって何食わぬ顔でみんなリンクできるじゃないですか(ウヒヒ -- わんきち (2006-01-18 07:15:26)
  • COMってDirectX位しか扱った事無いので(違ったかな?)よく分からないんですが,少なくともDirectXの実体取得とか何とかは面倒で嫌いです.
    今の所,何書いて良いのか迷走中なので,趣旨に合わないと思ったら開発ページはどっかに移動します. -- keim (2006-01-19 02:27:51)
  • もう、DirectX面倒臭い初期化処理はフレームワークに丸投げしてます。お陰で人の書いたコードをいっぱい直す羽目になりました。 -- 伍番茶 (2006-01-19 02:32:56)
  • DirectXフレームワークを作ろうと思った時期がちょうどDx7→Dx8に変わるタイミングだったので,当時,一気にやる気を無くしました.仕様変えすぎ.それがSDL+OpenGLを選択した理由の一つなんですが. -- keim (2006-01-19 02:44:46)
  • みんなめんどくさいと思ってるんですねー -- わんきち (2006-01-19 07:10:37)
  • TSSCPでちくちく書いたMMLをそのままプログラムで使用したい場合ってTSSCP用MMLパーサライブラリが欲しくなるんでしょうか? -- わんきち (2006-01-21 09:42:23)
  • TSSCPのマクロって,そこそこ複雑な文字列処理を含んでいるのと,そこそこメモリを食うのとで,今の所TSSCPパーサを関数にして公開するような予定はありません.tsscp+alphaで作ったデータをTSS FileにExportして使う事を想定しています.今バージョンでTSSファイル書出の冗長部分を無くすように修正しています. -- keim (2006-01-21 11:35:14)
名前:
コメント:
記事メニュー
目安箱バナー