keim - (2006/01/21 (土) 11:56:51) の編集履歴(バックアップ)
keimの妄想置場
一人の人間が一生の間に生み出せる作品数は有限.だけど妄想は無限.
時間的・技術的に作れるか分からないけど作ってみたいものを,とりあえず挙げてみて,その為に必要な技術や理論をここでこねくり回してみます.多少まとまったらここら辺とかにhtml化してみたいかも.しないかも.
時間的・技術的に作れるか分からないけど作ってみたいものを,とりあえず挙げてみて,その為に必要な技術や理論をここでこねくり回してみます.多少まとまったらここら辺とかにhtml化してみたいかも.しないかも.
もくじ
- このページの位置付け
- 妄想
- 感想
- 開発
このページの位置付け
推敲中の文章置場.まとまって無いし,矛盾だらけだし,頭悪.文章力皆無なので,つっこまれて叩かれて鍛えていかないとまともな文書にならない.誤解を恐れず無知を恥じず書き殴る.
- 日々の閃き思い付き:Simple Inspiration
- 推敲中文章:ここ
- まとめ文章:Soft Illness
- 作った物:Solid Image
- 実験物:
妄想
Small Irregular Programming Style
Invisible Vision 2
Nomltest VS
A R C A N A
ぽけこん
OpenGL retouch soft
TSSCP Notepad
TSSCP用MML専用に的を絞ったメモ帳.
感想
作製中
Sky Swimmers' Heaven
TSS Clipboard Player
Windowsプログラミングの総復習.自己顕示欲を刺激する仕組み.
未完成
Speed Shooter
Invisible Vision
ぶろっくくずし
ウェブランキングシステムの練習.
完成
Nomltest FS
Captrect
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言語の割には遅い.
ベースはC言語+DirectX7なので,上の物よりは比較的高速.
EasyLinkLibraryは,公式ページが閉鎖してしまっていますが,別の方が引き継いで配布を行っているようです.Windowsプログラムの面倒な部分をマクロで隠しているため,デバッグがしづらいという欠点はありますが,ゲーム本体のプログラムに集中できます.ただし,60FPSとか時間単位で動かす場合,AddOnが必要になります.
EasyLinkLibraryは,公式ページが閉鎖してしまっていますが,別の方が引き継いで配布を行っているようです.Windowsプログラムの面倒な部分をマクロで隠しているため,デバッグがしづらいという欠点はありますが,ゲーム本体のプログラムに集中できます.ただし,60FPSとか時間単位で動かす場合,AddOnが必要になります.
このライブラリもオープンソースなので勉強になります.自分はこのライブラリのソースをトレースする事で,WindowsAPIでのゲームプログラミングに入りました.
Visual C++(WindowsAPI)
利点;満足感.
欠点;手間がかかる.
欠点;手間がかかる.
main()からほぼ全てを手作りでプログラミング.DirectXなんて軟弱なものは使いません.Bitmapデータ上にガリガリソフトウェアレンダリングです.これが出来ればほぼ何でも作れると言っても良いです.それ故,高難易度・高手間暇ですが,自由度と達成感はプライスレス.
ってか,素直にDirectX使えよ.
ってか,素直にDirectX使えよ.
Visual C++(SDL+OpenGL)
利点;覚える事の少なさと応用性の高さ
欠点;低機能で手間がかかる.中途半端.
欠点;低機能で手間がかかる.中途半端.
一応,現在の主力スタイル.
VCならDirectXの方が高機能で有利,SDLならGCCの方がマルチプラットフォームで有利.つまり,このVC+SDLの組み合わせはかなり中途半端.
このスタイルの利点は,覚える事の少なさと応用性の高さにあると思います.裏を返せば低機能で手間がかかるって事ですが.
VCはGCC+Makeに比べて開発が楽です.また,SDL+OpenGLはDirectXに比べ低級な関数しかサポートしていないので,自分の好きなように実装できます(つまり「ぐりぐり3Dなのにここまで低負荷」みたいな自己満足に浸れる.とはいえ,DirectXの方がグラフィックボードに恵まれているので分が悪い).
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データ作製環境はもっとしっかり構築して,将来的には自分のゲームのメイン音楽エンジンにしたいなぁ,とか思ってます.
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)