今晩は。
色々あった就活ですが、取り敢えず二ヶ月で試験雇用してもらうことになりました。
取り敢えず今はいきなりですが、出向での開発に参加させて頂いています。
使用言語はC#とVBとXML
VB以外は触ったことのある言語だったのでなんとか理解できています。(自社開発のフレームワークにも助けて頂いては居ますが。)
話は飛びますが、最近(去年くらいの話ですが)PlayStationはPlay Doujinという企画を立てて日本のインディーズ作品の配信を強化するようになりました。
最初期は「ZUN × PlayStation®」と言う規格名だったのでそちらのほうが有名かもしれません。
6月には初の東方同人ゲームがvitaで出るようですし
それ以前でもいくつかの同人ゲームがPS4で配信されていたので買いました。
-クロワルールΣ
-アスタブリード
等など。(最初は同人ゲームだとは思えないほどクオリティ高くて知った時唖然としていました。)
その中でアスタブリードを開発した同人サークルのページを閲覧した際
http://edelweiss.skr.jp/
エフェクトシステムを作成しているという日記を見て、
(こういったエンジンやシステムは何で作っているのだろうか?[使用言語等など])
と言う疑問がわきました。
自分も過去に地形当たり判定情報用のマップエディタやマップチップエディタを作成したことは有りますが、
一番作りたい
-複数のウィンドウ(グラフィックが表示されるウィンドウ:他ツール関係をまとめたウィンドウ)があって、
-もっとコントロールを多用したGUIテイストなツール(テキストボックスに座標値を入力できたりするようなもの)
と言う形のものを作ったことはありません。
いい加減なんちゃってツールから脱却したいとは思っているのですが・・・

上記の画像のようなツール用のウィンドウを複数表示し、そしてツールウィンドウにはチェックボックスやラジオボタン、テキストボックスと言った物を配置、
そこから取得した情報をメイン描画用のウィンドウに渡してグラフィックの変化に対応させる・・・
と言った処理をつくるなら、どういった言語、SDKやフレームワークを使ったほうがいいのか?
また、複数ウィンドウ間での情報渡しと言った問題に直当たりしてしまいました。
試しにManaged DirectXを使い
C++/MFC (動いた:但しプロジェクトファイルが200MB)
C++/CLI(api.config関係の問題で動かせなかったので断念)
ただしManaged DirectXはDX9以降は未対応のようなので今後の拡張性を考慮すると却下(いつかはDx11以降にも対応させたい。)
SharpDXやSlimDXと言ったオープンソース系は日本語ドキュメントの圧倒的不足というオープンソース特有の欠点がネック。
となると残るのはWindows SDK + DirectX (今まで使っていた流れ)・・・
結局原点にもどるのかなぁ。
正直ツールウィンドウのコントロールの配置を.netのデザイナーのような感じで出来たらいいなと思って.net系を中心に探していたが・・・
それはそれなら、C++ Windows SDKプログラムで複数のウィンドウを同時に表示し、それぞれのウィンドウで取得した情報の受け渡しはどうやるのだろうか・・・?
取り敢えず学習用にdirectX9でグラフィックスを表示するメインウィンドウが有り、コントロール類が配置されたツールウィンドウ、各種情報が出力されるプロパティウィンドウを同時に表示し、ウィンドウ間でそれぞれの情報を共有(値渡し)する物を作りたい・・・がいまいち分からない(猫でも分かる第四版を読みながら)
(下記画像は作りたい物のイメージ)