ページ 1 / 1
C言語
Posted: 2011年8月14日(日) 12:29
by oozora
コード:
#include "DxLib.h"
#include <math.h>
void InitAimingBullet(
float mx, float my,
float ex, float ey,
float speed,
float& x, float& y,
float& vx, float& vy
){
x=ex; y=ey;
float d=sqrt((mx-ex)*(mx-ex)+(my-ey)*(my-ey));
if(d){
vx=(mx-ex)/d*speed;
vy=(my-ey)/d*speed;
} else {
vx=0;
vy=speed;
}
}
void MoveAimingBullet(
float& x, float& y,
float vx, float vy
){
x+=vx;
y+=vy;
}
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
{
//ウィンドウモードで起動
ChangeWindowMode( TRUE );
//DXライブラリ初期化
if( DxLib_Init() == -1 ) {
return -1;
}
//ここにプログラムを書いていく
InitAimingBullet();
MoveAimingBullet();
//DXライブラリ終了処理
WaitKey();
DxLib_End();
return 0;
}
上のようなプログラムを本を見ながら作りました
InitAimingBullet();
MoveAimingBullet();
の引数がわかりません?
あと上のプログラムをゲームとして動かそうとすると
どんなプログラムをくわえればいいですか?
教えてください
Re: C言語
Posted: 2011年8月14日(日) 12:45
by softya(ソフト屋)
codeタグを加えておきました。フォーラムルールをよくお読みくださいね。
http://dixq.net/board/board.html
ただ、インデント(字下げ)が行われていないので読み辛いプログラムとなっています。バグを防ぐ目的にもなるので気を付けてみてください。
「字下げスタイル - Wikipedia」
http://ja.wikipedia.org/wiki/%E5%AD%97% ... 4%E3%83%AB
字下げするとこんな感じになります。
コード:
#include "DxLib.h"
#include <math.h>
void InitAimingBullet(
float mx, float my,
float ex, float ey,
float speed,
float& x, float& y,
float& vx, float& vy
){
x=ex; y=ey;
float d=sqrt((mx-ex)*(mx-ex)+(my-ey)*(my-ey));
if(d){
vx=(mx-ex)/d*speed;
vy=(my-ey)/d*speed;
} else {
vx=0;
vy=speed;
}
}
void MoveAimingBullet(
float& x, float& y,
float vx, float vy
){
x+=vx;
y+=vy;
}
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
{
//ウィンドウモードで起動
ChangeWindowMode( TRUE );
//DXライブラリ初期化
if( DxLib_Init() == -1 ) {
return -1;
}
//ここにプログラムを書いていく
InitAimingBullet();
MoveAimingBullet();
//DXライブラリ終了処理
WaitKey();
DxLib_End();
return 0;
}
で
oozora さんが書きました:上のようなプログラムを本を見ながら作りました
InitAimingBullet();
MoveAimingBullet();
の引数がわかりません?
あと上のプログラムをゲームとして動かそうとすると
どんなプログラムをくわえればいいですか?
教えてください
幾つか質問があります。
(1)どの様な書籍を読まれましたか?
(2)この関数を使ってどの様な事が起こると(あるいはどの様なことが出来ると)想定されているのでしょうか?
(3)InitAimingBullet()やMoveAimingBullet()の内容をわかっている範囲で書いてみてください。
ゲームを作る上で何処まで理解しているのか把握したいので質問をさせていただいております。
[追記]
ヒントとして付け加るとInitAimingBullet()とMoveAimingBullet()は弾関係の処理をする関数です。
[追記の追記]
このサイトのコンテンツである
「新・C言語 ~ゲームプログラミングの館~ [DXライブラリ]」
http://dixq.net/g/
「龍神録プログラミングの館」
http://dixq.net/rp/
をまず理解されてはどうでしょうか?
基礎的なことが習得できると思います。
Re: C言語
Posted: 2011年8月16日(火) 21:52
by oozora
教えていただいた
「新・C言語 ~ゲームプログラミングの館~ [DXライブラリ]」
で勉強を始めました
ウィンドウの表示はできたのですが画像を表示するのができません。
画像の表示の仕方を教えてください。
Re: C言語
Posted: 2011年8月16日(火) 22:20
by softya(ソフト屋)
「新・C言語 ~ゲームプログラミングの館~ [DXライブラリ] 1.1章 DXライブラリが使える環境を整えよう」
http://dixq.net/g/01_01.html
はちゃんと行われましたか?
で、ここがちゃんとしているなら
「新・C言語 ~ゲームプログラミングの館~ [DXライブラリ] 1.3章 画像を表示してみよう」
http://dixq.net/g/01_03.html
の手順で自分の手で打った場合にLoadGraphScreen()の引数が間違いっている可能性があります。
ご自分のプログラムを、codeタグを使って貼り付けてみてください。
[追記]
上で質問した内容にもお答えくださいね。
(1)どの様な書籍を読まれましたか?
(2)この関数を使ってどの様な事が起こると(あるいはどの様なことが出来ると)想定されているのでしょうか?
(3)InitAimingBullet()やMoveAimingBullet()の内容をわかっている範囲で書いてみてください。
分からないなら、何処から分からないとかも書いてください。場合よってはさっぱり分からないでも良いです。