DirextXライブラリとC言語の連携??

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
ぽわぽわら

DirextXライブラリとC言語の連携??

#1

投稿記事 by ぽわぽわら » 13年前

Visual Studio 2010 Expressを使用、C言語にて囲碁のようなゲームを作っています。
今のところは○(丸)や△(△)などの記号を並べて描写しているのですが、そろそろGUIが欲しいと思っていた矢先にDXライブラリのことを知りました。

私が作りたいのは…DXライブラリで座標を入力 → 数値データに変換してC言語に送信 → C言語で処理し、数値をDXライブラリに送信 → 描写

という流れのソフトウェアです。既にCUIで動いている部分は弄りたくないので、C言語部分の改変は最小限にしたいのですが、
現在のC言語プログラムを95パーセント以上はコピペしただけの状態で動くのでしょうか?(その場合、C言語のmain関数と、DXのmainに相当する関数では、どちらがmainの役割を果たすのでしょうか)

それとも、DXライブラリはC言語に似ているだけという話で、移植の際には別のアプリケーションとして1から組みなおす必要があるのでしょうか??

アバター
h2so5
副管理人
記事: 2212
登録日時: 15年前
住所: 東京
連絡を取る:

Re: DirextXライブラリとC言語の連携??

#2

投稿記事 by h2so5 » 13年前

まず、DXライブラリとC言語の関係の解釈が間違っていると思われます。
DXライブラリは名前のとおりライブラリですから、

 C言語→CUI
 DXライブラリ→GUI

のように独立しているわけではなく、

 C言語→CUI
 C言語 + DXライブラリ→GUI

のようにC言語からDXライブラリを使うことで画像を表示したりできる、ということです。
連携も何も、DXライブラリ自体がC言語から使うために作られているわけです。
ぽわぽわら さんが書きました:既にCUIで動いている部分は弄りたくないので、C言語部分の改変は最小限にしたいのですが、
現在のC言語プログラムを95パーセント以上はコピペしただけの状態で動くのでしょうか?
どのようなソースコードを書いているかによります。
描画処理や入力処理などが抽象化されていてゲーム本体の処理と十分に分離されていれば、移植するのは比較的簡単でしょう。
ぽわぽわら さんが書きました: (その場合、C言語のmain関数と、DXのmainに相当する関数では、どちらがmainの役割を果たすのでしょうか)
DXライブラリの(正確にはWin32アプリケーションの)main関数を使うことになります。

ぽわぽわら

Re: DirextXライブラリとC言語の連携??

#3

投稿記事 by ぽわぽわら » 13年前

返信ありがとうございます。

DXプログラミングではmain関数がwinmainになっていたのでわかりにくく感じたのですが、この部分+αだけ書き換えたら移植することができました。
キーボードで入力すべき値は仮の数値で固定していますが、プログラムが最後まで動いた段階で出力される「isyoku:OK」の文字(ここだけ臨時で追加しました)が出力されました。 (インプットやアウトプットなどについてはこれから学びます)

どうもありがとうございました。

閉鎖

“C言語何でも質問掲示板” へ戻る