トップページgamedev
1001コメント340KB

●初心者歓迎 スレを立てる前にここで質問を

レス数が1000を超えています。これ以上書き込みはできません。
0001名無しさん@お腹いっぱい。01/11/06 18:16ID:i2fjSq5W
ふと疑問に思った事があったらスレを立てずにまずはここで質問
してみましょう。あなたの長年の悩みがたった一つのレスで解決して
しまうこともあります。回答があるまでに数日間かかることもあるので
辛抱強く待ちましょう。
095295102/02/07 13:47ID:???
あ、あとDirectX8かWindowsSDKのお勧めの入門書あったら教えてください。
おねがいします。
0953名前は開発中のものです。02/02/07 13:53ID:???
WindowsのGDIの知識は無くても大丈夫だけど
SDKはSDKのサンプルコードが理解できる程度
の知識が必要です。
0954名前は開発中のものです。02/02/07 13:54ID:???
>>951
とりあえず最低ウィンドウ作成とメッセージ処理くらいは出来ないと。
http://www.kumei.ne.jp/c_lang/
095595102/02/07 14:08ID:???
>>953-954
そうですか。時計を作る床までやったんですけどダレてきて・・・。
また気合入れてやります。ありがとう
0956名前は開発中のものです。02/02/07 21:37ID:???
なっち って何ですか?
0957名前は開発中のものです。02/02/08 01:55ID:???
>956
サントリー「なっちゃん」に対抗してサンガリアが出した新製品だよ
はっさく味
0958名前は開発中のものです。02/02/08 10:27ID:???
うえーん(゜○゜)
0959名前は開発中のものです。02/02/09 11:46ID:???
誰かお願いします。
C++で、あるクラスAをつくり、クラスBでAを継承しました。
Aは基本クラスとして用いるので、絶対にAのインスタンスは生成しないという条件で、
AのメソッドでBのメソッドを呼ぶことは出来るのでしょうか。

仮想関数を使っても無理でした。 何か知ってる人はいますか?
0960名前は開発中のものです。02/02/09 13:59ID:???
>959
継承元から継承先を参照する
その設計自体が間違っているとしか言えない
0961名前は開発中のものです。02/02/09 14:46ID:???
LPCSTRとLPCTSTRの違いをおしえてくれい。
0962名前は開発中のものです。02/02/10 00:59ID:???
>961
「T」が付く場合、UNICODEでコンパイルするとUnicode文字列。

LPはポインタ。
Cは定数(const)。
TはTCHAR(…って何の意味だったっけ?)。
STRは文字列で、あとはこの4つの組み合わせ。

とりあえず、TCHARの宣言は
#ifdef UNICODE
   typedef unsigned int TCHAR;
#else
   typedef unsigned char TCHAR;
#endif
だから、コンパイラオプションUNICODEの有無で1byte文字か2byte文字か
変わるってことです。俺は厨房につき、違ってたら誰か突っ込め。
0963名前は開発中のものです。02/02/10 21:03ID:???
どのように使い分けるのかがさっぱりわから〜ん。
0964名前は開発中のものです。02/02/11 01:15ID:???
コンストラクタで、初期化に失敗したときにプログラムを終了させたいのですが、
コンストラクタは戻り値を返すことができません。

どうしたらよいのでしょうか。
0965名前は開発中のものです。02/02/11 02:55ID:OpZ0HTgP
例外を投げなさい。
0966名前は開発中のものです。02/02/11 13:11ID:???
>>950
DirectX8実践プログラミング(工学社)
2Dの描画方法については「2Dの描画機能」の項目を参照。

正確にはDirectGraphicsだけど、OK?
0967名前は開発中のものです。02/02/11 13:14ID:???
DirectGraphicsなどという名称は存在しない。
0968名前は開発中のものです。02/02/12 00:23ID:8rdY+beo
質問です。
 「ソースを上げるスレッド」で、VisualBasicのコードを上げている厨房1号です。
 
 ドラゴンクエストの「経験値を得る」ようなやり方は、どんな感じでやっているんですか?
 ぼくは、Staticステートメントを使って、経験値を加算してプロシージャに保持していく
 やりかたをやっていこうと思っています(コードを今度上げておきます)。
  みなさんはどんな方法ですか。

 あと、Goto文使わなくても、という意見がありまして、これは敵の攻撃処理とかを
 各プロシージャでわけてやればいいってことですか?それでCall文で呼ぶとか?

  あと、「次は移動処理」という意見がありまして、ぼくはやりかたはよく知らないけど、
 自分なりに移動処理のコードを上げましたが、もっと効率よいやり方あったら是非。

  If文も、ネストしまくりっぽいので、キレイにまとめるには、Boolean
 型の変数を使ってフラグ立ててみなさんやっているのですか?(それしか思いつかない・・・)

  なんだか嫌われているVBの質問でごめん。
0969名前は開発中のものです。02/02/12 03:20ID:???
>>959 それを行うのが仮想関数の仕事だよ。
継承元は抽象度を高くした仮想関数を定義して、派生側で
オーバライドしなされ。A の仮想関数を呼べば B で再定義したものが
呼ばれる。
貴方の書いていることは曖昧なので答えがほしいときはもうすこし
具体的に書いたほうが良いとおもう。
097096602/02/12 14:00ID:???
>>967
あり?
マイクロソフト的には、Direct3DとDirectGraphicsは
区別して考えてるんじゃないですか?

確かにヘッダファイルはd3d〜って名称になってますし、
内部的にはほとんど同じでしょうけど…。
0971名前は開発中のものです。02/02/12 14:26ID:???
DirectX Graphics な。
097296602/02/12 15:38ID:???
>971
あ、そゆことw
0973名前は開発中のものです。02/02/12 19:20ID:???
980は新スレを建てなさい。
0974名前は開発中のものです。02/02/12 21:04ID:???
ところでこのスレの機能って
Q&A、スレたて相談、雑談、ぐらいでいいのか?
0975名前は開発中のものです。02/02/13 01:25ID:???
まあ、雑談は別スレあるけどね。
0976名前は開発中のものです。02/02/13 20:30ID:fs2BrWUb
#include<stdio.h>
#include<gb.h>

void scroll(UBYTE);
void show();
char map[50][50];              /*マップ*/
UBYTE start_x=20,start_y=20;        /*画面表示の開始点*/

void main()
{
    UBYTE i,j;
    for(i=0;i<50;i++){
        for(j=0;j<50;j++){
            map[i][j]='.';       /*マップを.で埋める*/
        }
    }
    for(i=0;i<50;i+=10){
        for(j=0;j<50;j+=10){
            map[i][j]='#';      /*10マスごとに#*/
        }
    }
    while(1){
        show();
        waitpad(0xff);
        scroll(joypad());
    }
}
0977名前は開発中のものです。02/02/13 20:30ID:fs2BrWUb
/*十字キーで画面表示の開始点を指定*/
void scroll(UBYTE key)
{
    if(key&J_RIGHT){
        if(start_x<=49-20){
            start_x++;      /*開始点を右移動*/
        }
    }
    else if(key&J_LEFT){
        if(start_x!=0){
            start_x--;      /*開始点を左移動*/
        }
    }
    else if(key&J_DOWN){
        if(start_y<=49-18){
            start_y++;       /*開始点を下移動*/
        }
    }
    else if(key&J_UP){
        if(start_y!=0){
            start_y--;        /*開始点を上移動*/
        }
    }
}

/*マップを画面に表示*/
void show()
{
    UBYTE i,j;

    printf(" ");
    gotoxy(0,0);           /*画面の左上から*/
    for(i=0;i<18;i++){
    for(j=0;j<20;j++){
            printf("%c",map[start_y+i][start_x+j]);
        }              /*画面の範囲分表示*/
    }
}

十字キーで画面がスクロールするはずなんだけど
どのキーを押しても画面が一瞬下にズレて元に戻るんよ
mainの中のscroll関数を抜いても動作は一緒なんよ
俺にはこれ以上どうにもできんで誰か教えて
0978名前は開発中のものです。02/02/14 00:13ID:???
18x20だと超過してるとか。18x19でも一緒?
0979名前は開発中のものです。02/02/14 00:45ID:???
画面の下が18マス余ったから18x20っぽい

しかし18x19に変えたら
キー入力すら受け付けなくなったのは
何だったんだろう?
0980名前は開発中のものです。02/02/14 02:02ID:???
scroll関数抜いたままだったりして(w
0981名前は開発中のものです。02/02/14 02:05ID:???
あ、いかん。980だ。
俺スレ立て過ぎって言われたから、次の人頼む。スマソ
0982名無しさん@お腹いっぱい。 02/02/14 09:12ID:???
次スレ
http://game.2ch.net/test/read.cgi/gamedev/1013645518/
0983名前は開発中のものです。02/02/14 09:48ID:???
scroll関数アリで18x20
    どのキーを入力しても画面が一瞬下にズレる
scroll関数を抜いて18x20
    どのキーを入力しても画面が一瞬下にズレる
scroll関数アリで18x19
    どのキーを入力しても画面に変化なし
scroll関数を抜いて18x19
    どのキーを入力しても画面に変化なし

ワケワカンネェYO!
0984名前は開発中のものです。02/02/14 11:04ID:???
>>983
次スレに答えを書いておいた。GBDK特有の問題だ。

次スレ
http://game.2ch.net/test/read.cgi/gamedev/1013645518/
0985埋め立て人@ゲ製作技術板02/02/17 14:48ID:???
そr
0986名前は開発中のものです。02/02/19 19:11ID:???
ここ、埋め立てたほうがいい?
0987名前は開発中のものです。02/02/19 19:30ID:???
今なら1000ゲットズサーやり放題。
0988名前は開発中のものです。02/02/19 19:39ID:???
埋めんでも問題ないだろう。
0989名前は開発中のものです。02/02/19 19:59ID:???
age荒らしに遭遇するとウザイしDATへ逝かせてやりたい
0990埋め立て人@ゲ製作技術板 02/02/20 00:48ID:???
うg
0991埋め立て人@ゲ製作技術板202/02/20 00:50ID:???
そんな!
0992埋め立て人@ゲ製作技術板202/02/20 00:51ID:???
まじかよ!!
0993埋め立て人@ゲ製作技術板202/02/20 00:51ID:???
なんてこった!!!!!
0994埋め立て人@ゲ製作技術板202/02/20 00:52ID:???
やっぱりこういうのは酒飲みながらやるに限るね。
0995埋め立て人@ゲ製作技術板202/02/20 00:52ID:???
ふぅ。
0996埋め立て人@ゲ製作技術板302/02/20 00:53ID:???
3!マジマジ!だす。
0997埋め立て人@ゲ製作技術板302/02/20 00:53ID:???
まだまだですよ?
0998埋め立て人@ゲ製作技術板302/02/20 00:53ID:???
アブトレーナー
0999埋め立て人@ゲ製作技術板302/02/20 00:54ID:???
ふふふ?いやいや。
1000ズザギコ愛好会02/02/20 00:54ID:???
今だ!1000番ゲットォォォォ!!
 ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄       (´´
                  ∧∧       (´⌒(´
            ⊂(゚Д゚ )≡≡≡(´⌒;;;≡≡≡
        ⊆⊂´ ̄ ⊂ソ  (´⌒(´⌒;;
           ̄ ̄ ̄   ズザーーーーーッ

10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。