[過去ログ] 弾をバキュンバキュン撃ち合うネットゲームを作りたい 3fps (886レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
139: 2006/05/21(日)12:40 ID:LtDK3Ca0(2/8) AAS
俺とお前がいるじゃないかw
140
(1): 2006/05/21(日)12:55 ID:NyIE3cQf(2/3) AAS
それもそうだな。
よし俺とお前で全く新しい革新的なFPSをつくろうじゃないか!

#include <windows.h>
#include "FPS.h"
int __stdcall
WinMain(HINSTANCE ins, HINSTANCE prv, LPSTR cmd, int shw)
{
FPS fps(ins, prv, cmd, shw);
  return(fps.play());
}
省1
141: 2006/05/21(日)14:13 ID:LtDK3Ca0(3/8) AAS
/////////////////////////////////////////////////////////////////////////////
//FPS.h
/////////////////////////////////////////////////////////////////////////////

#ifndef_FPS_
#define_FPS_

/////////////////////////////////////////////////////////////////////////////
//マクロタイプ宣言
#definenullNULL
typedef unsigned longUlong;
typedef unsigned shortUshort;
省12
142: 2006/05/21(日)14:15 ID:LtDK3Ca0(4/8) AAS
//以下、プレイヤーステータス
#definePLAYERSTT_CONNECT0x00000001//接続フラグ
#definePLAYERSTT_FULL0xFFFFFFFF

//以下、キャラクターステータス
#defineCHARSTT_BEING0x80000000//存在フラグ
#defineCHARSTT_LIVE0x40000000//生存フラグ(描画フラグ)
#defineCHARSTT_MASKROT0x3FF00000//回転マスク
#defineCHARSTT_SHIFTROT18
#defineCHARSTT_LEFT0x00010000//左
#defineCHARSTT_RIGHT0x00020000//右
省12
143: 2006/05/21(日)14:16 ID:LtDK3Ca0(5/8) AAS
typedef struct{//キャラクターデータ
UlonguloStt;//キャラクターステータス
floatflX, flY;//現在のキャラ座標
}ST_CHARACTOR;

typedef struct{//プレイヤーデータ
UlonguloStt;//プレイヤーステータス
WcharpchName[MAX_PLAYERNAME];//プレイヤー名
ST_CHARACTORpstChara[MAX_CHARACTOR];//キャラクター情報
}ST_PLAYER;

//以下、>>140
省8
144: 2006/05/21(日)14:18 ID:LtDK3Ca0(6/8) AAS
じゃぁFPS内よろしく。
FPS.h変えちゃって良いから。
期待してるよ。
145: 2006/05/21(日)15:08 ID:scDDWgBC(1/2) AAS
ワロタ
146
(1): 2006/05/21(日)16:15 ID:NyIE3cQf(3/3) AAS
関数の実体はヘッダーファイルに書くに決まってるだろ!
全ソースは俺が書き終わったわけだから、
あと書けるのはヘッダーファイルしかない。

まぁ良い、足りないところはscDDWgBCにお願いするとしよう。
笑いがタダなのはマクドだけだからな。

そこで気になったんだが、
#defineCHARSTT_SHIFTROT18
が20じゃないかと思うのだが。

あとST_CHARACTORでZ座標が無いのは
地面の高度が常に0という仕様だとしても、
省6
147: 2006/05/21(日)16:47 ID:LtDK3Ca0(7/8) AAS
すまん。
俺が全部悪い。
148: 2006/05/21(日)19:23 ID:LSC87mcQ(1) AAS
良スレだああああああああああ!!!!!!!うひょおおおおおおおおおおおお
149: 2006/05/21(日)20:06 ID:scDDWgBC(2/2) AAS
通信はFPSのメインルーチンとは別スッドレにしないとダメだな。
150: 2006/05/21(日)22:01 ID:qEKCr/Du(1/2) AAS
初心者的質問で悪いんですが、
FPSって明示的に発生させるスレッドって、
何と何と何が…必要ですか?
151
(3): 2006/05/21(日)22:58 ID:5V6q7cex(1) AAS
1:ゲームオブジェクト駆動スレッド(含描画)
2:通信制御スレッド(制御だけ処理は1に移譲)
3:ウィンドウメッセージ処理スレッド(普通コレがアプリケーションプロセス)

あとは必須じゃないけど普通やる

4:サウンドストリームスレッド
5:ファイル読み書きスレッド

そして最近流行の

6:物理演算スレッド
152: 2006/05/21(日)23:06 ID:qEKCr/Du(2/2) AAS
おぉ、明快な説明ありがとうございます。
ただ1と6の違いがよく判らないのですが。
(「物理演算スレッド」でググッてもうまく検索できなかったorz)
重い物理演算だけスレッドで実行するという解釈で
よいでしょうか?
153
(1): 2006/05/21(日)23:11 ID:LtDK3Ca0(8/8) AAS
メッシュ作る時や、通信の時は、システム掴む回避策として別スレッド作るけど、
それ以外ってパフォーマンス的に見てどうなんだろうね!?
俺は使ってない。

>151
パフォーマンス上がる?
154: 2006/05/22(月)04:01 ID:SvoexFZM(1/2) AAS
物理演算別スレにするのは初動計算するときだけ。
爆発とかで大量のオブジェが一気に動き出すと
スレッド分けてないと一瞬ゲームが止まる。
まあそのぶん爆発の影響が数フレ遅れるから見た目は変ちゃ変だけど
計算が終わったオブジェからどんどん動かしたりしてごまかす。
155: 2006/05/22(月)10:58 ID:7oi29hZC(1/2) AAS
某メジャーなFPSで、爆発で一瞬とまるやつあるな。
不用意にスレッド分けると、
クリティカルな処理への対策が面倒くさい。
156
(1): 153 2006/05/22(月)11:22 ID:vmxWHffY(1) AAS
システム掴んじゃうのはしかたないよね。
UI管理しているスレッドが止まるのであればマルチスレッド回避だろうな。

>>151が列挙した3,4,5に関しては疑問だよ。
マルチコアの場合はパフォーマンス上がるかもしれない。(詳しくは知らんけど)
しかし、それ以外は作業量に見合ったものは返ってこないと思う。

むしろ管理しづらくなったりするデメリットの方が目立つ気が。
どうよ?
157: 2006/05/22(月)11:29 ID:7oi29hZC(2/2) AAS
クリティカルな処理でバグがでるのがオチだろう。
158: 2006/05/22(月)15:24 ID:OKURF6Ug(1) AAS
1最近いないじゃん
1-
あと 728 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.020s