今、開発環境が寂しくないですか?
各種データやデバイス・開発言語・プロトコルのフォーマットやI/Oポートの使い方、などなど、開発者のための資料になるものを扱う予定です。
ここに掲載する情報も募集しています。(リンクも張ります) 質問などなども受け付け中!
誰が何を知りたくて読んでいるのかもわからないので、更新頻度は低いかもしれません。
資料としてのまとまりと、まとまらない考えを点在させたもののふたつがここには混在してしまっています。
主にこのページは書きなぐりのメモ、各種何編は、ちょっとぐらいまとまってきたから分けたメモ、ってとこでしょうか。Java編はもともと別で作ってましたからまとまってませんけど。
規格も企画もいろいろあるけれど、うまくつながってくれればいいのに。
参考
現状のデバイスは、5.1chサウンド機能を持つものが登場してきてはいますが、実質的なサウンドフォーマットはステレヲ2chのMP3などがまだまだ流行っています。
次世代サウンドフォーマットは、いかにしてステレヲを超えたマルチチャンネルに対応してくるかにかかっているのではないでしょうか。
MPEG1から取り出されたMP3のように、DVDからサウンド部分だけ取り出されて普及することになるのでしょうか。
とりあえず、いろいろ雑誌には載っていたが書籍では簡単すぎてかどうか、なかなかなかったものが1冊出版されていたのでご紹介。DirectX系の本に、こういうのって載ってるのかな・・・。
参考
昔Intelが、CPUが同じであればどのOSでも同じデバイスドライバで機器を使えるような共通の仕組みを作ろうとしたことがあったようななかったような。
これは、どこまで可能なものなのか、検証してみませんか?
プログラムを作るには、まず目的と、設計が必要です。
既存の技術や規格を利用する場合、その資料を参照する必要があります。
インターネット関連のプロトコルや技術等は、RFCというものにまとめられています。
企業が独自に作った規格なども、PDF等のように公開されているものもあるので、それを利用すると、互換性のあるものを作ることができます。
そのほか、JPEGなどの画像ファイルフォーマット、MS-Word等の規格非公開のドキュメントファイルなど、数えてみればきりがありません。フォーマット解説のページに、いくつかの画像フォーマットを中心に、資料を作っています。
RFC等も、和訳グループがあります。
資料は、国内の物であれば、古くからのNIFTY等のパソコン通信でも開発、蓄積されているようです。
国際的に規格化されているものは、ISOやJISにもなっているので、そこでも正確な資料を探すことができます。HTML等の規格を作っているのは、w3cというところです。
IETF?が昔はHTML規格を作っていたのですが、アプリケーションを作る企業が集まって、HTMLを決めていくようになってしまいました。
提案するのは、ちょっと難しいかも?XMLは、まだそれ自体の規格が決まったところで、HTMLなどのタグは決まっていません。(XHTML等もありますが)
新しい規格を作ってもかまいません。
幅広く使ってもらうためには、規格だけでなく、実装(実際に動作するプログラム)を作ったり、規格資料を作ったりすることなどが必要かもしれません。
RFC等にすることもできるかもしれません。資料の他に必要なのは、アルゴリズムの知識かな?
そのあとに、プログラム?
486DX2以上(FPU搭載)のCPU 推奨(EASTRAY)
使用言語 High C Compiler v1.7 (ANSI C準拠 32bit C言語) またはJava言語かもしれず最近、CPUパワーが上がってきているので、EASTRAYを使って動画を作るのも、そんなに時間がかからなくなっています。静止画だけではなく動画も多少の時間をかければ作れてしまいます。EASTRAYの文法を拡張するという形で新しい言語もどきを作ってみましょう。言語と呼べるものかどうかわからないので、もどきと呼ぶことにします。
はじめに、どのようにして静止画用のEASTRAYに動画を作成させるのかを考えてみましょう。原理は単純で、拡張言語で単一のプログラムから動画の一枚一枚に対応したEASTRAY用のRAYファイルを作成するだけです。あとは、それらをbatファイルなどで一括してEASTRAYで計算させ、動くざんすなどで動画にします。ハードディスクもかなり消費します。
~.MRY → ~001.RAY,~002.RAY,... → ~001.TIF,~002.TIF,... → ~.MOV時間と動きに関係する部分を拡張します。この拡張方法を間違うと、言語処理プログラム(一応、インタプリタである)が複雑になって、何度も作り直すことになります。私も、1度作りはじめてみたのですが、複雑になってしまって作り直さなくてはならなくなってしまいました。さて、しばらく御無沙汰してしまいましたが、続きに行きたいと思います。インタプリタとして必要なのは、何でしょう? 式の計算をするプログラムや、構文解析プログラム、いろんなものを作らないといけませんが、そのまえに、どういう機能を持たせるのかを決めないといけません。それが決まればあとは言語としてどういうふうにそれらを記述できるようにするかを決めて、式の計算なんかはその後でも充分間に合います。今回は、C言語で作るんでしたっけ?(^^; 仕様が決まってから、言語や、場合によってはCPUやアセンブラの選択をします。(そこまで考えることはほとんどありませんが)
モーションキャプチャ、できればおもしろそうなんですが、今回はそこまではせず、将来的に拡張できるような仕様で考えてみましょうか?
EASTRAYは、オブジェクトの考え方が取り込まれているので、そのオブジェクトに動きの情報を持たせてやれば、だいたいうまくいくように思えます。しかし、同じオブジェクトを複数使いたいときがあります。同じオブジェクトでも動きを持たせると同じ形をしているとは限らないので、インスタンス化ができなければいけません。Java言語などのオブジェクト指向言語ではおなじみのインスタンスとは、実体とでもいうべきもので、解説は省略してもよいでしょうか。・・・続く
続くのですが、続きます。MCL? モデル・コントロール・ランゲージ
コマンド、継続時間
音楽用のMMLにヒントを得た方式かも・・・。
動きを記録するには、時間軸を扱う必要ありで。キャラクタに基本的な動きを定義して、それを外部から繰り返し呼び出してしまいましょう。
BNF表記
言語を作成するときの文法を書く言語・・・。詳細は、聞いてみるか、サーチエンジンで調べるとどうなるかな。CRC ( Cyclic Redundancy Check; 巡回冗長検査 )
データ転送の時のエラーチェックには欠かせませんDirectX
一見複雑に見えて実は単純な割り算を行います。参考文献
どこかにあったかなぁ・・・。
Windows用語
現在DirectX9があるようだ。DirectDraw, Direct3Dなどのグラフィック表示API、サウンド系API
DirectSound、ネットワークのDirectPlayなどから構成されるゲーム系技術の総称。
Win32 APIなどを使わないはずが無いというか、ほとんどMFCと馴染まない。 (ドキュメントもサンプルもWin32
APIベースなので、馴染む方法が不明なのだ。 今はMFCベースで使っている。)
DirectDrawはTOWNSのスプライトの概念と似てはいるが大まかに違うので、違いがわからなければ泥沼であろう。
DirectX6 SDKには DirectX5 日本語ドキュメントが含まれているが、使えるようになってから読むほうが良いか。