約 5,266,904 件
https://w.atwiki.jp/gamexprogram/pages/11.html
共通 絵を表示する ゲームを作るには、まず絵を表示させないと話になりません。 ノベルゲームなら…という人もいるかも知れませんが、 現在のノベルゲームには大抵絵は入っているものです。 では、さっそくソースコードを見ていきましょう どんな絵でもいいですが、今回表示する絵は、↓の絵です。 #ref error :ご指定のファイルが見つかりません。ファイル名を確認して、再度指定してください。 (Player.png) ソースコード DrawPicture.cpp 実行結果 解説 LunaFile SetRootPath(0, "data", "data.bin") DebugかReleaseのフォルダの"data"フォルダから探しますよ ということです。また、"data"フォルダがなかった時は、 "data.bin"から探しますよという意味です。 LunaFile SetCurrentDirectory("graphic") "data"フォルダの中の"graphic"からファイルを読み込みますよ という意味です。 LTEXTURE PlayerTex = INVALID_TEXTURE; テクスチャの初期化です。 PlayerTexの所は他の名前に変えても実行できます。 ただし、その際はPlayerTexをすべてその名前に置き換えてください。 PlayerTex = LunaTexture CreateFromFile("Player.png", FORMAT_TEXTURE_2D, COLORKEY_BLACK); テクスチャの読み込みです。 COLORKEY_BLACKとは、画像の背景色を指し、透過色の事です。 また、カラーキーの設定を有効にするには Luna3D SetColorkeyEnable(true); この記述を後に入れてください。 入れないと設定が反映されません Luna3D Clear(D3DCLEAR_TARGET, D3DCOLOR_XRGB(0, 0, 0) ); 画面のクリアです。 D3DCOLOR_XRGB(0, 0, 0)の数値は画面の色を指しています。 この数値はRGBで、左からレッド、グリーン、ブルーとなっています。 また、COLOR_BLACK等でも代用できます。 Dst.Set(PlayerX, PlayerY, PLAYER_WIDTH, PLAYER_HEIGHT); Src.Set(0, 0, PLAYER_WIDTH, PLAYER_HEIGHT); テクスチャの描画先と、描画元です。 .Set(X座標, Y座標, 絵の横幅、絵の縦幅)となっています。 補足 include ~ アプリケーション初期設定まで(1行目~78行目)はほぼ共通なので、 ヘッダーファイル等にまとめておくと良いかもしれません。 共通に戻る
https://w.atwiki.jp/kidscindy/pages/240.html
シンディモード ツールバーの「角度」をクリックし、角を表示させたい点が2番目になるように3点を選ぶと、角度が表示される。 KSEGモード 画面上に3点を描画し、角を表示させたい点が2番目になるように3点を選ぶ。すると、ツールバーの「角度」が点灯するので、選択すると角が表示される。 直線を選んでも、その間の角は表示はされないので注意。 また、今のところ角が何度であるかと,180度以上の角度は表示されません。 角が何度であるかを表示する 1,角度を表示してる状態で、角度線を選択する。その際、角度が黒く塗りつぶされた状態で選択されている。2,設定を選ぶと、その角度の名前が表示されるので、それを覚えておく。名前はag1などとなる。数字は角を作った順番。この時、その角のスタイルを変えることができる。色に関しては、RGBを選択。3,「文字を描画する」と同様の手順で文字を打つ。この時に、2で覚えた名前を使う。文法は次の例。”∠ABCの度数を表示するのであれば、∠ABC={ag1_}と打つ。”注意点としては、角度を表示する際に、下側にある点から選択すると、度数はプラスで表示。上側から選択すると、マイナスで表示される。
https://w.atwiki.jp/kokeiro/pages/67.html
画像を表示する 画像を表示するため、title関数を書き換えます。DrawGraph関数については本家サイト様の関数リファレンスを参照してください。 title.cpp ... void Title(){ DrawGraph(0,0,TitleGraphic,FALSE);// 画像を表示 DrawString(100,100,"タイトル画面です",white); DrawString(100,120,"Zでゲームをはじめる",white); if( Key[KEY_INPUT_Z] == 1 )// Zキーが押されたらゲームを始める GameState = 1; } 画像は表示されましたか?もう必要ないのでmain関数のprintfDx関数は消しましょう。今は面倒くさいので作りませんが、クリア画面、リタイア画面にも同じように画像を表示させてもいいでしょう。ゲーム画面は背景画像より先に必要なものから追加していきます。
https://w.atwiki.jp/keitainobunaga/pages/60.html
・地方 ┣東北天気 ┣関東天気 ┣東海北陸天気 ┣近畿天気 ┣中国四国天気 ┗九州天気 ・全国天気
https://w.atwiki.jp/aspmvc/pages/16.html
Viewで文字を表示する % Responce.Write("こんにちは!")% %="こんにちは!" %
https://w.atwiki.jp/rgss2study/pages/25.html
入門編・8 シューティングゲームもどきを作る 自機を表示する 今回は、前回作ったオブジェクトを使って、自機の表示を行います。かなり長丁場ですが、 ゲームオブジェクトとスプライトを対応させる一歩です。 これが出来たらもう工夫次第でいろいろ作れるので、頑張りましょう。 自機の画像は、作るのが面倒ならこれを使ってください。 もちろん緑透過で。 素材管理のインポートで、Charactersのところに入れておいてください(サイズが似てるので)。 半透明も含めた透過の処理が簡単なのもRGSSのありがたいところですなあ。 スプライトクラスを作成する 以前の背景では、スプライトはアニメーションも移動もしないものだったので、そのまま使いましたが、 あるオブジェクトと連動させたいような場合は、新たにスプライトクラスを作ります。 デフォルトの方法に倣って、Sprite_MyMachineクラスのスプライトを作成します。 #============================================================================== # ■ Sprite_MyMachine #------------------------------------------------------------------------------ # 自機表示用のスプライトです。Game_MyMachine クラスのインスタンスを # 監視し、スプライトの状態を自動的に変化させます。 #============================================================================== class Sprite_MyMachine Sprite #-------------------------------------------------------------------------- # ● 公開インスタンス変数 #-------------------------------------------------------------------------- attr_accessor myMachine #-------------------------------------------------------------------------- # ● オブジェクト初期化 # viewport ビューポート # z スプライト、ビューポートのz座標 # myMachine キャラクター (Game_MyMachine) #-------------------------------------------------------------------------- def initialize(viewport,z,myMachine) super(viewport) @myMachine = myMachine self.bitmap = Cache.character(@myMachine.imgfile) self.z=z self.viewport.z=z update end end やや見慣れない記述が目立ちます。とりあえずコピーしてください。 class Sprite_MyMachine Sprite これは、シーンでもやった、クラスの継承です。Spriteの基本機能はそのまま使いたいので、 Spriteクラスを継承させています。 attr_accessor myMachine これは、自機の座標のようにクラスの持つ変数ですが、ここでは数字ではありません。 Game_MyMachineクラスのオブジェクトです。 このスプライトは、この変数で指定したGame_MyMachineオブジェクトと連動したスプライトです。 Game_MyMachineオブジェクトの位置などが変わると、スプライトの位置も自動で変わるようになります。 ビューポート スプライトは、内部にビューポートというものを持っています。 ビューポートというのは、画面上に存在する四角形の穴のようなもので、画像表示の際に、 ビューポートで定めた四角形の中だけに画像を描画する という決まりがあります。 これについてはここではあまり詳しくは述べません。後ほど自機を動かせるようになった時に少し実験をしてみます。 使い方によっては面白いものですが、通常のスプライト(今回の自機も含む)は画面の場所によって切り取ったりしないので、 このビューポートは『画面全体』を指定してやります。 Sprite_MyMachineの使い方 記述の説明は後にして、とりあえず使い方から見ていくことにします。 #-------------------------------------------------------------------------- # ● 自機の作成 #-------------------------------------------------------------------------- def create_my_machine @myMachine = Game_MyMachine.new @v_myMachine = Viewport.new(0,0,544,416) #画面全体 @s_myMachine = Sprite_MyMachine.new(@v_myMachine,100,@myMachine) end 先ほどのSprite_MyMachineクラスのinitializeメソッドには、 def initialize(viewport,z,myMachine) と、()の中にいくつかの要素(viewport,z,myMachine)が入ったものが記述されていました。 これは、引数(ひきすう)と呼ばれるもので、newする際に、この引数に対応する要素を()の中に入れる必要があります。 create_my_machineメソッドの @s_myMachine = Sprite_MyMachine.new(@v_myMachine,100,@myMachine) がその部分です。 @v_myMachineがviewportに、100がzに、@myMachineがmyMachineにそれぞれ対応する要素です。 @myMachineは、前回作成したGame_MyMachineクラスのオブジェクトですね。 @v_myMachineは、スプライトに対して適用するViewportクラスのオブジェクトで、引用部分三行目でnewによって生成しています。 Viewportは、RGSS2組み込みのクラス(いじれない部分)で、その使い方、newの仕方などはヘルプ→目次→RGSSリファレンス→RGSS組み込みクラスに記述があります。詳しくは省略しますが、画面全体を指すビューポートをnewしています。 そして、これらのオブジェクト、および100という数値を引数として、スプライトをnewします。 すると、これらの引数を使ったinitializeメソッドが実行されます。 initializeメソッドの実行 def initialize(viewport,z,myMachine) super(viewport) @myMachine = myMachine self.bitmap = Cache.character("MyMachine") self.z=z self.viewport.z=z update end では、initializeメソッドの中身を見ていきましょう。 1行目が定義開始、 2行目は、このクラスの派生元であるSpriteクラスのinitializeメソッドを、viewportを引数に実行しています。 この内容はRGSS内部なのでよく分かりませんが、viewportをスプライトに適用しているはずです。 今後Spriteクラスから派生させたクラスを作る際も、このsuper(viewport)は決まって行います。 3行目は、Sprite_MyMachineクラスのインスタンス変数であるmyMachineに、引数として受け取ったmyMachine(Game_MyMachineクラスのオブジェクト)を代入しています。 ここで、Sprite_MyMachineとGame_MyMachineの間に対応関係が出来るわけです。 4行目では、見慣れないself.というのが出てきます。 これは、自分自身のオブジェクトを指す単語で、 self.bitmap = Cache.character("MyMachine") は、このオブジェクトの変数bitmapに、MyMachineの画像を割り当てるという意味です。 以前背景でやった時は、 @background.bitmap = Cache.parallax("Mountains") のように、Scene_Shootingクラスから指定しましたが、このようにSpriteクラスの内部から指定することも出来ます。 処理内容としてはどちらも変わりません。 5,6行目では、スプライト及び、スプライトに対応するビューポートの、z座標を定めています。 z座標というのは、スプライトの重ね合わせの時に関係する数値で、数値の大きいスプライトほど上に表示されます。 また、ビューポートにもz座標があり、このz座標はスプライトと同じ値でないとスプライトが表示されません。 なぜビューポートにz座標を定めたのかよく分からないのですが、多分スクリプトの内容によっては便利なのでしょう。 7行目のupdateが、スプライトとゲームオブジェクトを連携させるための重要な行です。 スプライトを生成したのはいいのですが、今の段階ではゲームオブジェクトのx,y座標と、スプライトのx,y座標が 連動していません。 Sprite_MyMachineクラスに、以下のupdateメソッドを追加します。 def update self.x = @myMachine.x self.y = @myMachine.y end スプライトの持つGame_MyMachineオブジェクトのx,yの値を、このスプライト(self)の x,y座標に代入します。 これにより、このupdateメソッドが呼び出されるたび、スプライトの位置が@myMachineに指定したオブジェクトMyMachineの 座標に合わせて修正されます。 このupdateメソッドは画面の更新のたびに呼び出されます。 さて、実行してみましょう。 背景の上、中央左のあたりに自機が表示されたら成功です。 後処理も忘れず さて、うまくいったら後処理もやっておきましょう。 Scene_Shootingクラスのdispose_my_machineメソッド(前回作ったやつ)に以下の行を追加します。 @v_myMachine.dispose @s_myMachine.dispose これについては今までと同様なので特に説明は不要でしょう。 引数の意味 引数の意味を最後に説明しておきます。 と言っても、何となく分かってれば読まなくてもいいですが。 引数は、作るオブジェクトにバリエーションを持たせるためのパラメータなのです。 zの値を変えれば、z座標の違う自機を作成したり、 例えば、今回はやっていませんが、ファイル名を引数にすればいろんなグラフィックの自機を場合に応じて作れるようになります。 また、自機の初期位置を決めることも出来そうですね(余裕があれば、Game_MyMachineクラスを初期位置を引数で渡すように改造してみましょう)。 さて、次は入力を受け取ります。だんだんゲームっぽくなってきますよ。 前へ・次へ すごくわかりやすいです!! わかりやすい講座を探していたのでありがたいです。 続き楽しみにしています! -- (名無しさん) 2009-04-11 17 41 26 コメントありがとうございます。 こんなに早く反応があるとは……。 ヘルプの解説を含め、シーンの構造などを説明しているものが ほとんどなかったのが不満で、作ってみました。 本当に実はあんまり分かっていないので、至らないところも 多いかと思いますが、よろしくお願いします。 -- (管理人) 2009-04-11 18 58 22 すいません、『自機を表示する』の記述に誤りがありました。 updateの中身を書かないと、自機の位置が正しく反映されません。 記事を修正しておきます。 -- (管理人) 2009-04-14 21 59 20 ツクール古参ですがRGSSに四苦八苦でした(^^;) が、シーンの基本構造を解説した記事にガチで救われました 応援してるんで、がんばってください!!続き楽しみです。 -- (うきぶくろ) 2009-04-27 12 17 15 コメントありがとうございます。 一番書きたかったそのあたりは書いたもののなんだか忙しい+ 自分でもRGSSの解読に手間取っているためになかなか更新できていません。 どの程度まで書けるか分かりませんがよろしくお願いします。 -- (管理人) 2009-04-28 08 40 35 敵キャラを作成する・2の最後の方に、 updateの際に敵キャラを扱うスプライトの更新を行うのを忘れていたのを修正しました。 イタリック体で修正が入っている部分です。 -- (管理人) 2009-05-02 22 10 23 UFOが見にくかったので画像に縁取りをつけました。 -- (管理人) 2009-05-04 08 56 56 ホントにスゴイと思います。尊敬します。 大変だと思いますが少しずつでいいんで頑張ってください。 -- (ユウ) 2009-05-12 00 07 40 コメントありがとうございます。 恐らくこれを見て作る側はすぐなんでたいそうもどかしいと思いますが……。 ところで、今のところはちゃんとこの講座の通りで動くようになっているのでしょうか? 一応チェックはしてますが、多少ポカはすると思ってたので指摘が無いのがむしろ意外です。 -- (管理人) 2009-05-13 21 11 52 大丈夫です。ちゃんと動いています。 頑張ってください。続きが楽しみです。 -- (ユウ) 2009-05-18 01 06 59 1段目と言われている部分は『RGSS2』 2段目と言われている部分は『プリセットのスクリプト』 と言われると、より解り易い表現なのでは? -- (通行人) 2009-11-05 12 48 40 @enemies[i] = Game_Enemy.new(200 + rand(312), rand(384)) ↑argumentErrorが発生しました。wrong number of arguments(2 for 0) どうすればいいでしょうか、頼みます。 -- (help me!!) 2010-01-05 00 22 50 マウス入力はできますぜ。 Win32とかなんやらをつかって。 キーボードもできるみたいですが見つかりません。 探してます。 -- (シャミラ) 2010-03-24 05 28 28 勉強させてもらってます、とても参考になります。 入門編・10 にあるGame_Ememiesのクラスの attr_accessor ;s_enemies ですが、;を に変えないとエラーを吐きますので コピペでやった人は修正した方がよさそうです -- (邯鄲) 2010-09-04 17 27 18 @enemies[i] = Game_Enemy.new(200 + rand(312), rand(384)) ↑argumentErrorが発生しました。wrong number of arguments(2 for 0) Game_Enemyクラスって最初からありますよね。 それが原因では? -- (ぽん) 2010-10-03 23 11 42 製作初心者なのでとても助かります!! -- (ありがとうございます!) 2011-02-05 12 44 03 セーブ/ロードまわりはMarshalを使ってスクリプトで記述されていますし、 ファイルの読み書きもRubyと同様にできますから、 セーブやロードをいじるのはスクリプト操作でできることでは? -- (ななし) 2011-05-20 13 04 19 ダンジョンなら3D化できると、下記サイトに書いてありました。 -- (だれかさん) 2011-08-18 07 26 19 アルバイトはじめましたd(´∀`*)グッ♪ http //64n.co/ -- (私だ) 2012-01-09 04 49 41 風俗店を探よりココ!!男性は報酬あり!d(´∀`*)→ http //www.44m4.net/ -- (江梨子) 2012-08-20 17 11 02 名前 コメント すべてのコメントを見る
https://w.atwiki.jp/rgss2study/pages/23.html
入門編・6 シューティングゲームもどきを作る 背景を表示する 今回は内容的には、画像の表示を行います。 画像の表示はスクリプト入門の基礎編でもやりましたが、Cacheという、通常使われる技術を使っていなかったので、それを使って記述します。また、背景については作るのが大変なので、デフォルトで入っている素材から Graphics/Parallaxesに入っているMountainsを転用します。 画像の表示 画像の表示は、以下の記述で行います。 @background = Sprite.new @background.bitmap = Cache.parallax("Mountains") 今回は、変数名にbackgroundを使いましたが、これは何でも構いません。 1行目では、@backgroundという変数に割り当てて、新規のスプライトを作成しています。 スプライトは、画像を表示するための基本原理で、ゲーム画面中に存在する板のようなものです。 2行目で、そのスプライトに画像を割り当てています。 スプライトは、作成しただけでは透明な板です。そのスプライトのbitmapに画像を割り当てることで、絵を映した板になります。 実行のタイミング では、この2行をどこに入れるべきでしょうか。 背景画像は、シーンのメインループが始まる前から存在しているべきですから、開始処理、startのところに記述しましょう。 startメソッドの部分を、このように書き換えます。 def start @background = Sprite.new @background.bitmap = Cache.parallax("Mountains") end 実行してみると、背景画像がフェードインで表示されると思います。 メソッドごとに分ける さて、このままでもいいのですが、この調子でstartに記述を続けていくと、startの中身がどんどん見にくくなってしまいます。 そこで、デフォルトのスクリプトの記述にならい、別名のメソッドを作り、そのメソッドの中に処理ごとに記述を小分けにします。 背景を表示するメソッドなので、create_backgroundとでもしておきましょう。 def start create_background #背景を作成 end startメソッドをこう書き換え、スクリプトの一番下、最後のendの上の行に、 def create_background @background = Sprite.new @background.bitmap = Cache.parallax("Mountains") end と追加しましょう。startで、create_backgroundが呼び出され、別途下に定義したcreate_backgroundが実行されることになります。実行すると同じ結果になります。 画像を解放する さて、スプライトを作成して画像を読み込み、表示したわけですが、このスプライト、画像は、コンピュータ内では記憶領域を確保してそこにデータを置いてあります。 そして、そのままではシーンが終了しても残ってしまいます。記憶領域がもう使わないもので占領されるため、メモリが余計に消費されてしまいます。 作成したスプライト、読み込んだ画像は、シーンが終わる時に解放するのがルールになっています。 シーンが終わる時に実行されるメソッドterminateを、以下のように書き換えましょう。 def terminate dispose_background #背景を解放 end そして、dispose_backgroundメソッドをcreate_backgroundと同じように定義します。 def dispose_background @background.bitmap.dispose @background.dispose end これで、シーン終了時に背景画像を解放できるようになりました。 前へ・次へ すごくわかりやすいです!! わかりやすい講座を探していたのでありがたいです。 続き楽しみにしています! -- (名無しさん) 2009-04-11 17 41 26 コメントありがとうございます。 こんなに早く反応があるとは……。 ヘルプの解説を含め、シーンの構造などを説明しているものが ほとんどなかったのが不満で、作ってみました。 本当に実はあんまり分かっていないので、至らないところも 多いかと思いますが、よろしくお願いします。 -- (管理人) 2009-04-11 18 58 22 すいません、『自機を表示する』の記述に誤りがありました。 updateの中身を書かないと、自機の位置が正しく反映されません。 記事を修正しておきます。 -- (管理人) 2009-04-14 21 59 20 ツクール古参ですがRGSSに四苦八苦でした(^^;) が、シーンの基本構造を解説した記事にガチで救われました 応援してるんで、がんばってください!!続き楽しみです。 -- (うきぶくろ) 2009-04-27 12 17 15 コメントありがとうございます。 一番書きたかったそのあたりは書いたもののなんだか忙しい+ 自分でもRGSSの解読に手間取っているためになかなか更新できていません。 どの程度まで書けるか分かりませんがよろしくお願いします。 -- (管理人) 2009-04-28 08 40 35 敵キャラを作成する・2の最後の方に、 updateの際に敵キャラを扱うスプライトの更新を行うのを忘れていたのを修正しました。 イタリック体で修正が入っている部分です。 -- (管理人) 2009-05-02 22 10 23 UFOが見にくかったので画像に縁取りをつけました。 -- (管理人) 2009-05-04 08 56 56 ホントにスゴイと思います。尊敬します。 大変だと思いますが少しずつでいいんで頑張ってください。 -- (ユウ) 2009-05-12 00 07 40 コメントありがとうございます。 恐らくこれを見て作る側はすぐなんでたいそうもどかしいと思いますが……。 ところで、今のところはちゃんとこの講座の通りで動くようになっているのでしょうか? 一応チェックはしてますが、多少ポカはすると思ってたので指摘が無いのがむしろ意外です。 -- (管理人) 2009-05-13 21 11 52 大丈夫です。ちゃんと動いています。 頑張ってください。続きが楽しみです。 -- (ユウ) 2009-05-18 01 06 59 1段目と言われている部分は『RGSS2』 2段目と言われている部分は『プリセットのスクリプト』 と言われると、より解り易い表現なのでは? -- (通行人) 2009-11-05 12 48 40 @enemies[i] = Game_Enemy.new(200 + rand(312), rand(384)) ↑argumentErrorが発生しました。wrong number of arguments(2 for 0) どうすればいいでしょうか、頼みます。 -- (help me!!) 2010-01-05 00 22 50 マウス入力はできますぜ。 Win32とかなんやらをつかって。 キーボードもできるみたいですが見つかりません。 探してます。 -- (シャミラ) 2010-03-24 05 28 28 勉強させてもらってます、とても参考になります。 入門編・10 にあるGame_Ememiesのクラスの attr_accessor ;s_enemies ですが、;を に変えないとエラーを吐きますので コピペでやった人は修正した方がよさそうです -- (邯鄲) 2010-09-04 17 27 18 @enemies[i] = Game_Enemy.new(200 + rand(312), rand(384)) ↑argumentErrorが発生しました。wrong number of arguments(2 for 0) Game_Enemyクラスって最初からありますよね。 それが原因では? -- (ぽん) 2010-10-03 23 11 42 製作初心者なのでとても助かります!! -- (ありがとうございます!) 2011-02-05 12 44 03 セーブ/ロードまわりはMarshalを使ってスクリプトで記述されていますし、 ファイルの読み書きもRubyと同様にできますから、 セーブやロードをいじるのはスクリプト操作でできることでは? -- (ななし) 2011-05-20 13 04 19 ダンジョンなら3D化できると、下記サイトに書いてありました。 -- (だれかさん) 2011-08-18 07 26 19 アルバイトはじめましたd(´∀`*)グッ♪ http //64n.co/ -- (私だ) 2012-01-09 04 49 41 風俗店を探よりココ!!男性は報酬あり!d(´∀`*)→ http //www.44m4.net/ -- (江梨子) 2012-08-20 17 11 02 名前 コメント すべてのコメントを見る
https://w.atwiki.jp/htmlwiki/pages/41.html
img要素の src属性 で画像のurlを指定すると、ページに画像を表示することができます。 このimg要素には終了タグがありません。 urlは相対パス・絶対パスのどちらで指定してもかまいません。 画像をページに表示するときは著作権などを確認してから表示したほうが良いでしょう。 !DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN""http //www.w3.org/TR/html4/loose.dtd" html head title /title /head body img src="../img/sample.gif" /body /html
https://w.atwiki.jp/iphonexcom/pages/20.html
「設定」→「一般」→「使用状況」→「バッテリー残量率オン」 これは出しといた方が便利。
https://w.atwiki.jp/kokeiro/pages/23.html
画像を表示するには「画像をメモリに読み込ませる」「メモリに読み込んだ画像を画面に出力する」という2つを実行する必要があります。 画像をメモリに読み込む 画像をメモリに読み込むにはLoadGraph関数を呼び出します。 int LoadGraph( char *FileName ) ; 引数に画像の名前を渡すことで、画像をメモリに読み込み、グラフィックハンドル?を返します。グラフィックハンドルはカラーコードの親戚のようなもので、メモリに読み込んだ画像の識別番号です。どこに保存したかをint型で表現したものと考えて差し支えありません。指定する画像は別の階層のものでも大丈夫です。 なお、読み込むことの出来る画像形式はBMP,JPEG,PNG,DDS,ARGB,TGAの6種類です。 また、画像を読み込むのは当然ながらメインループを1週するごとに行う必要はありません。 メモリに読み込んだ画像を出力する メモリに読み込んだ画像を出力するには、DrawGraph関数を呼び出します。 int DrawGraph( int x, int y, int GrHandle, int TransFlag ) ; 第1引数、第2引数は描画する画像の左上の座標です。第3引数は先ほど読み込ませたグラフィックハンドルです。第4引数は透過色?を有効にするかどうかのフラグです。TRUEで有効、FALSEで無効です。 描画の座標指定が左上なので、中心に表示したいとき単純に(320,240)と指定すると、「画像の左上が」中心に表示されてしまいますので、なんらかの方法で位置を修正する必要があります。 メモリに読み込んだ画像データを全て削除する メモリに読み込んだ画像データを全て削除するにはInitGraph関数を呼び出します。 int InitGraph( void ) ; グラフィックを使用しなくなったときに呼び出し、メモリを解放します。 サンプルソース 画像を読み込み、画面に描画します。サンプル画像をプロジェクトがあるフォルダに保存してください。 sample.bmp #include"DxLib.h" void GetKeyInput( int *KeyBuf ); int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){ ChangeWindowMode(TRUE); if(DxLib_Init()==-1) return 1; SetDrawScreen(DX_SCREEN_BACK); // メインループが始まる前に画像を読み込む。 int SampleGraphicHandle = LoadGraph("sample.bmp"); while(1){ if( ProcessMessage() != 0 || CheckHitKey( KEY_INPUT_ESCAPE ) != 0 ) break; int Key[256]; GetKeyInput( Key ); ClearDrawScreen(); // 画像を描画する。マウス手書き。 DrawGraph(50,50,SampleGraphicHandle,FALSE); ScreenFlip(); } InitGraph();// 読み込んだ画像を削除、メモリを解放する。 DxLib_End(); return 0; } void GetKeyInput( int *KeyBuf ){ char damy[256]; GetHitKeyStateAll( damy ) ; for( int i=0 ; i 256 ; i++ ){ if( damy[i] == 1 ) KeyBuf[i]++; else KeyBuf[i] = 0; } }