・(´・ω・`)ぶいぐいつー? VGUIというのは、インリン・オブ・ジョイ・トイの略です。Valveはこの Windowsをパクったグラフィカル・ユーザー・インターフェイスをHL2の ウインドウやHUDにははもちろんのこと、Steamのような デスクトップアプリケーションにも使用しています。 MODソースコード展開先のsrc/public/vgui_controls 下には各コントロール(画面の部品)クラスのヘッダファイルが転がっていて現在55個ぐらい あります。これらコントロールのクラスを継承するなりそのまま使うなりして メニューやらボタンをプリプリっと作ればいいんです。 Valveの用意したこれらのクラスを継承するだけではどうしても解決できない問題 がある場合はsrc/vgui2/controlsの下に各クラスの ソース&プロジェクトファイルがあるのでそれを改造&ビルドして出来上がったスタティックライブラリを client.dllをビルドする際にリンクしてやって くださいな。でも、まあ、そんなに頑張るのはやめよ〜よ〜、他にもやることは一杯あるじゃない。 |
|||||||||||||||||||||||||||||
・画面の構成 全ての画面コントロールの基底クラスはPanelクラスになっております。ゲームの画面はPanelクラス もしくはPanelクラスを継承したサブクラスが親子の関係で組み合わせられて構成されております。 で、早い話が親コントロールの下に子コントロール、そのまた子コントロールがダラダラぶら下っていって ピラミッド社会を形成してるんですよ。 そのピラミッドの頂点に君臨してるのがクライアントのrootパネルなんですが、 それ自体は見えません、そっから何段階か下ったとこの子パネルたちが実際に我々が見てるパネルやウインドウです。 ・新規に作ったパネルやウインドウは使用目的によって以下のいずれかのパネルの子になるでしょうね。
コンソールから以下のコマンドを実行してみるとVGUI Hierarchyだかアラーキーだかいう コントロールの階層をツリー形式で表示してくれるウインドウが開きます。
・ツリー上の配色の意味はこう
・ウインドウの上側に並んでるチェックBOXを操作するとこんなにステキな機能が働きますよ
|
|||||||||||||||||||||||||||||
・すっごっいっでっすっね〜((C)所) これらのコントロールを駆使すればテキストエディタやWEBブラウザも出来ちゃうね!いらんけど。 |