Windowsゲームプログラミング 質問スレ

レス数が900を超えています。1000を超えると表示できなくなるよ。
2008/11/06(木) 21:28:45ID:lNn2skuQ
※回答する人も、質問する人も必ず読んでください

【 回答してくださる方 】
・ できるだけ優しく質問に答えてあげてください。
・ 優しく教えるのが嫌でしたら、解決するためのヒントだけでも結構です。
 「ググれ」以外の回答でおながいします。
・ 神ですら理解不能な質問は無視して下さい。

【 質問する香具師 】
・ どんな事で躓いているのか明確にしる。
・ 長くならないなら躓いている部分のコードを晒してみれ。
・ 解決した場合、お礼を言うのは当然だが、何をどうしたら解決したかを明確に書け。
2012/01/31(火) 12:20:17.37ID:mH01bj3M
決まりがあるからそれに従うだけではあるけど、資料集めが苦労するかなあ
2012/01/31(火) 20:15:26.43ID:rCvcOxBv
揚力さえ再現できたらそれっぽくなりそうだが、違うもんなのかえ?
2012/02/01(水) 02:07:42.33ID:ALMaHMOB
シミュレーション性は無視して、こういう操作をしたらこういう挙動をさせたいって
モデル化するのは、ゲーム作れるなら普通のスキルだと思う。

例えば自動車の場合、ハンドルを切ったら曲がる、同じ舵角なら前進速度が速いほど
速く曲がるという結果から、車が曲がる速さは舵角×前進速度×適当な係数を角速度とする。
係数は自然な感じになるように動かしながら微調整。
これに横滑りの要素も加えれば、クレイジータクシーみたいな感じの挙動は簡単に作れる。

入力(この場合はハンドルを切る)と出力(車が回転する)が決まっていて、その間の関係を
影響がありそうな要素に適当な係数を掛けて、狙った動きを作り出すってのがインチキ挙動の基本。

飛行機でも大して変わらないんだけど、飛行機のことをよく知らなかったらインチキモデルを
考えるのも難しいかもね。
ただ、飛行機で上で書いたみたいな舵角と速度で角速度を直接求めるような計算をすると
昔あったスターウォーズのゲームみたいなフワフワした飛び方になると思うが。

ちなみに>>846の傾けたら旋回するってのも難しい話じゃなくて、翼で発生する揚力と重力を
合成すると横向きのベクトルになるってだけ。
2012/02/01(水) 17:49:22.24ID:EhQ4aeNO
それらしく飛べるようにするには、最低↓に書いてあるような事を理解しないといけないですか?
http://ja.wikipedia.org/wiki/%E6%8F%9A%E5%8A%9B
2012/02/01(水) 18:13:37.65ID:juCjyfEf
ゲームは如何に擬似的に実装するかだと思うけどなぁ
フライトシミュやったことないからアレだけども…
知ってたらよりリアルに作れるって感じじゃないかな
2012/02/01(水) 21:24:40.59ID:ALMaHMOB
>>850
そこにある式から揚力は速度の2乗に比例するとか大雑把に読み取れば十分だと思う。

ゲーム的な飛行機ものだと失速はさせないから、揚力係数の部分も
>迎角の絶対値が小さいとき、揚力係数はほぼ迎角に比例する。
だけ考えればよくて、迎角に適当な係数かけとけばいいかと。
2012/02/11(土) 21:25:02.80ID:E0fAwLOP
理解するに越したことはないだろうけど、近い挙動が出来る式があれば
それでいいんでは?
それっぽくて計算が軽い>本当の挙動だけど重い
だと俺は思う。

ニュートン力学を理解してなくても、りんごは木からおちるんです
2012/02/12(日) 23:34:37.60ID:gjfghICz
http://toro.2ch.net/test/read.cgi/tech/1329023778/
855名前は開発中のものです。
垢版 |
2012/02/28(火) 11:23:10.89ID:QT80zxay
今からゲームプログラミング勉強するとしたら
C++でDirectXとC#でXNAどっちおすすめですか?
ジャンルはアクションかSRPGです
2012/02/28(火) 13:07:37.48ID:DEMYa7pD
初心者ならHSP
計算順序の違いとか方言に注意のこと
2012/02/28(火) 16:02:56.21ID:UDQM/8rw
>>855
いまどき実行ファイルをダウンロードしてまで素人が作ったゲームで
遊ぼうとは思わないから、Flashとかのブラウザ上で実行できるやつか
Androidの方がいいかもしれん。

Silverlight5のXNAが、もっとまともだったらよかったのに。
2012/03/01(木) 23:09:58.92ID:WMGCGy2B
>>855
初心者でないのならC++でDirectXだな。C#はかゆいところに手が届かん。
859名前は開発中のものです。
垢版 |
2012/03/07(水) 22:48:59.98ID:8K9IcX8w
>>855
これからの時代はHTML5(JavaScript)

Windows/Linux/Mac OSX/Androidとも、Webブラウザ外でアプリとして実行するためのHTML5系アプリケーション実行環境を持っているし
2012/03/08(木) 08:42:24.00ID:2BIHW9bv
XNAについて質問なんですが
DrawableComponentってメッセージ表示用のウインドウとか専用にポコポコ作って負荷は大丈夫なんでしょうか?
そういうサンプルがあったんですが、あちこちでBegin→Endを繰り返すのが気になります
2012/03/08(木) 14:05:39.97ID:A2EXIfC2
問題が出るのはよっぽどだな
2012/03/09(金) 23:51:34.39ID:nUYy7QmF
2Dで最大20個くらいなら大丈夫っぽいですね
描画処理ごと部品化するのはアリみたいなのでやってみます
863855
垢版 |
2012/03/16(金) 12:25:53.62ID:hdhBGq2r
>>856
VBAだったら簡単な業務用システムを作れますが、ゲームプログラミンはど素人です
HSPも考えたのですが、ゲームプログラミングを覚えつつ言語の勉強も兼ねたいので、
ゲーム以外でもつぶしの聞く方向で考えてます
>>C#はかゆいところに手が届かん。
具体的に手が届かないところを教えてもらえますか
>>857 >>859
ゲームプログラミング自体がど素人なので、まずその基礎を習得したいと思ってます
ですがJavaScriptでもゲームが作れるとは思ってなかったので、もうちょっと情報を漁ってみます

現在C#のWindowsアプリ開発とC++ゲームプログラミング(ライブラリ使用)を独学中です
(いまだどっちにするか決めかねてる)
色んなご意見ありがとうございますた
2012/03/17(土) 13:13:23.15ID:rrJIgDrF
>>863
どの言語もベースとなる考えは同じだから、ある一つの言語でゲームプログラミングを覚えてしまえば
他の言語でもなんとなくで作れるようになる。
なんで、最初は自分が使いやすいと思った言語を勉強すれ。
2012/03/23(金) 16:31:40.61ID:K6vcGusk
>>863
>>>>C#はかゆいところに手が届かん。
>>具体的に手が届かないところを教えてもらえますか

スクリプト言語を組み込みたい場合に使えない(自前で用意したいなら話は別だが)
2012/03/23(金) 19:22:28.11ID:iv6vo6jD
C#に組み込めないスクリプト言語って具体的にどれ?
メジャーなのは大抵使えると思うけど。
2012/03/29(木) 19:13:00.65ID:yUAqqvDU
XBOXで動作させる時はSystem.Reflection.Emitが使えないとかそんな話?
2012/03/29(木) 19:59:53.90ID:cz0KTXru
LuaとかSquirrelとかRubyとかC#で使える?
あと、CやC++で書かれたソースコードを流用したり、とか出来たっけ?
2012/03/29(木) 20:04:28.13ID:cz0KTXru
っつーか、自作のスクリプト言語の流用が出来ないのが一番困る
ちなみにC++
2012/04/01(日) 08:47:19.00ID:SRc+M44U
JavaとCの基礎は大体理解しているんですが実用的なアプリ開発につなげて行くためにはどうしたらいいですか?
2012/04/01(日) 09:03:04.28ID:MCAhNEAs
アプリを自分で開発する努力をする。本読むより実装やオープンソースがいい。
2012/04/01(日) 18:54:57.03ID:9URqj6c8
作りたいアプリに似ているものを研究
2012/04/05(木) 12:07:18.83ID:jb0cRcEL
VB.NETとSDL.NETで楽々ゲームプログラミング。
LuaもLuaInterface使えば楽勝で使える。
XNAみたいなウンコは必要無いよ。C#でも。
2012/04/06(金) 16:03:13.16ID:odpm5sds
C#プログラミング勉強中なんだけど漠然とした問題にぶち当たったからだれか教えて欲しい。
今「独習C#」を使って勉強中(メソッドとクラスがある程度できるレベル)なんだけど、製品のゲームみたいなGUIはどうやってつくればいの?
自分なりに調べてみたら、windowsformを使うか、XNA環境使うかしか方法が無かったんだけど他にもっと別の作り方ってないのかな。
ボタンとか、メニューも自分で作る方法みたいな。
2012/04/09(月) 20:16:25.33ID:1i005mvJ
XNAでも部品なんて用意してくれてないだろ
自分で絵を貼って自分で文字書いて自分でカーソル動かすだけ
876名前は開発中のものです。
垢版 |
2012/04/09(月) 21:04:28.19ID:GfwlVark
>>875
あ、そうか。
なんでだろこんな簡単なことに気付かなかった。
ありがとう。
2012/04/12(木) 08:57:20.71ID:YyGeijOe
嘘を教えるな嘘を
ボタンならボタンでメニューならメニューでちゃんとしたやり方がある
2012/04/22(日) 19:13:38.74ID:MTwz9k+/
Win32 APIでの質問なんだけど
CALLBACKを関数の前につけると何がどう変わるんだ
呼び出し規約云々があるらしいけど、具体的な動作の変化が分からないから
何時つけるべきで、何時つけるべきでないのかがはっきりしない
2012/04/22(日) 20:04:34.35ID:V0cL/+4n
APIに関数ポインタを渡す(構造体に詰めて渡す場合ももちろん含む)場合で、APIがCALLBACK付きを要求している場合に付ける。

例えば、DialogBox APIを呼ぶときにダイアログプロシージャ渡すわけだけど、
APIの定義ではDLGPROC型を要求してる。
で、DLGPROCはヘッダファイル探すとCALLBACK付いてるので、
結局ダイアログプロシージャ関数はCALLBACKをつける必要がある。
2012/04/23(月) 21:34:00.08ID:oUKRAUBx
返答ありがとうございます
それじゃあ普段プログラマの側(それも不慣れな者)が気に掛けることではないということかな
コールバックするであろう関数にはとりあえずつけといた方がいいのだろうかと不安に思っていてね
2012/06/18(月) 23:51:08.10ID:VyyWKTHf
質問です。

アクションゲームを作りたいのですが、
キーボードのキーってずっと押したままにしても、最初の一回の入力以降は
押し続けてても1秒くらい立たないと入力が受け付けられないと思うのですが、
これを判定する方法はありますでしょうか?
2012/06/19(火) 09:05:57.35ID:4lOMDEkq
KEYUP、KEYDOWNのメッセージでフラグの上げ下げをする。
2012/06/19(火) 16:13:23.43ID:hVqLfL6z
どうやってるかによるけど、通常は
入力通知を受けるのではなく、
その時点でキーが押されたかを調べる。
GetAsyncKeyState()等を使って。
2012/06/23(土) 23:53:57.12ID:8n4rnNdA
私文系の人間で物理学を一切知りません。
高校時代に赤点地獄だったのですが、こんな私でもアクションゲームを作ることが可能ですか?
ジャンプや物体の加速など物理方程式を回避してこれらを実装する手段はありますか?

昔懐かしFCゲームのようなドット絵ゲーなので可能でしょうか…?
2012/06/24(日) 00:16:08.59ID:+0KCpHb8
中学レベルの数学ができれば余裕。

3Dバリバリのを作ろうとしたらそうはいかないけど。
886名前は開発中のものです。
垢版 |
2012/06/24(日) 03:12:07.05ID:S+AGISs0
>>884
落下速度が加速するとか
ジャンプの軌跡が放物線を描くとか
ぶつかったら跳ね返るとか
大抵見た目体感重視で数式は適当
2012/06/24(日) 06:55:52.79ID:F0WQzxPI
とはいえ、いろいろ知ってるほうが有利だけどね。
空中から落ちる場合、
前回の落下速度に+1、上限速度アリ、ってやれば自然っぽくない?
とか、普通に考えられるようになるし。
そういうあたりを試行錯誤する手間が省ける。

知っていると有利だが、知らないことは致命傷じゃない。
2012/06/24(日) 07:14:43.40ID:/bhfsLHX
2Dなんかの場合数学無視した方が面白い場合もたくさんあるよね
マリオの空中での動きとかあれあり得ないし
889名前は開発中のものです。
垢版 |
2012/06/24(日) 08:06:46.13ID:S+AGISs0
>>887
自然っぽくしたからと言って面白くなったり
操作性が上がる訳じゃない

マリオなんて想定外の落下距離を落ちるとブロック飛び越えてブロックの間に着地する
これを防ぐ目的で速度制限付けるのは有りだが自然っぽいかどうかでは・・・
890884
垢版 |
2012/06/24(日) 09:45:43.11ID:ucQNFc4u
>>885-889
どうもありがとうございますm(_ _)m
中学レベルの数学も微妙に怪しいですが、それなら参考書買って何とかなりそうですよ…

マリオの挙動は独特ですよね。
ジャンプした時と着地に向かう時の落下時とで個別にルーチンを用意してるんじゃないかと思われるような挙動で「癖」がありますよね。
でもああいうのを敢えて実装しようという思いも側らあってですね…

でも結局現代人はあのマリオをプレイしてきているので逆にそのほうが自然になったりしないでしょうか(マリオをプレイした事のない人はこれは嘘になりますが汗
2012/06/24(日) 10:10:57.95ID:f11XiEEl
作ろうとしているゲームに関連する知識を
アホほど収集するのは俺くらいかなぁ?
最終的には取捨選択して半分くらいは無駄になるけど。
2012/06/24(日) 19:13:16.06ID:4+CNk2h0
大抵のアクションゲームのジャンプに正確な物理演算なんて採用されてないよ

例えばマリオやロックマンなんかでもジャンプは小ジャンプでも大ジャンプでもジャンプの初速は同じ
ただし、ジャンプボタンが離されたらそこに加速度無くして下降させていくっていうふうになってるし

アクトレイザーみたいにジャンプの高さ一定なゲームもあるけどね。
2012/06/25(月) 01:04:32.74ID:N824JVL4
>>887
大事やね
理科系いくと力学で必ず摩擦を考えた雨粒落下みたいな計算やるもんな〜案外馬鹿に出来ん
だけで専門というより教養のレベルだし日頃当たり前に見てることだからイメージから入れば文系だろうと関係ない
むしろイメージが浮かべば式わからなくても調べられる
そういう式だけ知ってても全然右脳使えないやつもいるし
2012/06/25(月) 22:17:09.89ID:HpEgaskp
まぁ、イメージをコードに落とすイマジネーションが最大の武器で、
理論や数式はその補助だね。
知っていれば確実に有利であることに間違いはない、
だが知らなくても特に大きな問題ではない。

どんな勉強でもしておいて損はないよ、ってことで。
895884
垢版 |
2012/06/26(火) 00:16:00.96ID:49svXmP5
皆様ありがとうございます。
制作のほう頑張りたいと思います。
896名前は開発中のものです。
垢版 |
2012/06/28(木) 17:09:25.82ID:KucKXK4H
そもそも物理法則に忠実だとジャンプ中に方向変えられないしな
2012/07/01(日) 23:11:10.19ID:iHtFN0Ha
そうですね。
ゲームとして違和感がなければ良しということで
898884
垢版 |
2012/07/15(日) 17:38:39.96ID:pX8TH0ip
先生!質問です!

C言語で…

WinMain(){
関数() ;

関数の処理




}

みたいな感じで関数を関数処理以前に書いた場合、正常に動作するのでしょうか?

それとも関数定義だけソース天辺でしておけばどのタイミングでも関数呼び出しOKですか?
899884
垢版 |
2012/07/15(日) 17:41:14.76ID:pX8TH0ip
すいません…
自己解決しました。。。

コンパイルできないお。と言われたのでコード組みなおします…

スレ汚しスマソ(´・ω・)
2012/07/15(日) 17:50:37.75ID:k2twrqrP
Cの基礎中の基礎だからスレ違い。
本読めばわかる基礎事項。ネットでもいい。
2012/07/15(日) 18:21:48.90ID:Ssv/RyLk
前に持ってくんじゃ無くてプロトタイプ宣言、な
902884
垢版 |
2012/07/15(日) 20:11:56.85ID:pX8TH0ip
>>900-901

ありがとう
903名前は開発中のものです。
垢版 |
2012/10/14(日) 15:39:36.82ID:2t+L3/5S
まだあるの?
2012/11/29(木) 11:36:58.44ID:TT/6t1IG
2d横スクロールアクションで敵がでる条件をプレイヤーの座標が例えば330以上340未満とかしようとおもってるんですけど、セオリーというか、普通はどう実装してるもんなんですか?
2012/11/29(木) 14:24:08.29ID:Gd8d17gU
そのままif文でそれをすればいいんじゃないの
2012/11/29(木) 15:19:33.36ID:JuWNVxeV
そういうのは外からパラメタ入れられるようにして可変にしとくといい。
テキストファイルとかでいいよ、難易度調整でコンパイルとかいちいちしてられないし
2012/11/29(木) 23:36:27.30ID:SnOSuGer
確かに難易度調整とか考えるとファイルから読み取ったほうがよさそうですね。
了解しました。ありがとうございます、
出現条件として座標だけだとうまく行かないかなーとか思ってほかの人は
どういう風にしてるのか気になったので質問させていただきました。
2013/01/28(月) 23:05:51.60ID:LkpC3c5z
>>840
こんな感じに作る。 次に、ゲームとして作るか、シュミレーションとして作るか
http://www1.axfc.net/uploader/so/2772187
2013/02/06(水) 21:10:56.84ID:1LghX5HE
ジョイスティックの状態を取得する処理を作っています。
joyGetPosExでハットスイッチの状態を取ろうと思ったのですが、一番目のハットスイッチしか取れません。
複数のハットスイッチの状態はどうやって取ればいいんでしょうか?

macでは出来るみたいでしたが、APIがわかりません・・
ttp://ysflight.in.coocan.jp/programming/macosx/joystick/j.html

デバイスはハットが4つあるvJoyの状態で練習しようと思ってます。
2013/02/06(水) 22:22:16.08ID:1LghX5HE
RegisterRawInputDevices → WM_INPUTで接続されてる全部のデバイスの入力を
捕まえることも考えています。(ハット4つついてる本物が要る)
2013/02/08(金) 02:27:37.66ID:aSO51vfl
それだけの情報じゃわからんな
フラグはちゃんと設定してんのかね
2013/02/08(金) 03:46:41.92ID:E0B8JHeU
変数を使った人数判定について
頭がこんがらがってしまったのでお知恵を拝借したい

Aさん Bさん Cさん

の3人のキャラがいたとします
それぞれのHPは5とします

それぞれに変数を用意して玉を当てると
+1加算するとして、変数が5になったらそれぞれは死にます(消えます)
一体一で戦っている時は、死亡判定は簡単です
それぞれの変数が5になれば死亡判定になります

ですが、3人同時に玉を当てれる技をもっていた時に、
それぞれの死亡判定を考えた時、頭が混乱しそうになります
例えば、
2013/02/08(金) 03:54:19.83ID:E0B8JHeU
まず、Aさんに玉を1つ当てましたAの変数は1です
この状態では、
A変数1 B変数0 C変数0 です

次に、3人同時に玉を当てれる技を使いました
すると、
A変数2 B変数1 C変数1 になります

次に、Aさんに玉を当てるとAの変数は3になります
A変数3 B変数1 C変数1 になります

次に、3人同時に玉を当ててる技を使った後に、Bさんに玉を1つ当てました
すると
A変数4 B変数3 C変数2 になります

さて、ここからが問題です
それぞれは、変数が5になったら死亡です

この状態で、3人同時に玉を当てれる技を連続で使った時、
Aさん → Bさん →Cさんの順に死んでいきます

この時の各変数(A〜Cさん)の死亡判定をするには
どのように、判定基準を定めればいいでしょうか?
2013/02/08(金) 04:02:00.39ID:E0B8JHeU
私が考えた案を提示します

まず、Aさんの変数が5になった時に、
A死亡判定変数に1を代入して、全滅変数に+1を加算
Bさんの変数が5になった時に、
B死亡判定変数に1を代入して、全滅変数に+1を加算

これで二人についての死亡判定は可能になりました
A死亡判定変数が1の時は、Aは死にBはまだ生きています
この状態で全員攻撃できる技を使えば、Bにだけに玉が当たります

次に、B死亡判定変数が1の時は、Bは死にAはまだ生きていますので
この状態で全員攻撃できる技を使えば、Aにだけ玉が当たります

そして、全滅変数が2の状態なら
全員攻撃できる技を出すが、誰にも玉は当たりません
この全員攻撃できる技は、画面内に表示している敵全員に
玉を当てれる誘導ミサイルだと思ってください
2013/02/08(金) 04:04:34.30ID:E0B8JHeU
2体だけが画面内にいるなら
この方法で、死亡判定が出来ます

ですが、この方法では、敵が3体になった時に無理が生じます

そこで私の質問ですが、
画面内に3体の敵がいて、
画面内に表示している敵全員に玉を当てれる誘導ミサイルのような技があった時
3体以上の死亡判定をさせるにはどうすれば可能でしょうか?
2013/02/08(金) 04:29:00.94ID:fc9kQ8/R
キャラがABCの3人いるとします。全部で3人です
変数が5になった時、死亡判定変数に1を代入するとします
また、誰かが死ぬと全滅変数に+1するとします

1.まず最初
A変数4 B変数3 C変数2の時→A死亡判定変数0 B死亡判定変数0 C死亡判定変数0 全滅変数0
 誰も死んでいない(変数が5でない)から、死亡判定変数は全員0のまま
 また、誰も死んでいないから全滅変数は0

2.次に全員に1ダメージずつ
A変数5 B変数4 C変数3の時→A死亡判定変数1 B死亡判定変数0 C死亡判定変数0 全滅変数1
 Aが死んだ(変数が5になった)から、Aの死亡判定変数を1にして、全滅変数に+1
 BとCは生きている(変数が5でない)から、死亡判定変数は0のまま

2.もう一度全員に1ダメージずつ
 ただし、さっき死んでいるAには当たらないとする
A変数5 B変数5 C変数4の時→A死亡判定変数1 B死亡判定変数1 C死亡判定変数0 全滅変数2
 Bが死んだ(変数が5になった)から、Bの死亡判定変数を1にして、全滅変数に+1
 Cは生きている(変数が5でない)から、死亡判定変数は0のまま

2.もう一度全員に1ダメージずつ
 ただし、さっき死んでいるAとBには当たらないとする
A変数5 B変数5 C変数5の時→A死亡判定変数1 B死亡判定変数1 C死亡判定変数1 全滅変数3
 Cが死んだ(変数が5になった)から、Cの死亡判定変数を1にして、全滅変数に+1

3.全員死んだか?
全滅変数は3、キャラの数は全部で3
数が同じなので、全員死んだということが確認できます
2013/02/08(金) 07:58:48.68ID:E0B8JHeU
>>916
助言ありがとうございます
あれから自分で考えて解くことが出来ました
条件分岐を多用して解決しました

全員の死亡判定変数は、使わないことにして
変数は、各、A,B,Cだけにして、値が5になった時が死亡です
そして、以下のように条件分岐を入れて解決です

A死んでる B死んでる C死んでる

A死んでる B死んでる C生きてる

A死んでる B生きてる C死んでる

A死んでる B生きてる C生きてる

A生きてる B死んでる C死んでる

A生きてる B死んでる C生きてる

A生きてる B生きてる C死んでる

A生きてる B生きてる B生きてる
2013/02/08(金) 09:50:16.18ID:ywDoLpsd
死んでも当たるようにして
A7 B6 C5 とか変数の上限取っ払えばいいんじゃね?

全滅判定とか死亡判定とかミサイル射撃のルーチンに必要ない

最後に変数5以上で死亡判定、全員変数5以上で全滅判定で終わり
2013/02/08(金) 20:00:08.33ID:y/f0Cgv2
>>911
dwFlagsにはJOY_RETURNALLを入れ、結果としてJOYINFOEX構造体のdwPOVには
中央=-1 上=0 右=9000 下= 18000 左=27000 が格納されており、ハットスイッチ1個めについては動作しています。
dwFlags=JOY_RETURNPOVの場合も変わりありません。
920名前は開発中のものです。
垢版 |
2013/02/14(木) 10:58:51.10ID:31/XymZq
質問です。

DirectX9についてです。
fourccフォーマット(D3DFMT_DXT1など)のテクスチャデバイスを
レンダターゲットとして使うことって、普通はやらないものでしょうか?
画質の面以外での不都合などがあれば教えていただけないでしょうか。

VRAM使用量削減のためこういうことをやろうと思っているのですが、
そういった使用例を見たことも聞いたことも無く…
すみませんがお願いいたします。
2013/02/14(木) 12:14:17.91ID:reIQ62Lt
そもそもレンダーターゲットとして圧縮フォーマットが
使えるグラボがどれだけあるのか確認した?
922名前は開発中のものです。
垢版 |
2013/02/18(月) 12:09:12.56ID:jl25J9BU
>>921
お返事遅くなりすみません。
dxinfoというサイトを知り、そちらで確認しましたところ、
圧縮フォーマットをレンダターゲットにできるデバイスは皆無でした。
自分の所有するものでも調べましたが全滅でした。

こういうことだったのですね…無知でした。
一旦32bitテクスチャにレンダリングしたものを変換するという方法にて
正攻法で行きたいと思います。大変ありがとうございました。
2013/03/05(火) 20:13:11.31ID:rD+66rZs
質問です。
エアロのDWMでフォームを透過にしたら、そこに乗ってる画像も透過になってしまうんですが
画像が透過にならない方法を教えてくださいm(__)m

エアロのDWM使って透過にする方法は色々あるようですが、ググってでた「DrawGlassEffect」てコードを使ってフォームを透過させました。
背景色を黒くすると黒い部分が透過になる仕組みなんですが、ラベルやボタンの黒い文字も透過になり、
画像に関しては黒い部分は透明、暗い色ほど透明が強く明るい色ほど不透明、というゴースト状態になります。

矩形なら、透過にしない境界を作ることによって不透明にできるようですが
なにぶん不定型な画像なので・・・マスク画像を作って貼っても、黒い部分が透過になってしまい意味がありませんでした。
アルファチャンネル付きの透過GIF画像でも同じくゴースト状態です。

どうぞご教授願いますm(__)m
2013/03/15(金) 01:23:30.12ID:gQQUpGxz
2Dのクォータービューゲームをつくろうと思ってたのですが
とある3Dゲームで見た事がある、『物陰に隠れたキャラクタをシルエット表示する』方法を考えていたのですが
考えてもまるで実装の仕方がわかりません

そもそもスプライトの表示順でどうにかなるのでしょうか?
2013/03/15(金) 01:36:29.65ID:89zaierS
シルエットはキャラの上に非表示で重ねておけば?
物陰に隠れた→シルエット表示
出た→非表示
2013/03/15(金) 18:42:53.28ID:oQGzchb4
シルエットってどの程度の表現なのかによるんじゃね。
真っ黒にしろ薄暗くするにしろ、キャラのマスク画像の透明度を変えてかぶせる方式。
隠れるオブジェクト側に半透明の影画像を付けておく方式。
影っぽい光彩画像(////みたいな)を作って、それをキャラにかぶせる方式。
2013/03/28(木) 13:51:54.93ID:3yAcGHY+
セーブデータの保存場所はどこが標準?
2013/03/28(木) 14:40:11.39ID:vViAZCV3
>>927
そのゲーム作った人が決めた場所
2013/03/29(金) 01:32:02.27ID:caLU/skX
>>927
まぁ、>>928が正解なんだがw

ユーザごとのドキュメントフォルダを取得し、
その下に配置するのが現代的と思われる。
マルチユーザを意識しないとね。
2013/04/08(月) 17:05:33.61ID:E5j8lfly
質問する場所が違っていたらすみません。

DirectShowを使用して動画の速度を変化させたいのですが
変化させるたびに0フレームから動画が再生されてしまいます。
AVI形式ですと、途中からでも速度がシームレスに変わるのですが
映像の容量が大きくなってしまうので悩んでいます。
なにか解決方法はありますでしょうか?
できればDirectShowを使う前提でお願い致します。
931名前は開発中のものです。
垢版 |
2013/04/14(日) 21:50:09.04ID:uAbXx+sS
 
932名前は開発中のものです。
垢版 |
2013/12/01(日) 11:59:05.28ID:SDLB2Fq5
2Dアクションゲームを製作しております。

リフト(動く足場)の実装を試みたのですが、問題に突き当たってしまいました。
まず、下降中のリフト(判定は上下左右 全方向にあるものとする)に対して、キャラクターが下からジャンプをし、リフトの下側(天井)へ衝突したとします。
その後 キャラクターの位置を補正し、縦方向の加速度を0にする。といった処理を行っているのですが、そのまま 天井へくっついてしまう。といった事態が発生してしまいます。
これは、衝突後 キャラクターの縦加速度を0にしたのち、そこから再度重力加算を行っているため、リフトの下降移動量がその数値よりも上回っている場合 再度衝突が起こり、再び キャラクターの縦加速度が0へ。
といったことが繰り返されているために、このような状況に陥っているものかと思われます。
この場合、どういった対処が考えられるでしょうか。

皆様のお知恵をお貸ししていただきたく思います。よろしくお願いします。
2013/12/01(日) 13:51:45.48ID:5ZkCO8Ug
下降中なら加速度を補正するのを止めれば良いんじゃね。
速度の補正も正確には0にするんじゃなくて、リフトの速度に
合せるべきかも。
2013/12/01(日) 23:33:12.67ID:mI3qZrzT
んー。
頭上の判定は「上昇中」のみ行い、「下降中」は足元の判定だけにするとかダメかな。
2013/12/02(月) 11:45:56.37ID:RBLi15dp
当たり判定を、静止物体、移動物体、そして
可動プラットフォームなどと場合分けする。
エレベーターの場合は、
エレベーターの移動と自分の移動の合成の相対速度になる。
936名前は開発中のものです。
垢版 |
2013/12/02(月) 16:30:01.06ID:Xw3mpRsD
天井に当たる直前のキャラクターのベクトルは、天井に当たった事で反射すると考えれば、
縦方向のベクトルを符号逆にして、それに重力加えるので良いような気がする

一回、無重力状態での挙動で整理してみて、そこに重力を加える処理でどうかな?
937932
垢版 |
2013/12/02(月) 18:26:10.30ID:Wij17DF+
>>933-936
こんなにも沢山の方々の目に留まるとは思っていませんでしたので、大変恐縮です。
皆様、様々なご意見を賜り 本当にありがとうございます。
非常に参考になりますm(_ _)m

ご指摘を受け、可動物への衝突時に 加速度を0へ補正する事への違和感に気が付きました。
今回は、ひとまず 下降中のリフトの速度へと合わせる方法をとることとしました。

『Windowsゲームプログラミング』といった趣旨とは 直接的には関係無いにも関わらず、沢山のご意見 ありがとうございました。
2013/12/20(金) 23:44:33.92ID:G1FVNCnk
プログラミングまったく未経験の者です。
対戦ゲームだと難しいAIを組まないといけないでしょうから、一人用のウォー・ボードゲームを電子化し、
本来はサイコロを振ってチャートを参照して結果を実行するのをコンピューターに処理させる
ぐらいのことをしたいのですが、それをやるのに十分かつ適切な初心者向きのプログラミングがあれば教えてください。
939名前は開発中のものです。
垢版 |
2013/12/21(土) 00:33:43.33ID:pghB6HLo
>>938
戦略シュミレーションゲーム。
THE FLEET COMMANDER
http://www1.axfc.net/uploader/Sc/so/165961

こんな感じのを作りたいのですか?
940938
垢版 |
2013/12/21(土) 04:17:01.14ID:L3dtKLD+
>>939
ぼんやりとイメージしているのはスゴロクに近いかもしれません。
ターン(マス)を進め、そのたびにサイコロを振る。その出目に従ってイベントや戦闘が起きる。
そのイベントや戦闘もサイコロの出目で解決される。イベントや戦闘の結果ごとに特定の効果音や動画が再生されるようにする。

これだけのことを初心者でもわかりやすくプログラミングしようと思えば、何が向いているのでしょうか?
2013/12/21(土) 10:51:33.99ID:fuA00Ikt
仕様が複雑なのでどんな言語や開発環境をもってしても複雑なプログラミングにしかならないよ。
とりあえずHSPおすすめ。
2013/12/21(土) 11:09:21.41ID:XhLY4ORi
スゴロクですか、
ひとりゲームでも拡張して、
AI追加や、マルチプレー、ネットゲームの可能性も有るでしょう。
わりと単純だからどのプログラム言語でも出来ると思う。

インタプリタ系がかんたんです。
HSP言語やBASIC言語になるだろう。
エクセルVBAはBASIC言語です。

汎用的に使われるのがC言語で、
最近の言語はC言語の発展形になります。
C言語とDXライブラリが初心者向けに推薦できます。
そしてすこし大きいプログラムになっても対応できます。

あなたのプログラム技能次第ですから、
本を買ってプログラムを行ってみてください。
人には、向き不向きがあるので、あなたが
プログラミングに向いているかどうかを試す必要があります。
943938
垢版 |
2013/12/21(土) 12:26:27.18ID:L3dtKLD+
レスありがとうございます。
とりあえずHSPのゲームプログラミング入門本を見てみます。
アマゾンでプログラミングの本を検索しているとJavaの本があったんですが、
やはりJavaよりHSPの方が初心者には扱いやすいですか?
2013/12/21(土) 12:44:30.62ID:jT9p6BYS
プログラム言語はひとつだけを使うのではなくて
用途に応じて言語を使い分けるものです。
HSPも小さいプログラムならば悪くないですが、
ちょっと大きいプログラムになると辛くなります。
そこで、最初はHSPで初めて、
ちょっと慣れてきたらJavaを始めるのも良いでしょう。
945938
垢版 |
2013/12/21(土) 13:04:38.53ID:L3dtKLD+
なるほど。
おかげで学習の方向性が定まってきました。
ありがとうございました。
2013/12/23(月) 11:25:45.36ID:v1muKMwi
言語云々よりシステムデザインをはっきりさせたほうがよい
まだボードゲームとして具体化できていないならすぐ頓挫する
レス数が900を超えています。1000を超えると表示できなくなるよ。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況