5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

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

1 :デフォルトの名無しさん:05/02/25 05:10:53
※回答する人も、質問する人も必ず読んでください 

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

【 質問する香具師 】 
・ どんな事で躓いているのか明確にしる。 
・ 長くならないなら躓いている部分のコードを晒してみれ。 
・ 解決した場合、お礼を言うのは当然だが、何をどうしたら解決したかを明確に書け。 


2 :デフォルトの名無しさん:05/02/25 07:14:21
重複。>>1は氏ね。
http://pc5.2ch.net/test/read.cgi/tech/1108987183/


3 :デフォルトの名無しさん:05/02/25 08:21:11
>>2
DirectXを使わず、猫みたいなWin32APIを中心に使ったものでは?

4 :デフォルトの名無しさん:05/02/25 08:43:25
>>2
DirectXだけがゲームとは限らないぞ

5 :デフォルトの名無しさん:05/02/25 09:09:21
Win32APIだけで作る理由がよく分からない。
それにWin32だけで作るならわざわざゲームのスレを立てなくても、
Win32のスレでやればいい。

6 :デフォルトの名無しさん:05/02/25 09:13:15
スレ趣旨をどうこうは言わないが

【 質問する香具師 】
・謙虚であれ

これを加えてホスィね。マナーのmの字もわからん奴が多すぎる。


7 :デフォルトの名無しさん:05/02/25 09:16:42
Win32のGDIだけでゲームを作ろうとするなら、当然2Dになるだろう。
しかもアルファブレンディングもアフィン変換も使わない、
ただビットマップを置いていくだけのゲームだ。
そんなゲームにわざわざスレが1つ必要なほど質問が来ると思うか?

8 :デフォルトの名無しさん:05/02/25 09:52:35
ゲームと言えばDirectXと思うのも痛いが、
だからと言ってWin32APIを引き合いに出すのはもっと痛い。
更に言えばこんな単発スレを立てる>1は最も痛い。

9 :デフォルトの名無しさん:05/02/25 09:57:47
Win32APIでアクションゲームを作る場合、どんなゲームループが理想ですか?

10 :デフォルトの名無しさん:05/02/25 10:09:41
>Win32APIだけで作る
僕の場合はこれしか使えないからかな。
MFCは使わず、リソスクはBMPとバイナリを詰めるのみに使う。

>別にこのスレがある必要は無いのでは
質問:http://pc5.2ch.net/test/read.cgi/tech/1108199304/l50
研究:http://pc5.2ch.net/test/read.cgi/tech/1057225723/l50
ゲーム寄りの話:http://pc5.2ch.net/gamedev/
となるかもしれないけど、同じ32onlierとしてはあって欲しいスレかな。
イベントトリブン回りをうまく書く技術とか、結構ネタはあると思う。
スレタイが総合スレとか研究スレとかだったら良かったかもしれないが。

>アルファブレンディング アフィン変換
共に無い知識で言うけど、前者はBitBlt系の最後の引数を変える事で、
後者はhttp://www.sm.rim.or.jp/~shishido/kaiten.htmlで出来そうな気もする。

11 :デフォルトの名無しさん:05/02/25 10:18:48
>>8
同じく。DirectXのゲームは、ちょっとしたゲームでも
かなりでかくなるみたいだから、その場合は使わないで欲しい気も。

>>9
ゲームループとは、メッセージループかメインループの部分の事?

12 :デフォルトの名無しさん:05/02/25 10:31:05
ゲームループ の検索結果のうち 日本語のページ 約 1,630 件中 1 - 50 件目 (0.16 秒)
game-loop の検索結果 約 14,800 件中 1 - 50 件目 (0.45 秒)

説明しないといけないような用語か?ゲ製作と違って常識通じねーな

13 :デフォルトの名無しさん:05/02/25 10:55:26
なるほど。メインループ==ゲームループなのか。
僕は、RPG、SRPGしか作った事が無いから、
それらはイベントトリブンで行けるので、それが分からなかった。

アクションもイベントトリブンで作ってみたい気もするけど、無理なのかな。
タイマーの精度がNT系では10ミリ秒だから、30FPSとかなら出来そうな気もする。
しかし、9x系は、55ミリ秒と荒すぎるから、ちょっと無理か。

14 :デフォルトの名無しさん:05/02/25 13:25:01
> 僕は、RPG、SRPGしか作った事が無いから、
RPGつくれるやつがループと言われて何のことか分からないわけがない。
釣るならもっとうまくやれ。このスレ自体釣りスレだがな。

15 :デフォルトの名無しさん:05/02/25 13:27:39
>>1
板違い

ゲーム製作技術@2ch掲示板
http://pc5.2ch.net/gamedev/




16 :デフォルトの名無しさん:05/02/26 02:36:11
敵機を追っていくミサイルはどのように実現したらよいのでしょうか?

17 :デフォルトの名無しさん:05/02/26 07:27:50
>>16
板違い

ゲーム製作技術@2ch掲示板
http://pc5.2ch.net/gamedev/


18 :デフォルトの名無しさん:05/02/26 07:45:12
>>16
ミサイル座標: x,y
ミサイル移動速度 sx, sy
敵の位置: ex, ey

while(){
x += sx;
y += sy;

if( x < ex ) sx++;
if( x > ex ) sx--;
if( y < ey ) sy++;
if( y > ey ) sy--;
}

でよいかな?




19 :デフォルトの名無しさん:05/02/26 07:48:55
>>16

http://hakuhin.hp.infoseek.co.jp/main/as/shot.html
ここにflashだが、あるので、参考にしてみたら


20 :デフォルトの名無しさん:05/02/26 07:56:16
なぜゲーム製作技術があるのにそこでやらないんだ

21 :デフォルトの名無しさん:05/02/26 09:07:20
バカな知ったかぶりが教えたがるから。
質問する方がバカなら、答える方もバカ。

22 :デフォルトの名無しさん:05/02/26 09:33:35
将棋とか結構あるぜよ。

23 :デフォルトの名無しさん:05/02/26 10:20:54
Win32APIとDirectXでは2Dの描画にどのくらい差が出る?

24 :デフォルトの名無しさん:05/02/26 10:46:46
>>16
シューティングゲームアルゴリズムマニアックス
http://www.amazon.co.jp/exec/obidos/ASIN/4797327316

25 :デフォルトの名無しさん:05/02/26 13:58:05
>>23
矩形コピーなら同等程度なことが多い

26 :デフォルトの名無しさん:05/02/27 04:24:03
>>23
最近のマシンなら大して変わらないが、昔のマシンならだいぶ違い。
DirectDrawがあった時代のね

27 :デフォルトの名無しさん:05/02/27 12:14:42
メインループには Sleep(1) を入れようキャンペーン実施中。

28 :デフォルトの名無しさん:05/02/27 12:15:41
>>27
キモ

29 :デフォルトの名無しさん:05/02/27 12:20:45
>>16
敵に向かって移動させる。
命中精度を落としたい場合は慣性をつける。
ミサイルらしさを表現するには舵角を制限し操舵を一定時間ごとにする。
画面に残り続けないように時間制限で自爆するか舵を失うようにする。
軌道修正するときに噴射を描画しそれに対してやや遅れて反応させると
ミサイルの重量感を表現できる。
初速は遅いほうがらしさがでる。

30 :デフォルトの名無しさん:05/02/27 14:34:25
>>27
どうして?

31 :デフォルトの名無しさん:05/02/27 15:10:38
>>27
高精度タイマー使うのはダメなの?
スレッド以上にコールバックは嫌われてる&ちょっとばかし環境依存だけど。

32 :nana:05/02/27 18:22:34
みんな、かなり知識深いね〜。
スーファミのドラクエはWindowsで作るには
どうすればできるの?
ていうか、できる?

33 :デフォルトの名無しさん:05/02/27 18:27:33
>どうすればできるの?
プログラムを組めばできる。

>ていうか、できる?
できる。

34 :デフォルトの名無しさん:05/02/27 18:29:28
板違いだつってんだろうがキチガイ共

35 :nana:05/02/27 18:31:08
できるんだ〜。
ドラクエ作成者はどんな言語を使用したの?

36 :デフォルトの名無しさん:05/02/27 18:34:41
>>35
氏ね、板違いだつってんだろうが。

37 :デフォルトの名無しさん:05/02/27 18:35:24
>>35
アセンブラ

38 :デフォルトの名無しさん:05/02/27 18:38:49
>>32
スーファミのプログラム
http://pc5.2ch.net/test/read.cgi/gamedev/1095063252/

39 :デフォルトの名無しさん:05/02/27 18:39:24
>>36
削除依頼も出せない奴は黙ってろバカ

40 :誘導:05/02/27 18:40:19

削除依頼済

     http://qb5.2ch.net/test/read.cgi/saku/1098189517/41

ゲーム製作関連の話題はゲ製作板へ。

     http://pc5.2ch.net/gamedev/


-------------------------------- 終了 ----------------------------------


41 :デフォルトの名無しさん:05/02/27 18:41:12
>>39
出してきてやったぞ。
おまえはさっさと氏ねや、この知的障害。

42 :デフォルトの名無しさん:05/02/27 18:42:10
>>41
やればできるじゃないかバカ野郎

43 :〜お知らせ〜:05/02/27 18:42:25
以後このスレッドが削除されるまで
精神異常者(>>39)のリハビリスレッドとなります

44 :名前は開発中のものです。:05/02/28 03:20:21 ID:6aNJ7Ffe
移転age

45 :名前は開発中のものです。:05/03/04 23:53:44 ID:UowmhfF3
age

46 :名前は開発中のものです。:2005/06/02(木) 18:58:54 ID:luVH093G
ヨロシクお願いします

★使用OS Windows2000
★使用ブラウザ名Internet Explorer 6 sp1
★接続形態(ADSL)とルーターの無
★ADSLなどのブロバイダー(YahooBB)

ダイレクト9がダウンロードできなくって困ってます
今は8.1使用なんですがインストの途中で
デジタル署名が見つからないのでと出て作業が終了されてしまいます
マイクロソフトのサイトで正規のOSWindows2000と確認されてるのに・・
デジタル署名と言うのも習得したのに何故なんでしょうか?
分かる方、回答よろしくおねがいします。

47 :名前は開発中のものです。:2005/06/02(木) 21:09:10 ID:8ttuLsTK
>>46
それだけじゃ、わからん。
もっと エラーメッセージ等きっちりださんと分かるもんもわからん。
ただ、エラーメッセージ中に個人情報がまぎれてるかも知れんので、そこは自己判断で・・・。
あと、Googleはやってみた?
いろいろと、出てくるみたいだが、
ttp://search.goo.ne.jp/web.jsp?TAB=&MT=%A5%C7%A5%B8%A5%BF%A5%EB%BD%F0%CC%BE%A1%A1%A5%C0%A5%A6%A5%F3%A5%ED%A1%BC%A5%C9

48 :名前は開発中のものです。:2005/06/03(金) 14:55:40 ID:Jn9G6+tH
DirectX 9.0 SDK のことなら……

No, do not validate Windows at this time, but take me to the download.

の方をマークすれば validation せずにダウンロードできないか?

49 :名前は開発中のものです。:2005/06/07(火) 13:57:22 ID:rSFC/KVV
Shade、Lightwave、Metasequoiaで作ったものでも同じプログラム内で動かせるのでしょうか?データの種類は?知ってる人がいたら教えてください。

50 :名前は開発中のものです。:2005/06/07(火) 15:41:04 ID:x6z/pbp5
あー、移転されちゃったのね。
なんか話がかみ合わないと思ったら。

51 :名前は開発中のものです。:2005/06/08(水) 06:24:28 ID:lU6Bxpf7
>>49
原則可能。てか、ふつうにXファイルにして使う。
それ以外は自分は面倒だし、勉強不足もあってわからん。

あと、Shadeや、Lightwaveと Metasequoiaはちょいっと別もんだったきもするが。
Metasequoiaはモーション作れたっけ? 

52 :名前は開発中のものです。:2005/06/08(水) 11:16:52 ID:rKqac8c9
>>51
〜陸海空Ponline〜壊滅度7% 被害報告スレ
http://ex9.2ch.net/test/read.cgi/net/1116471237/l50


53 :名前は開発中のものです。:2005/07/07(木) 03:33:32 ID:bNRoN1JS
現在Windows用のゲームを作り始めようと考えているのですが、どの解像度で作製しようかと迷っています。
今まではずっと640 * 480で作っていたのですが、XBOX360は 1280 * 720 が一般的なようですよね?
Windowsのゲームも将来この解像度のゲームが一般的になるのでしょうか?
もしなるとしたら、大体あと何年先のことになるのでしょうか?
詳しい方いらっしゃいましたら教えて下さい。お願いいたします。

54 :名前は開発中のものです。:2005/07/07(木) 05:25:46 ID:rf7zwdBd
1280*720て普通のテレビに表示できるものなの?

55 :名前は開発中のものです。:2005/07/07(木) 06:14:44 ID:d8TBNYHG
今のテレビの普通って?

56 :名前は開発中のものです。:2005/07/07(木) 12:05:10 ID:DS4yE746
この板ってさびれているよね

57 :名前は開発中のものです。:2005/07/07(木) 12:38:12 ID:Yrnt3I8Q
もうしばらくすると夏厨が湧いてくるのでご安心を

58 :名前は開発中のものです。:2005/07/09(土) 13:45:20 ID:4rHDGg8j
先月パソコンとFOMAを買っていろいろ遊んでいます。
とりあえず、パソコンでドラクエみたいなゲーム作りたいんですが、どうすれば良いんでしょうか?

>>57
夏厨って何ですか?


59 :名前は開発中のものです。:2005/07/09(土) 20:33:09 ID:wh2hK35n
1.RPGツクール辺り買ってきてお手軽に済ませる
2.プログラミング関連の本を読み漁る

60 :名前は開発中のものです。:2005/08/03(水) 19:16:24 ID:k34xmgD5
win32APIを皆さんはどう読んでいますか?
自分は「ウィンサンジュウニエーピーアイ」
と思って読んでるんですけど
間違ってますかね?

61 :名前は開発中のものです。:2005/08/03(水) 19:19:14 ID:yu5Ac1eo
ウィンサンニーエーピーアイと読んでる。
そんなことより Perl をなんて読むのか気になる。パール?

62 :名前は開発中のものです。:2005/08/03(水) 19:25:21 ID:XO0280TG
>>60
私も同じ。合ってるんじゃない?
ttp://e-words.jp/w/Win32.html
ttp://e-words.jp/w/API.html

>>61
そうだよ。
ttp://e-words.jp/w/Perl.html

63 :60:2005/08/03(水) 21:27:08 ID:k34xmgD5
答えてくれてありがとう。
地味に気になってたんで。


64 :名前は開発中のものです。:2005/08/08(月) 22:46:38 ID:QpcWzPU+
VC++6でリソースの画像をBitBltすると
画面更新のときにちょっとチラつくYO!
これをなくすにはDXSDK使って、バックバッファに書き込んでおいて
垂直同期?リフレッシュレート?に合わせて表示させるってやるしかないんですよね?

65 :名前は開発中のものです。:2005/08/09(火) 01:17:23 ID:dpTvC2TM
>>64
バックバッファはCreateCompatibleBitmap()でもmalloc()でも作れるから、
そこへ全部書き込み終わってからスクリーンに出力するといい。
垂直同期が取れてない場合のがたつき・ティアリングと、描画のちらつきとは別問題。

とはいえ最初からDirectX使うのも悪くないと思うけどね。

66 :名前は開発中のものです。:2005/08/14(日) 23:15:22 ID:Sa7iSD/h
ビットマップブラシを使おうと思うと
どうしても1つ1つのビットマップが小さくなってしまうのですが、
64×48を10個と640×48を1個では
仮想デバイスに描写しておく時、同じ容量と見なされるんですか?


67 :名前は開発中のものです。:2005/08/15(月) 17:31:05 ID:limOG/LR
>>66
確か初心者スレにも同じ質問をしてた人だよね?なぜか答えにくいです。

「仮想デバイス」の意味がわかりませんが、DDBなら正確な容量は実装依存です。
おそらく64x48を10個の方が管理領域が多少増えるくらいでしょう。
ハンドルも多く消費するのでWindows9x系では気をつけないといけません。

ところで640x48のような大きなサイズの画像をブラシとして使うのは個人的に賛成できません。
もしダイアログ等の背景として使うなら、とりあえず近い色のSolidBrushを割り当てておいて、
WM_PAINTをフックして背景を描画するのがいいと思います。

68 :名前は開発中のものです。:2005/08/23(火) 08:00:50 ID:Zx5JPWRx
api千成に

69 :補給屋 ◆ZA3g9myNTI :2005/08/30(火) 08:22:06 ID:kNT1vLRG
DirectDrawを使ってゲームを作っている者ですが、
BitBlt, BltFastなど同じインターフェイスを使う場合
HALに限った場合、DirectDrawやDirectDrawSurfaceの
バージョンによって描画速度が異なる場合があるのでしょうか?

70 :名前は開発中のものです。:2005/09/01(木) 01:04:59 ID:hJW3acz9
スレ違いかもしれませぬが
閉鎖されたhotates coreってサイトのサンプルソース持ってる方いませんか?
Internet Archiveでサイトは閲覧できるんですがサンプルソース群は保存されてない
みたいで。。

71 :名前は開発中のものです。:2005/09/15(木) 09:39:44 ID:HPeeZY8R
C言語を勉強したいと思っているのですがコンパイラは何を使えばいいのでしょうか?
MicrosoftのVisual C++ .NET Standard Version 2003(アカデミックパック)を考えているのですが
他に「これが最高峰だ!」というものがありましたら教えてください。

72 :名前は開発中のものです。:2005/09/15(木) 09:45:57 ID:/UZ/Fwd5
Visual Studio .net theSpoke Premium 2003のほうがお得だよ

73 :名前は開発中のものです。:2005/09/15(木) 09:52:52 ID:HPeeZY8R
アマゾンでの評価は素晴らしいですね。
価格も気に入ったのでこれにして見ます。
ありがとうございました。

しかし中学生の生徒手帳でもokなのかな?

74 :名前は開発中のものです。:2005/09/15(木) 12:03:21 ID:/UZ/Fwd5
スレ違いに気付かずレスしてたのに今気付いたorz
ム板で聞いたほうがいいぞ

以下チラシの(ry
買う前にIDEとコンパイラと言語の違いを理解してからの方がいいぞ。
フリーのコンパイラだってあるんだしな。

75 :名前は開発中のものです。:2005/09/15(木) 12:23:47 ID:HPeeZY8R
>>74
スレ違いでしたか。申し訳ありません。
IDE?コンパイラ?まだまだわからない事だらけなので勉強すべき事がたくさんありそうです。
とりあえずありがとうございました。

76 :名前は開発中のものです。:2005/09/24(土) 11:16:54 ID:rPMcfhBj


77 : 名前は開発中のものです。 :2005/09/25(日) 11:41:32 ID:xglj2kjx
質問です、windows visualC++でも
ゲームは作れますか?

78 :名前は開発中のものです。:2005/09/25(日) 11:49:01 ID:MAHhSOYd
作れますよ。

79 :名前は開発中のものです。:2005/09/26(月) 15:21:34 ID:oc2wOxdW
>visualC++でも・・・
いつのまにか俺もオッサンになってたのか

80 :名前は開発中のものです。:2005/09/26(月) 17:05:28 ID:YPfHiHsl
>>79
大丈夫w

81 :名前は開発中のものです。:2005/09/28(水) 13:52:31 ID:rzNtxtAi
Microsoft Visual C++.NETを使ってゲームプログラミングを覚えたいのですが、
お勧めの本を教えていただけないでしょうか

82 :名前は開発中のものです。:2005/09/28(水) 15:48:33 ID:rzNtxtAi
すいません、専用スレを見つけたのでそっちで聞きます

83 :名前は開発中のものです。:2005/09/28(水) 19:52:30 ID:xL4sHIyu
>>82


84 :名前は開発中のものです。:2005/10/15(土) 00:39:14 ID:iTtrbiPs
一応保守

85 :名前は開発中のものです。:2005/10/28(金) 15:59:11 ID:MzhCeYHU
何気に良スレ化

86 :名前は開発中のものです。:2005/11/16(水) 15:23:34 ID:DPSiO9dj
ちょっと質問

↑の方でSleep(1)キャンペーンとかいってるけど、
入れるとしたらSleep(0)の間違いじゃないの?

87 :名前は開発中のものです。:2005/11/16(水) 17:57:54 ID:4PzPG7+V
Sleep(0)って効果あるん?
入れないのと変わんない気がするんだが。

88 :名前は開発中のものです。:2005/11/16(水) 18:17:04 ID:fJZ6wsh+
ttp://www.microsoft.com/japan/developer/library/jpwinpf/_win32_sleep.htm

89 :名前は開発中のものです。:2005/11/16(水) 18:21:58 ID:4PzPG7+V
m(__)m

90 :名前は開発中のものです。:2005/11/26(土) 11:57:08 ID:LWVyUlms
n(__)n

91 :名前は開発中のものです。:2005/11/26(土) 12:29:23 ID:42AtecVh
|(_)|

92 :名前は開発中のものです。:2005/11/26(土) 14:34:23 ID:aQE9abVY
||

93 :名前は開発中のものです。:2005/11/26(土) 14:53:50 ID:A5F0hyVg
>>89-92
ワラタ

94 :名前は開発中のものです。:2005/12/01(木) 20:51:38 ID:/rA1ZDgK
ようやく質問できそうな板を発見しました
D3DX9でメッシュを表示してるんですがメッシュ全体の座標移動で引っかかってます
現在はループ内でメッシュの一つ一つの頂点データに行列を掛け合わせて
座標移動させてます。もっと効率のいい方法はないのでしょうか?
メッシュ自体を座標移動させる関数とかがあるはずだと思って探しては居るのですが。
わかる方がいましたら、ヒントだけでもいいのでお願いしますm(_ _)m

95 :名前は開発中のものです。:2005/12/01(木) 21:32:25 ID:cei8bs2s
本当に頂点情報を動かしたい場合、あるいはシェーダを使う場合は、その方法しかないよ。

まぁでも普通、固定機能においてメッシュ単位で移動する時は、ローカル座標行列を指定する。
device->SetTransform( D3DTS_WORLD, &local_matrix );
こんな感じで設定後、DrawPrimitive(DrawSubset?)すると。

こっちのが良いかもね
http://pc8.2ch.net/test/read.cgi/gamedev/1132937938/

96 :名前は開発中のものです。:2005/12/01(木) 21:34:58 ID:WP5eL4DZ
変換行列をSetTransformに渡して
メッシュの頂点情報をDrawPrimitive系に渡してやれば
D3Dが勝手に変換してくれるよ。


97 :96:2005/12/01(木) 21:36:24 ID:WP5eL4DZ
何よ! 割り込まないでよ!

98 :名前は開発中のものです。:2005/12/01(木) 22:00:20 ID:cei8bs2s
あーら、いらしたの
ごめん遊ばせ、オホホホホ

99 :94:2005/12/01(木) 22:43:49 ID:/rA1ZDgK
>>95
>>96
ありがとうございましたm(_ _)m
解決の糸口になりました。これでやっと先に進めそうです。

100 :名前は開発中のものです。:2005/12/07(水) 14:13:03 ID:hfK79TvX
人生初の100取っておこ。

101 :名前は開発中のものです。:2005/12/11(日) 00:57:46 ID:tpuxQZPJ
みなさん、ゲームを作る時・公開する時に、
素材データはどう扱っているのでしょうか。

可能なら自力のソースコードで
暗号化+ファイルパッキングをしたいのですが、
既にライブラリとかあるなら、
そこで労力を取られても本末転倒なので
先人の知恵をお借りしようかとも思っています。

102 :名前は開発中のものです。:2005/12/11(日) 02:29:58 ID:mkpzTkl3
リソースに含むだけで、特に何もしていないな。

103 :名前は開発中のものです。:2005/12/11(日) 06:40:35 ID:Ad4hxLcO
>>101
私もリソースに入れるのが大半だな。

素材自体に重点があるゲーム(AVGやノベル系シナリオ系等)以外の場合なら
特に考慮しないでデータフォルダにそのまま置いてある。

104 :名前は開発中のものです。:2005/12/11(日) 12:49:45 ID:NkBX4KCs
ファイル毎に適当にXOR数回掛けて
ひとつのファイルにパックしてる。
これだけでも多分わざわざ見るやつはいないかと。

105 :名前は開発中のものです。:2005/12/12(月) 19:29:03 ID:FwPrGwWp
Cmagazine今月号の、ゲームのシクミっていう連載に
ファイルパックと暗号化の作例が載ってるので
読んでみるのもいいかも。

106 :名前は開発中のものです。:2005/12/13(火) 09:31:15 ID:++9Kv20o
お約束だが・・作者乙。

トルネコみたいなゲームで使いたい、
オートセーブのデータを暗号化 ∧ 見られない位置に
置くのも載っててくれるとうれしい。

107 :名前は開発中のものです。:2005/12/13(火) 21:31:03 ID:1C5377qW
暗号化というかチェックサムをつければ
データの改竄は現実的な範囲では食い止められると思うけどね
逆汗されないと見破れない程度のアルゴリズムはすぐ思いつくだろ

置く場所に関してはレジストリかシステムフォルダの下かのどっちかだから
セーブデータの待避に対抗する手段はないと思われ
どうしても防ぎたいなら、ネトゲにしてしまうしかないと思う


108 :名前は開発中のものです。:2005/12/13(火) 22:12:44 ID:jZasn0nx
圧縮展開ライブラリを使えば手っ取り早く暗号化+ファイルパックの
目的が果たせるんでないかしら。
有名どころでzlib、日本語DOCがいいなら開発環境は限られるが
GCASDK、7zアーカイバの作者もソースを公開してた気が。
もしDelphiならQDAアーカイバと展開用unitの組み合わせが手軽。

109 :名前は開発中のものです。:2005/12/13(火) 22:24:17 ID:vxNV3LFc
3Dのアクションゲームで壁をこする方法教えて下さい。
ソースが無いと分かりません。説明だけじゃわけわかめ

110 :名前は開発中のものです。:2005/12/13(火) 22:26:09 ID:JMd0636h
>>109
つ[ quake ]

111 :名前は開発中のものです。:2005/12/14(水) 00:50:16 ID:sKyCiHBP
>>109
壁をこするという簡潔な表現方法、なかなか良いね。
壁とあたり判定取れてるんなら、簡単にできると思うが。
それでも分からないならソース見てもわからんような。

112 :名前は開発中のものです。:2005/12/14(水) 01:16:48 ID:NSqoAe+Z
>>109
C++でいいよね?

// 壁と移動ルートの交点を移動終了地点にする。
pos = wall * route;

113 :名前は開発中のものです。:2006/01/04(水) 01:17:42 ID:NIycc+Ju
上げとく。

114 :名前は開発中のものです。:2006/01/30(月) 00:40:02 ID:iUmoOh++
質問があります。
やや抽象的な話になるのですが、現在構築中のゲームで、
ゲームマネージャがシーンスタックを保持しシーン管理を行っています。
この場合ゲームマネージャーの下にシーンがあるということで、
シーン間でデータのやり取りを直接行えなかったので、
シーンの基本クラスで構造体セット用関数を定義し、ゲームマネージャに構造体を持たせ、
Pushの際にシーンクラスに渡すことにしました。
ここまでは良かったのですが、
シーン1で構造体にアクセス後シーン2をPush、
シーン2で構造体にアクセス後シーン2をPop、
そしてシーン1でさらに構造体にアクセスしたところ、アクセス違反といわれてしまいました。

抽象的な内容で申し訳ないのですが、どなたか解決法分かる方ご指南お願いします。
また、他の方法でもシーン間でデータのやり取りが出来ればよいのですが…。

115 :名前は開発中のものです。:2006/01/30(月) 00:49:46 ID:0+/J0o5P
デバッグすりゃいいだろ

116 :名前は開発中のものです。:2006/01/30(月) 00:53:19 ID:iUmoOh++
すみません自己解決しました。

シーン2をPopしてシーン1に戻る際に再度構造体を渡したらアクセス違反になりませんでした。

117 :名前は開発中のものです。:2006/01/30(月) 00:56:00 ID:pjpza3/7
>>114
普通に考えれば、シーン2を開放するときに
ついでにManager下の構造体を解体してるんだな。

ポインタで渡してデストラクタでdeleteとかしてないか?
auto_ptrでポインタを渡してないか?

118 :117:2006/01/30(月) 00:56:14 ID:pjpza3/7
遅かった。

119 :名前は開発中のものです。:2006/01/30(月) 03:57:21 ID:Atby9j+G
グローバルな構造体にしちゃえばいいんじゃない?
身も蓋もないけど。

わざわざpushするよりは軽いと思うし

120 :名前は開発中のものです。:2006/02/14(火) 16:25:09 ID:M5abSfrW
ちょっとスレの主旨とは外れちゃうかもですが質問です。

それなりに動くゲームを作って公開しました。
開発環境はXPSP2 DirectX9.0 Dec 2005です。

XPSP2でDirectXをインストールできた人は動くのですが、
Win95, 98, ME では動かないとの報告がありました。
なぜ動かないのでしょうか?

121 :名前は開発中のものです。:2006/02/14(火) 18:01:32 ID:DFRR3HSf
エスパー先生、出番ですよ。

122 :名前は開発中のものです。:2006/02/14(火) 18:13:08 ID:WgJRobF9
こんなもんにエスパーなんぞ必要ないだろ

>>120
DirectX End-User Runtimes (December 2005) が入っていないからだと思われる
入れさせろ
それでも動かないやつが居たらそいつはWindows95だから切り捨てろ
切り捨てても動かない場合は本当にエスパー能力が必要になる
http://www.microsoft.com/downloads/details.aspx?FamilyID=2da43d38-db71-4c1b-bc6a-9b6652cd92a3&DisplayLang=ja

123 :名前は開発中のものです。:2006/02/14(火) 18:37:49 ID:M5abSfrW
>>122
解答ありがとです。注意書きとして書いておきます。

124 :120:2006/02/16(木) 13:35:40 ID:JZYUO6ta
120です。色んな方に動作報告してもらったところ、
XPでDirectXをインストールしても動かなかった。という人もいます。

DirectX9.0で使わないほうが良い機能とかもあるんでしょうかね…。

125 :名前は開発中のものです。:2006/02/16(木) 14:16:56 ID:OJdygtYA
ビデオカードの性能不足

126 :名前は開発中のものです。:2006/02/16(木) 14:19:12 ID:kUFXVRZi
どこでエラーが出てるか、デバッグ情報を出力するように作れボケ

127 :120:2006/02/16(木) 14:49:05 ID:JZYUO6ta
>>125
やっぱそれなのかな…。

>>126
なるほど。。がんばってみます。

128 :名前は開発中のものです。:2006/02/28(火) 18:34:54 ID:2E5C8cja
スイマセン。ちょっとスレ違いですが、
Windowsのスタートから入るゲーム を完全削除してしまいました。
再ダウンロードできるところってありませんか?

129 :名前は開発中のものです。:2006/02/28(火) 19:34:22 ID:RZk53d9r
ヒント:自作。

130 :名前は開発中のものです。:2006/02/28(火) 19:34:30 ID:lKhFLKj6
はい次の方どうぞ

131 :名前は開発中のものです。:2006/03/01(水) 04:48:20 ID:Qh8/g14t
ジオングに載せるOSは何がいいですか?

132 :名前は開発中のものです。:2006/03/01(水) 07:22:24 ID:2CSbAmuS
>>131
モビル スーツ
 M  S  -  D  O  S

133 :名前は開発中のものです。:2006/03/01(水) 15:11:52 ID:obYVjdQw
ジュディ・オング

134 :名前は開発中のものです。:2006/03/02(木) 19:24:40 ID:zrMtMgtV
MS-DOM

135 :名前は開発中のものです。:2006/03/02(木) 20:18:08 ID:sGwDioJG
半年ロムれ
ってどういうことですか?

136 :名前は開発中のものです。:2006/03/02(木) 20:18:40 ID:SXOxc2oC
>>135
半年ロムれ

137 :名前は開発中のものです。:2006/03/02(木) 20:44:17 ID:sGwDioJG
本当におしえてください。


138 :名前は開発中のものです。:2006/03/02(木) 20:47:08 ID:te28OqJo
つ【 ttp://ja.wikipedia.org/wiki/Read_Only_Member 】

139 :名前は開発中のものです。:2006/03/05(日) 14:34:44 ID:nQJaZOHc
>>138
やっぱり素直に教えてくれる人はいいや。
マジありがとう

140 :名前は開発中のものです。:2006/03/09(木) 19:25:52 ID:whrsy4Bh
>>128
WindowsのCD-ROMにはいってるだろ

141 :名前は開発中のものです。:2006/03/10(金) 21:39:00 ID:eHf1wg1N
画像を回転させたいんでググったら
x’=x×cosΘ−y×sinΘ
y’=x×sinΘ+y×cosΘ

コレがでてきたんで
tex[0].x = 120;
tex[0].y = 240;

tex2[0].x = kai[0].x * cos(90) - kai[0].y * sin(90);
tex2[0].y = kai[0].x * sin(90) + kai[0].y * cos(90);
って書いたんだけどうまくいかないんです。
tex[0]は画像貼り付けた四角のポリゴン?の頂点の内のひとつです。


142 :名前は開発中のものです。:2006/03/10(金) 21:43:55 ID:eHf1wg1N
すみません間違いました

tex2[0].x = tex[0].x * cos(90) - tex[0].y * sin(90);
tex2[0].y = tex[0].x * sin(90) + tex[0].y * cos(90);

こうでした

143 :名前は開発中のものです。:2006/03/10(金) 21:59:05 ID:nz4PdL/y
sin, cosの引数はラジアン単位だよ

144 :名前は開発中のものです。:2006/03/10(金) 22:11:06 ID:eHf1wg1N
#defineRAD (3.14159f/180.0f)

int s;
s = 90 * RAD;

tex2[0].x = tex[0].x * cos(s) - tex[0].y * sin(s);
tex2[0].y = tex[0].x * sin(s) + tex[0].y * cos(s);

こうしてみましたがやっぱり失敗・・・どっか他の所なのかなぁ


145 :名前は開発中のものです。:2006/03/10(金) 22:37:02 ID:6klj+UjH
マルチでしかも馬鹿野郎。

146 :名前は開発中のものです。:2006/03/10(金) 22:37:35 ID:KuO++RFw
>>144
回転方向はあってるのか?

147 :名前は開発中のものです。:2006/03/10(金) 22:41:47 ID:6klj+UjH
数学のライブラリが古いんじゃないのか?

148 :名前は開発中のものです。:2006/03/10(金) 23:39:23 ID:ujXqsDrh
tex2が画面にどう表示されてるのかスクリーンショット貼ってみ
指さして笑ってやるから

149 :名前は開発中のものです。:2006/03/11(土) 00:02:43 ID:eHf1wg1N
変数sをfloatで宣言したら解決しました・・・
レスくれた人ありがとうございました、そしてスマンでした。


150 :名前は開発中のものです。:2006/03/11(土) 03:45:49 ID:tpqkJHMP
ああ、intじゃだめだわw、見逃してしまった俺としたことがorz

151 :名前は開発中のものです。:2006/03/11(土) 22:38:01 ID:dYMZfRdK
俺も両方のスレを見て、且つintを見逃してた
間抜けにもほどがある

ところで
  int s = 90 * (3.14159f/180.0f);
これはwarning吐いて欲しいよな、警告レベルが低いんだろうか

152 :名前は開発中のものです。:2006/03/12(日) 09:55:55 ID:d+dzhoZl
gcc(C)は出ない。
g++(C++)は警告出た。C++は型チェックが厳しくなっていると聞いたが、
そのせいかどうかは知らないけど。
> foo.c:9: warning: converting to `int' from `float'

153 :名前は開発中のものです。:2006/03/12(日) 11:13:20 ID:Gf5zzXTK
VC++だとコマンドプロンプトのデフォルト(/W1)だと警告でないけど、
IDEのデフォルト(/W3)だと警告でるよ。
cでもc++でも一緒。

154 :名前は開発中のものです。:2006/03/14(火) 11:03:46 ID:jyzgIWu2
たとえばRectangleとBitmapをもった基底クラスから派生した
WallやBallやBlockのクラスがありました。
これらのインスタンスはStageクラスのなかに
List<Wall> Walls, List<Ball> Balls, List<Block> Blocks
ってな感じで管理します。
画面の表示はRanderというクラスの担当で、
WM_PAINTでRander.Draw()が駆動されるって寸法です。

問題なのはRanderが如何にしてStage内のアイテム共が持った
RectangleとBitmapを所得したいのです。

155 :名前は開発中のものです。:2006/03/14(火) 13:42:57 ID:xNBzpZ29
ふーん

156 :名前は開発中のものです。:2006/03/14(火) 16:28:54 ID:JuUQgie3
本焼くしますたって幹事か。

157 :名前は開発中のものです。:2006/03/14(火) 21:06:30 ID:WZQXg5CU
>>154
俺もあと100万円くらい所得したいよ。

158 :名前は開発中のものです。:2006/03/14(火) 22:24:34 ID:pCKLkrwr
>>154
mapで関連付けて保持保持

159 :名前は開発中のものです。:2006/03/15(水) 00:11:28 ID:FzaoSDmy
>>154
ちんちんが痒いまで読んだ

160 :名前は開発中のものです。:2006/03/15(水) 01:56:39 ID:HwMqitkL
別に翻訳だっていいじゃまいか。

>>154
StageからRenderへ、インタンスのリストをconstで渡すとか、そんなんじゃないかね。

データの処理は、そのデータを持つクラスにやらせるのが一番だとは思うけどね。
Stage render(){ foreach Wall->Draw(); } という感じで。
Rectangle取得用のgetterとか使って、醜くやるくらいならね。

161 :名前は開発中のものです。:2006/04/11(火) 05:57:17 ID:yYG/QWh3
LoadImage()で読み込んだビットマップを
マスク透過してスプライト表示させようとしているのですが、
ペイントで吐き出したモノクロビットマップ(マスク画像)がなぜか正常に読み込めません。
そのため、現在同じくペイントで16色ビットマップとして吐き出したものを使っていますが、
何か理由があるのでしょうか?

162 :名前は開発中のものです。:2006/04/11(火) 08:53:49 ID:GgpuwVbL
へー、そんなこともあるんね。
いつも256色とか使ってたから知らなかった。
深く考えずに16色でいいんじゃね?

163 :161:2006/04/11(火) 16:53:13 ID:yYG/QWh3
なぜだろう、違うプロジェクトではモノクロビットマップでもマスク透過できてたw
原因はどこにあるのやら…とりあえず分かるまでは16色でいくか♪

164 :名前は開発中のものです。:2006/04/22(土) 23:17:59 ID:CmARROaO
「ボーノー!」ってやってたら指が突き刺さってしまいました。どうすればいいですか?

165 :名前は開発中のものです。:2006/04/23(日) 07:00:29 ID:UH9rbrG7
「ゾーノー!」ってやってみると治ると思います。

166 :名前は開発中のものです。:2006/05/12(金) 19:10:08 ID:VPhv1R83
レスのない>>165の為にage

167 :名前は開発中のものです。:2006/05/12(金) 19:30:41 ID:S90NNkQy
人、それを晒しageと呼ぶ

168 :165:2006/05/13(土) 00:01:36 ID:EjRz/daj
ありがとんw

169 :名前は開発中のものです。:2006/05/18(木) 04:47:55 ID:CkzGQmgk
透過表示する時にスピードを得るためには、
元の画像(透過部分を白か黒にした物)
のメモリはLoadImageで確保し、
マスク画像(透過部分が元の画像と逆)は
CreateBitmap(sizeX, sizeY, 1, 1, NULL);
で確保するのがいいみたい。

LoadImageの方は確保だけでなく表示も行われるが、
表示の内容は無視して、必要な内容に書き換える。

CreateCompatibleBitmapも使ってみたり、
元とマスクの作り方を逆にしたりしてみたが、
スピードが遅くなるだけでなく、
色がおかしくなる場合もあった。

170 :名前は開発中のものです。:2006/05/18(木) 22:34:24 ID:Erp668KR
使い方が間違ってる気がする。

171 :名前は開発中のものです。:2006/05/19(金) 05:28:26 ID:C0KPcZMG
そうかもしれんが疲れ果ててしまった。
当分はこれで行くつもり。

色が変わってしまうのは、
マスク画像をLoadImageのメモリに作った場合。
マスクを画像元に、(透過部分を白か黒にした物)
元の画像を作っていたから、マスク画像が不正な事で
元の画像の色が変わってしまった模様。

スピードの遅いのは、マップのスクロール時とか表示量が多い時。
もちろん、必要部分のみを新たに表示する方法を使っている。
これは、GetDC(NULL)でのCreateCompatibleBitmapだと遅かった。
CreateBitmapでパラメータを合わせれば、同じスピードが出せるかも。

172 :名前は開発中のものです。:2006/05/19(金) 05:31:03 ID:C0KPcZMG
修正。
元の画像が()に書いてある、透過部分を白か黒にした物。
マスク画像は、透過部分をその反対の色にした物。

173 :名前は開発中のものです。:2006/05/21(日) 00:28:18 ID:jLxwcM9S
マスクか、なつかしいなー。
DirectX使う前にやってた。win95出る前かな?
もう、10数年もたつのか・・・

174 :名前は開発中のものです。:2006/05/21(日) 00:28:56 ID:jLxwcM9S
まあ、よく考えたら今のαもある意味マスクだけどな・・・

175 :名前は開発中のものです。:2006/05/21(日) 18:47:14 ID:7IQM+URD
256色以外の環境で色透過する意味あんのかね?
αでいいじゃん。

176 :名前は開発中のものです。:2006/05/21(日) 20:48:47 ID:0ORi4Dni
>>175
169や171の文脈で考えた場合どうやるの?
LOADIMAGEで読んだBITMAPをDIBにするの?


177 :名前は開発中のものです。:2006/05/21(日) 21:22:35 ID:7IQM+URD
>>175
?意味がよくわかんね。
もしかしてやり方聞いてんのかね。
>>169はマスクとか言ってるくらいだからDirectXじゃなくて自前だよな?
LoadImageはDDBだから、俺の場合はBMPの読み込み関数別に作るけど。
んでDIBでαブレンドして転送するね。
どうせ2値でマスク持ってても伸張しないと使えないから
合成部分が変わるだけで別に難しくないと思うが?

ざっとみたけど、色がおかしくなるのはDDBとDIBがよくわかって無いんじゃないか?

178 :名前は開発中のものです。:2006/05/21(日) 23:20:22 ID:xse5f7xt
>>176
DDBのまま。
LoadImage、CreateBitmapで作った
DDBはゲーム終了時まで保持しておく。

>>175>>177
自分もよく分からん。

DIBでDDBの方法と同じように
ラスタオペレーション透過って事?

DIBで透過する場合は、ビットマップを加工したいときとか、
一度に何色も透過したい時に、ピクセル列を直に調べながら、
その透過したい色だけ出力しないというやり方。

179 :名前は開発中のものです。:2006/05/22(月) 01:25:20 ID:95RnP40u
>>178
176です、DDBのままの処理は解るし
上の方(161あたり)でゴチャ付いているのはマスクデータを読み込んだビットマップから生成
しないでペイントから読み込んだりしてるから奇麗にモノクロになってないだけだと思うから
もう少しプログラムしてれば出来るようになるだろうし気にならない。

α値の方は今でも解らない、GDI系のAPIで使えるものってStretchDIBits?
確かに自作DIBクラスでも使ってるけど161のようなアプローチではやらないなぁ
LOADIMAGEは速いし、DDBで簡単に処理できる状況にあるのに何故DIBかやっぱ解らんわ

180 :175:2006/05/22(月) 02:46:30 ID:invPdzO+
>>175>>177俺な。
>>176のアンカ間違い。

>>179 アンタ、161じゃないのか?
まぁいい、同一人物としよう。

>>175で俺が言いたいことは、、、おう
間違えてるわ。

256以外の環境で2値のマスクデータ使って抜く必要あるんかね?
どうせ半透明とか使うしジャギ消し考えたらαでいいじゃん。と。

次にDIBの件か。
別にDDBでもいいさね。ただ俺はめんどくさがり屋なんで
内部で32ビット処理して転送してるだけ。

そして色がおかしくなる件か。
DIBとDDBの形式あわせて無いんじゃないかと思って書いたんだが
原因がペイントだとわかったなら、別にもういいよ。

下の二つを蛇足だ。俺が聞きたいのは一番上。
16ビットや32ビットでマスクデータ使って抜く必要あるんか?
てこと。純粋に知りたいわけよ。

181 :169, 171, 178, (165w):2006/05/22(月) 05:54:13 ID:bceEWeEQ
>>179
予め半マスク画像とマスク画像を作っておくやり方か。
色が白であると思いきや、ちゃんと0xffffffになってないとかかも。

>>180
256色以外でも透過するのは、
透過するもんだと思っていたから。
そんな深い意味はない。
普通にFSMさん所のキャラチップとか。

色がおかしくなるのは、自分は179氏では無いから
両方に別の理由があり、ちょっとややこしくなってしまった。
自分の方は、そのDIB、DDBがなんたらの部分だと思う。

182 :名前は開発中のものです。:2006/05/23(火) 21:58:09 ID:caidKQZy
>>180
スマン179だが161は知らんヤツだ、勘違いさせたな。
因みに俺は透過ごときで苦労したことはない

183 :名前は開発中のものです。:2006/05/31(水) 00:34:28 ID:i/nY/xFd
>>180
内部で32ビット処理して転送してるだけ。

どうやるんです?

184 :名前は開発中のものです。:2006/05/31(水) 13:18:54 ID:PVRo+RDd
1.DIBセクションを作って裏画面とする
2.画像用にABGRの32ビットをピクセル分だけメモリ確保しそこに読む
3.A成分を使って2から1へ演算しながら転送
4.1を表画面にBitBlt


185 :名前は開発中のものです。:2006/06/01(木) 02:29:30 ID:LAwPdhU4
>>184
その 3. の部分はどのように実装したらよいでしょうか
以前テストプログラムで
( ( ((color & 0xff00ff)*alpha & 0xff00ff00) | ((color & 0x00ff00)*alpha & 0x00ff0000) )>>8)
こんな感じの処理を2つ書いて合算していましたがすごく効率悪そうです

186 :名前は開発中のものです。:2006/06/01(木) 03:17:12 ID:V9P/ukur
MMX使ってたけど、上のようなコードでも
無茶しない限り十分実用になってた。
32*32のキャラ100体ぐらいで60FPSは出てたね。

それで足りないならDirect3D使うしかないね。

187 :名前は開発中のものです。:2006/06/02(金) 00:46:38 ID:ZyZMhlVJ
>>186=175だと思ってコメントするが
>16ビットや32ビットでマスクデータ使って抜く必要あるんか?
てこと。純粋に知りたいわけよ。

未だにこの質問したい??
ここまでの183や185を見れば解るだろう(皆やんわり突っ込んでんだよネ)
君の方法はウゼエし面倒だから「すっきりラスターオペ」したい

もっと言ってしまうとキミは若くて学び始めた頃にはGDI使いまわす時代が終わってた。
だから知りませんでしたってことだろうと薄々感じてるんだよ。
180の質問を撤回すれば丸く収まる。


188 :名前は開発中のものです。:2006/06/02(金) 02:50:52 ID:pe1xp10E
はぁ?
最初から

君の方法はウゼエし面倒だから「すっきりラスターオペ」したい

と言えよ。こっちは自前の話してんのに。

だいたい >>176 >>183>>185 は俺に質問したから答えただけだろが。
>未だにこの質問したい??
>だから知りませんでしたってことだろうと薄々感じてるんだよ。
感じてんなら俺が納得するように教えればいいじゃん。なんでわざわざ質問するんだよ。
もともと、アルファだけじゃなぜダメなのか聞いてるのはこっちなのに。
はっきりこうだから、マスクが必要だって教えろよ。
それで済む話だろうが。お前キメェ。

>>187 >180の質問を撤回すれば丸く収まる。
質問スレでなんでここまで言われにゃいかんのだ。

途中で納得するような答え持ってこないで
質問に質問で返しておいてこの言い草か。マジデキメェ。


189 :名前は開発中のものです。:2006/06/13(火) 03:36:21 ID:kYV6i71Y
( '・ー・`)

190 :名前は開発中のものです。:2006/06/18(日) 10:46:11 ID:pBYbu/U2
すまん。
ちょっと質問させてくれ。
いまアクションゲーム作ってるんだが、
グラフィック領域をどの程度まで使っていいのかがちょっと不安。

よくVRAM32Mとか書いてあるけど
あれは256X256dot1枚(深度8bit)=64KBと考えて、
1MのVRAMならそれが128枚分載ると思っていいの?
それともアルファを載せたら領域半分になるとか?

また他のソフトの常駐も一応考えるべきだと思うんだが
どの程度VRAMの空きを作っておくべきだろうか?

また現在のグラフィックボードは何Mくらいが標準と考えていいのだろうか?

とりあえず、作る方はなんとかなってるんだが
世間の動向とハード周りの常識がわからないもので、
悪いんけどだれか教えてくだされ。


191 :名前は開発中のものです。:2006/06/18(日) 11:45:42 ID:Jubw01vM
>>190
VRAMに保持されるのはテクスチャだけじゃないよ。
VRAMがどのように使われるかはドライバ次第なんで
ぶっちゃけPGからはほとんど予測できない。
一応消費量は取得できるからそういうソフと使ってみたり
自分で組んでみるなりやってみ。

192 :190:2006/06/18(日) 12:11:04 ID:pBYbu/U2
>>191
即レスサンクスです。

そうかあ。
こっちで計算してミッチリ詰め込んだらあかんのか。

重ねて申し訳ないんだけど
VRAM消費量の取得方法を教えて頂けませんか?

193 :名前は開発中のものです。:2006/06/18(日) 14:03:15 ID:ElWGc4Pa
>>192
DirectX使えばVRAMの使用料とか空きがわかるはず

194 :名前は開発中のものです。:2006/06/18(日) 14:10:17 ID:Jubw01vM
DirectX9だと使用可能なテクスチャ メモリの推定値しかわからんかも。

195 :190:2006/06/18(日) 14:30:50 ID:pBYbu/U2
確かになんか不安定というか妙なところで消費されてるぽいなあ。
今、普通の同人アクションゲーだとVRAM32Mとか要求してもいいかな?
昔のゲームって要求するスペック、8Mとか16Mだったと思うんだが。

196 :名前は開発中のものです。:2006/06/18(日) 16:03:19 ID:qq6KWnYE
BitBltか・・・何もかも懐かしい・・・

197 :名前は開発中のものです。:2006/06/18(日) 20:00:27 ID:ca306MDz
今ならVRAM64MBは普通に要求しても良い気がする。
むしろ128MBでも良いんじゃないかな。

198 :名前は開発中のものです。:2006/06/18(日) 20:22:51 ID:RClJ2qcr
内容によると思うが
32MB要求してマリオのパクリものとかだったらなんだかなぁ。
ノートPCも視野に入れるとせいぜい8MBぐらいじゃないの。

199 :名前は開発中のものです。:2006/06/18(日) 21:06:16 ID:ElWGc4Pa
>>198
死んでくれ orz

200 :名前は開発中のものです。:2006/06/18(日) 21:09:30 ID:ca306MDz
ノートでも今は128MBとか普通にない?
数年前でも32MBは普通にあったよ
少なくとも8MBなんてのは古すぎて論外でしょ。
そんなんじゃCPUとかもヘボいだろうし

201 :名前は開発中のものです。:2006/06/18(日) 21:21:01 ID:+TAyDrR9
8MBのノートで、今時ゲームしようってのがずうずうしい。

202 :名前は開発中のものです。:2006/06/18(日) 21:24:29 ID:YI1O1grK
オンボードでも8Mでもテストしてくれる分には全然おk〜!
えぶりばでぃ・かもん・てぅぎゃざーだぜぇ!!!

でも、動かないものは動かないから、
三点リーダーつけて報告されてもスルーだからな…

203 :名前は開発中のものです。:2006/06/18(日) 21:45:28 ID:RClJ2qcr
うちのノートもそうだけど、PenIII世代だと8MB普通だと思うが・・・。
というが寧ろ多い方。4MBもザラだし。
2Dのゲームぐらいは出来てほしい。
さすがにこれで3Dゲームやろうとは思わないがね。

204 :190:2006/06/19(月) 20:40:53 ID:/xQO+gJI
なんか色々意見どうもです。
思い切って32Mとか64Mとか(笑)要求することにしちゃいます。
やっぱりアニメーションパターンとか多いほうがいいと思うんで。

CPU速度も1Gとか1.5Gとか要求していいよね?

205 :名前は開発中のものです。:2006/06/19(月) 21:58:11 ID:y6jN8Acn
>>204
個人の2Dゲー製作で同時に32M使うほどのパターン用意できるなんて尊敬するよ
プリレンダとか使うなら平気でいきそうだけど
画面解像度はどれくらいにするのか聞いていい?

CPUは、VRAMに64M要求するならバランス的にありだと思う

206 :名前は開発中のものです。:2006/06/19(月) 22:05:02 ID:sQesAY19
必要1GHz
推奨1.5GHz
ぐらいならありじゃないかな

207 :190:2006/06/20(火) 01:10:00 ID:J9IIGM39
>>205
640*480でやってます。
プリレンダで2Dはあまりメリットを感じないので全部ドット絵で。

208 :名前は開発中のものです。:2006/06/20(火) 20:45:50 ID:wGNZFSvi
洋ゲー遊んでいる俺からすっと、よくそんなんで、ゲーム遊べんなーとか思えてくる

209 :名前は開発中のものです。:2006/06/20(火) 21:12:06 ID:U53Og5Sj
洞窟物語はサクサク動きますが、何か。

210 :sage:2006/06/24(土) 03:03:15 ID:m69O2sj/
すみません、質問なんですが
DirectXのD3DXIntersect関数を使い
当たったメッシュの頂点座標を取得したいのですが
色々触って見ても変な座標しか取れません
変な所があれば教えていただけないでしょうか

//レイを取得
D3DXIntersect(pThing->pMesh,&vecStart,&vecDirection,&boHit,&index,NULL,NULL, pfDistance,&pAllHits,NULL);
// 三角形の頂点バッファを取得する
if( pAllHits != NULL )
{
pHit = (LPD3DXINTERSECTINFO)pAllHits->GetBufferPointer();
index = pHit[0].FaceIndex;
pAllHits->Release();
}

D3DXVECTOR3 vertex[3];
DWORD fvf = pMesh->GetFVF();
DWORD versize = D3DXGetFVFVertexSize(fvf);

PBYTE pvertexBuffer;
pMesh->LockVertexBuffer(D3DLOCK_READONLY,(LPVOID*)&pvertexBuffer);

pvertexBuffer += versize*(index - 1);
for( DWORD i=0; i<3; i++)
{
vertex[i] = *(D3DXVECTOR3*)pvertexBuffer;
pvertexBuffer += versize;
}

211 :名前は開発中のものです。:2006/06/24(土) 03:04:39 ID:m69O2sj/
すみませんsageミスしました・・・
長くなってしまいましたが
よろしくお願いします。

212 :名前は開発中のものです。:2006/06/24(土) 08:42:06 ID:k4X/jTYk
プレフィックスでLP〜ってやつのLって何の略?

213 :名前は開発中のものです。:2006/06/24(土) 09:50:47 ID:RIlsIRaW
16bit時代の名残

214 :名前は開発中のものです。:2006/06/24(土) 10:08:41 ID:1lkTmR+n
Long

215 :名前は開発中のものです。:2006/06/24(土) 14:23:03 ID:EzoU61rH
>>210
俺はヘルプ見ただけだから、理解度は低いかもしれないんだけど

if (boHit){
 // ヒットしている
 hitPos = vecStart + vecDirection * (*pfDistance);
}

これじゃ駄目なんかな?

216 :210:2006/06/25(日) 15:39:14 ID:sfFJvfhl
>>215
すいません言葉足らずでした
取りたいなーと思っているのは
メッシュのポリゴンの頂点座標です。
キャラクターを壁で斜めすべりさせるのに
どうにかして法線を取りたいので

217 :名前は開発中のものです。:2006/06/25(日) 18:21:27 ID:zITz6Cg0
>>216
俺はWindowsもDirectXも分からないけど、まあまずはぬるめの風呂に30分ほどゆっくり
つかって、プログラミングを始めた頃のこと、初めてゲームをやった時のことなど思い出に
ひたり、それからいい酒飲んでから揚げでもつまみ、いつもより早めに寝てたっぷり睡眠を
取れ。そして1週間ほどプログラミングのことなど忘れて古本屋や映画館を巡ったり、いつも
乗る電車の終点まで行って見知らぬ街を散策してみたりしろ。その後もう一度マニュアル
を見ろ。

218 :名前は開発中のものです。:2006/06/25(日) 23:44:10 ID:5Ua3zqQo
>>217
216じゃないが、今日は初心に帰ってそうすることにする。

219 :名前は開発中のものです。:2006/06/27(火) 08:43:51 ID:NqVCHwYq
>>216
どのポリゴンに当たったかってD3DXで調べられなかったっけ?
それが分かれば法線はすぐもとまると思うんだが

220 :名前は開発中のものです。:2006/06/27(火) 22:24:53 ID:0fSvTu/K
DirectX無しでシューティングゲームとか作れますか?
言語はVB,NETです

221 :名前は開発中のものです。:2006/06/27(火) 22:31:07 ID:bDfJ6ySM
作れます

222 :名前は開発中のものです。:2006/06/29(木) 22:19:07 ID:wGpJLUUG
作って

223 :名前は開発中のものです。:2006/06/30(金) 22:06:50 ID:D4ASNYgK
二次元なら普通にあるだろう

224 :名前は開発中のものです。:2006/07/02(日) 06:47:31 ID:iwWFKEuL
しつもーん。
3D形状データ(Xファイル)を読み込ませて、拡大縮小回転はなんとかなりそうなんですけど
人型Xファイルを歩かせようとした場合、歩くアニメーションはどうやって作ればいいか
探ってるんですが、もしかしてめっちゃ大変ですか?

人型Xファイルを1体まるごと読み込ませないで、関節ごとに別ファイルとして読み込ませて
各関節ごとに移動回転させて、全体としてアニメーションさせるような
原始的手法なら思いつくのですが、アナタ一体いつの時代の人ですかって聞かれそうでw
これやってたら、何年やっても完成しないので何か便利な方法があると思うんですけど
ぐぐってっも「これだっ!」っていうのがでてこなくて・゚・(ノ∀`)・゚・。
手元の参考書だと載ってない(シューティングゲームがサンプルだったorz)
サルにもわかるような感じでお願いします。

225 :名前は開発中のものです。:2006/07/02(日) 06:51:01 ID:iwWFKEuL
しまったぁ。 DirectX 9.0 で、です。

226 :名前は開発中のものです。:2006/07/02(日) 08:09:40 ID:z7RUlvoX
モデリングソフト

227 :名前は開発中のものです。:2006/07/02(日) 22:56:49 ID:irOFBzPh
>>224
↓ここのひとに尋ねてみるとか

ネギま!の格ゲーを作るスレ
http://pc8.2ch.net/test/read.cgi/gamedev/1125739113/

228 :名前は開発中のものです。:2006/07/04(火) 02:37:45 ID:/xFpqUiE
224
どももー。MSDNのサンプルやヘルプからは見落としがちなコラム
っていう想定外の所に解決策がありましたー。

229 :名前は開発中のものです。:2006/07/07(金) 12:37:05 ID:qWQ2Sdmj
すみません。質問です。
OBB(Oriented Bounding Box)で、物体頂点から、
主成分分析をもちい、共分散行列つくって固有ベクトルで、
3つの軸を見つけることができたのですが、

直方体の物体に対する第一成分の軸が、最長の対角線上
になってしまいます。こうなるとAABBより悪い。。。

確かに普通に軸を、とればそうなるのはわかったのですが、
外国の論文みてると、どうやらこれを回避できるらしいです。
ただ、英語がよくわからないので、もう一歩が読みきれません。
一言でなにかポイントを教えてください。


230 :名前は開発中のものです。:2006/07/07(金) 13:35:29 ID:D9SHDo6P
英語が良くわからないのなら、英語を勉強すればよいだけじゃないな

231 :名前は開発中のものです。:2006/07/07(金) 13:52:02 ID:qWQ2Sdmj
お答えどうもありがとうございます。
それでその論文をよんでみると。
ttp://citeseer.ist.psu.edu/rd/54230104%2C188723%2C1%2C0.25%2CDownload/http://citeseer.ist.psu.edu/cache/papers/cs/1309/ftp:zSzzSzams.sunysb.eduzSzpubzSzgeometryzSzboxtree.pdf/barequet96boxtree.pdf

3.2. Arbitrarily Oriented Boxes
てところにそれらしいことが書いてあって、
次善の策で主成分分析の最小成分に投影した、最小面積にフィット
する矩形を探すということはわかりました。
理屈からいえば当然ですが、”最小面積にフィットする矩形を探す”
のが難しいから、調べてるわけでして。

最善の策ってのは、パイスライスの、ミンコフスキーのピラミッドが
どうのと、これがまたわけわかんなくて。。。。。。



232 :名前は開発中のものです。:2006/07/07(金) 16:18:10 ID:qWQ2Sdmj
連続でレスですみません。

ちなみに、外国の論文によれば、第3成分方向で
投影して、ミンコフスキー和がどうとか書いてありました。

このミンコフスキー和もいまいちピンとこないのですし、

もしかするとミンコフスキー和も、
直方体の投影面積と、OBBの投影面積に関する
ヒューリスティクスな方法の評価につかわれる
もので、OBBを一意的に決められるもの
ではないのでしょうか。

もし経験者がいたら宜しくお願いします。



233 :名前は開発中のものです。:2006/07/07(金) 21:03:16 ID:cg1vQlls
経験者じゃないが、OBBが最適になるように、手動で物体を分割しちゃまずいのか?

234 :232:2006/07/08(土) 16:44:34 ID:sISxHTft
それができれば、それがベストのOBBだと思います。

自分のは、若干モデラーの機能があるので、
ユーザーにOBBを意識させない必要がありまして。。。

AABBでも、2倍もパフォーマンスが悪化することは
ないはずなので、AABBで妥協してもいいんですが。。。



235 :名前は開発中のものです。:2006/07/16(日) 20:12:58 ID:xoc97HXo
VB.NETでゲーム(ブラックジャック)を作っていますが、わからない箇所が出てきまして、もし見識者の方が居られましたら、是非にお教え下さい。Label4.Textに、ランダムで現れたLabel2.TextとLabel3.Textの中の数の和を表したいのです。
Dim a, b As String Dim c, d As Integer
Private Sub Timer1_Tick:Label1.Text = Int((4 * Rnd()) + 18)
Label2.Text = Int((13 * Rnd()) + 1)
Label3.Text = Int((13 * Rnd()) + 1)
Private Sub Button1_Click:Timer1.Enabled = True
Private Sub Button2_Click:Timer1.Enabled = False
a = Val(Label2.Text)
b = Val(Label3.Text)
c = Str(Label2.Text)
d = Str(Label3.Text)
Label4.Text = c + d
If a = 11 Then
Label2.Text = "J"
ElseIf a = 12 Then
Label2.Text = "Q"
ElseIf a = 13 Then
Label2.Text = "K"
End If
If b = 11 Then
Label3.Text = "J"
ElseIf b = 12 Then
Label3.Text = "Q"
ElseIf b = 13 Then
Label3.Text = "K"
End If
このコードでは、デバック時に『オブジェクト参照がオブジェクト インスタンスに設定されていません。』と表示されてしまい、上のコードからcとdを消去して、Label4.Text = a + bとしても、全く関係の無いような数が表示されます。どうか助けて下さい…

236 :名前は開発中のものです。:2006/07/16(日) 21:12:59 ID:+JiTcTeg
StrとかValの使い方が明らかにおかしいw
あとその汚いソースコードは何とかしたほうがいい。
a+bは文字列連結だし。

237 :名前は開発中のものです。:2006/07/17(月) 01:11:08 ID:MDyRCzaO
>>235
ラベルやテキストボックスのValueは、文字列だから。
>236の指摘通り、そこの使い方が根本的に間違えてる。

238 :名前は開発中のものです。:2006/07/17(月) 09:50:04 ID:YehA4Jel
プログラミングWindows上下巻(Charies Petzold著)と英和辞典が必須か


239 :235:2006/07/17(月) 10:25:35 ID:lqXylc4k
>236>237
ご指摘ありがとうございました。

240 :名前は開発中のものです。:2006/07/17(月) 12:33:08 ID:lqXylc4k
VB.NETのゲーム中で音楽を流したいのですが
(プログラム中のFormの場所に?)どのようなコードを記述すれば良いでしょうか?
ちなみに音楽ファイルの種類は『MIDIシーケンス』、『Winamp media file』のものしか持っていないのですが、可能でしょうか?どうかよろしくお願いします。

241 :名前は開発中のものです。:2006/07/23(日) 21:20:12 ID:ak03kWW1
>Winamp media file
プログラム以前に拡張子に関して勉強やり直してきてくださ

242 :名前は開発中のものです。:2006/07/29(土) 00:23:29 ID:nGtRJv9b
>>241
てめーに聞いてねえんだよ。クソが。

どなたか質問に答えてくださいおねがいします

243 :名前は開発中のものです。:2006/07/29(土) 01:46:01 ID:S/WdcXq4
2chでは糞な奴に会う場合が多いので、いちいち書いてたら大変なので糞がを付けないようにしている。
こんにちは(お日柄も良く)みたいにいつも糞がの省略している。

例 適切な解説ありがとう御座います。助かりました(糞が)

244 : ◆1porpfThBQ :2006/07/29(土) 04:13:25 ID:N4kXLIKR
w

245 : ◆rCHJ9S75sQ :2006/07/29(土) 04:18:28 ID:N4kXLIKR
u8

246 : ◆Pc8O3myB3o :2006/07/29(土) 04:19:13 ID:N4kXLIKR
e

247 : ◆VsPWT7kee6 :2006/07/29(土) 04:20:02 ID:N4kXLIKR
y

248 : ◆mv8HC/D2Bw :2006/07/29(土) 04:20:49 ID:N4kXLIKR
r

249 :名前は開発中のものです。:2006/07/29(土) 10:07:48 ID:NBeZ7thm
>>242
ググればすぐ出てくるでしょう?
一週間も何やってたんですか?w

250 :名前は開発中のものです。:2006/07/30(日) 17:59:57 ID:RVJrt37D
雨にも負けず 風にも負けず
雪にも夏の暑さにも負けず
丈夫な身体を持ち
欲はなく決していからず
いつも静かに笑っている
一日に玄米四合と味噌と少しの野菜を食べ
あらゆることを自分を勘定に入れずに
よく見聞きし分かり そして忘れず
野原の松の林のかげの
小さなかやぶきの小屋にいて
東に病気の子供あれば
行って看病してやり
西に疲れた母あれば
行ってその稲の束を負い
南に死にそうな人あれば
行って怖がらなくてもいいと言い
北に喧嘩や訴訟があれば
つまらないからやめろと言い
日照りのときは涙を流し
寒さの夏はおろおろ歩き
皆にデクノボーと呼ばれ
ほめられもせず 苦にもされず
そういうものに 私はなりたい(糞が)

251 :名前は開発中のものです。:2006/08/12(土) 20:09:02 ID:nFOVoREH


252 :名前は開発中のものです。:2006/08/13(日) 00:03:23 ID:NmZSkLh2
とりあえず
winamp media file
まで読んでみた。

253 :名前は開発中のものです。:2006/08/13(日) 06:47:15 ID:2UkITm4H
僕らは旅人、常にどこかへ歩いている。
どこに行けばいい?
僕らはここからどこへも行けないの?
誰でもいいから教えてください。
いつまで歩けばこの道は途切れる?
野宿なんてもうこりごりだよ。
目の前にある看板にはなんて書いてある?
町がどこかを書いてあるといいんだけれど。
目の前に見えているのは町?
家があるけど町ではないね。
僕に翼があればいいのに・・・。
翼があれば歩く必要も無い
翼が欲しいな。
何を
どれだけ
どのように
犠牲にすれば手に入る?
僕は何をすれば自由になれる?
翼を求める本当の理由
それは誰にも分かることなし。
むなしくつづる僕の文。
誰にも伝わることの無いこの思い。
preas me
僕にください。
だれでもいい
何人でもいい
条件があってもかまわない
だから、お願い翼をください
僕を自由にしてください。

254 :名前は開発中のものです。:2006/08/13(日) 07:56:34 ID:o/UAG1nJ
>preas me

255 :名前は開発中のものです。:2006/08/13(日) 10:16:18 ID:ivtGp+tH
>press me

つぶして!

256 :名前は開発中のものです。:2006/08/25(金) 18:42:13 ID:Gxqk6qh5
質問です
directxの方かちょっと迷いましたが本題が微妙に違う気がしたので
こちらに書かせてもらいました

今DirectX上で、文字入力をするプログラムを書いています。
表示関係は終わったのですが、入力をどうしたらよいのか迷っています。
検索してもあまりよくわからなかったのですが、普通は入力システムを自前で
全て作るものなのでしょうか?
それとも、APIとかを使って何か内部バッファに入力を溜めるような便利なものが
あるのでしょうか?


257 :名前は開発中のものです。:2006/08/25(金) 18:50:59 ID:RFenyKMu
Cならchar型の動的配列を自前で用意するとか
C++ならstring型とvectorコンテナかlistコンテナを組み合わせて文字列を格納するとか

258 :名前は開発中のものです。:2006/08/25(金) 21:25:28 ID:RVtfbAQ1
>>256
話がよくわからないけど、番号が非常にキリがいいので、
エスパー能力全開で答えてみる。

WinAPI使ってるなら
LRESULT CALLBACK WindowProc(HWND hwnd, UINT msg, WPARAM wpr, LPARAM lpr)
みたいなコールバック関数があるはずだ。
ここでmsgに
WM_KEYDOWN
WM_KEYUP
WM_CHAR
があったら要注意。wprの内容を適当に内容を解釈すべし。
WM_IME_STARTCOMPOSITION
WM_IME_ENDCOMPOSITION
についても調べておくとちょっと幸せになるかも。

まぁ、なんかのライブラリを使ったほうがもっと幸せになれるとは思うが。。。

259 :名前は開発中のものです。:2006/08/25(金) 22:22:37 ID:Gxqk6qh5
>>258
自分で読んで思ったけどこれだとよくわからないですよね
directxで文字入力をする窓を作ったのですが(EDITコントロールみたいなの)
カーソルも含めて表示はDirectXで出来るように作ったのですが
入力はどうやって作ろうかなと悩んでいるのです

ざっと考えると、キー入力があったら、それに対応した文字をバッファに入れればいいような気がしますが
シフトで大文字小文字とかCAPSとかコピーペーストとかIMEの有無や制御とか
全部自力で作るのかなぁと

DirectXでゲームを作っている人で、画面上に文字入力をするような場合は
みんなどのようにしてるんでしょうか

260 :名前は開発中のものです。:2006/08/25(金) 22:27:30 ID:Gxqk6qh5
付け加え
文字入力する窓というのは、テクスチャで表示している独自に作った
ウィンドウのことです。文字とカーソルもテクスチャで表示しています。

261 :補給屋 ◆ZA3g9myNTI :2006/08/25(金) 22:34:03 ID:fUkTY6Eo
Direct3Dですか?

262 :名前は開発中のものです。:2006/08/25(金) 23:04:52 ID:j9BFP6Ja
>>259
大文字小文字程度なら WM_CHAR で適用済みの文字コードが受け取れる
IMEは変換中の文字列をどう表示するかが難しそうだな、俺は知らん

263 :名前は開発中のものです。:2006/08/25(金) 23:18:05 ID:RVtfbAQ1
スレ違いのようだが、
質問は「DirectXでどう入力を受け取るか」だけど、
回答は「WinAPIのウィンドーメッセージで受け取れ」だから、
スレ違いじゃない罠。

>>259
DirectXのDirectはハードの直接制御だから、
ちゃんとした文字列を受け取るのは無理じゃないかと思うが…
どうしても腑に落ちなきゃDirectXスレで聞いてみると良いかもね。

>>262
IMEで変換中の状態が表示されるので、
自分の場合表示位置の座標を変更して、
あたかもプロンプトから入力しているように装ってるw

264 :名前は開発中のものです。:2006/08/25(金) 23:27:43 ID:Gxqk6qh5
>>261
表示はそうですね。文字入力窓のテクスチャを2Dで表示して
バッファの文字を上に貼り付けてという風に
ネトゲのチャット入力みたいなものですが、やっぱりちゃんと作らないと
だめかぁ

>>262
なるほど…ということは、それを含めてカーソルの移動と挿入削除とコピペと
IMEの判定と変換中と確定後の処理って感じなのかな。道は長い

>>263
多分258さんが言う感じで、入力調べて頑張ってという感じだと思うので
その辺りをちょっと頑張って作ってみます
ありがとう


265 :名前は開発中のものです。:2006/08/26(土) 00:27:44 ID:m2Iaf5aG
>>264
最近似たような事やってたので一応コレ
ttp://nienie.com/~masapico/api_ImmGetCompositionString.html

266 :名前は開発中のものです。:2006/08/26(土) 02:41:41 ID:tKmIInJP
RPGのキャラクターとかのメモリビットマップ(PC解像度と同じ)
を作りすぎると、描画速度が遅くなってしまいます。

量としては、フィールドの点滅用(480×480)×3、
マップチップ(256×256)×1、キャラチップ(72×128)×32などです。

だから、一部はファイルにおいて置いて、使うときのみロード
みたいなのも行ったんですが、ロードに時間がかかりすぎます。
(ロードは8ビットだとかなり遅く、24ビットだと少し緩和されます。)

何かいい方法はないでしょうか。
環境は、9x系、128M。

267 :名前は開発中のものです。:2006/08/26(土) 03:37:56 ID:xnHGRGx3
>>266
描画ってのが何やってんだかわかんね。
それがわからんからフィールドとかマップチップとかキャラチップとか
どれが何なのかわかんね。

268 :266:2006/08/26(土) 04:08:09 ID:tKmIInJP
>>267
レーザーラモンさんありがとうございますw

描画は全体的な速さというかBitBltの速さです。
最終的な描画は全てBitBltを介してなので。
フィールドは、ウィンドウに表示されているマップ全体の事です。
遅いなと感じるのは、マップをスクロールさせる時です。

269 :名前は開発中のものです。:2006/08/26(土) 04:11:13 ID:MLjkH/sO
早さを気にするのなら他の描画エンジンを使った方がいい気が。

270 :名前は開発中のものです。:2006/08/26(土) 04:35:21 ID:xnHGRGx3
>>268
だいたいわかった。けど、やっぱりソースがないと明確なアドバイスはしづらいね。
「こんな方法があるよ」って言っても「それはもうやってる」って言われる可能性が高い。

あと、レーザーラモンじゃなくてレイザーラモンね。

271 :266:2006/08/26(土) 06:11:03 ID:tKmIInJP
もしかしたら、描画が遅いのではなく、
ウィンドウメッセージが連続で来るスピードが遅いのかもしれません。

スクロールは極端に遅くなりますが、
普通の描画はそんなに遅くなった気がしないので、
キーを押し続けたときのWM_KEYDOWNが遅くなったのかもしれません。

こちらの方について、いろいろ実験してみます。

>>269
GDIとかですかね。何かで結局はBitBltが速い
みたいなのを聞いたので、こればっか使っているんですけど。

>>270
レイザーラモン・・そうでした。
レーザーラモンでもビリビリフォーとかネタはできそうだけど。

試した方法です。
・登録ビットマップ量を少なくする
 それを言ったらおしまいだが最終的にはこれでしょうか
>>266の使うときにロードするやり方
 ロードが遅すぎる
 24ビットマップならそれなりの速度になるが
 作品の容量が大きくなるし、リソースには使えない
・マップに入ったときに、使用する分のみロードする
 なかなかいい方法 使用量が多いときはごめんなさいで
・メモリビットマップの画質をPCと同じではなく、PCより下げる
 極端に遅くなる
 PCの画質とメモリビットマップの画質を
 合わせるのに時間がかかるらしい

272 :名前は開発中のものです。:2006/08/26(土) 07:20:57 ID:jU4tm91q
区切りの良いスパンでメモリに確保

273 :266:2006/08/26(土) 08:04:08 ID:tKmIInJP
>>272
なるほど、そこは考えていませんでした。

良さそうな方法がいろいろ見つかったので、
それらを実験してみることにします。
お答えいただいたみなさま、ありがとうございました。

274 :名前は開発中のものです。:2006/09/13(水) 23:08:11 ID:3PoFJJDV
266さんじゃないんですが、
それを解決するのに「ファイルをオープンしっ放し」という方法を取ったのですが、
これって安全なんでしょうか?

275 :名前は開発中のものです。:2006/09/14(木) 00:49:46 ID:MoDAUHsA
ファイルハンドルを開放せずに落ちたらどうなるかの

276 :名前は開発中のものです。:2006/09/14(木) 01:47:04 ID:rwvsmMJW
あったかクノール♪
あったかクノール♪

277 :名前は開発中のものです。:2006/09/14(木) 10:50:53 ID:gNg1nIFw
>>266 に当てはまらない可能性のほうが高いけど、
俺は以前、クラスをちゃんとdeleteしてなかったせいで重くなってた。

278 :名前は開発中のものです。:2006/09/14(木) 13:39:03 ID:YoSST93w
>>275
1.おちないようにする(大命題)
2.デストラクタを使ってクリーンアップが完全にできるように
  ファクトリクラスなどを作る。

DirectXの場合など開放の順番が必要になるので
開放の優先順位通りにデストラクタで開放できるようにしておけば
OS的にはほとんど問題ない。


279 :名前は開発中のものです。:2006/09/14(木) 20:04:48 ID:UU058loN
274ですけど、
落ちるっていうのは、そのアプリケーションが落ちるって事ですよね?
OSが落ちるって事では無いですよね?

275さんによると、OSによる自動ファイル開放は期待できない、ということですね?
でも、278さんによるとデストラクタは呼ばれる可能性があるみたいですね。

もし、強制終了でもデストラクタが呼ばれるなら
ファイル管理クラスのデストラクタで、ファイル開放をすれば解決しそうですが…。

280 :名前は開発中のものです。:2006/09/15(金) 22:50:37 ID:LV6+FZpS
本日windowsプログラムに手をつけた若造です。
最初にメッセージボックスを表示する文を打ち込んでみましたが、早速つまずきました。
打ち込んだ文は、
#include<windows.h>

int WINAPI WinMain(
HINSTANCE hInstance,
HINSTANCE hPrevIntance,
LPSTR lpCmdLine,
int nCmdShow
){
int MessageBox(NULL,"test","test",MB_OK);
return 0;
}
これだけです。
エラー内容は、messagebox関数の行で「初期化子の数が多すぎます。」とでました。
いろいろ考えてみたけどさっぱり分からないんで、誰か教えてください。

281 :名前は開発中のものです。:2006/09/15(金) 22:54:26 ID:Q4a1m6UH
int MessageBox(NULL,"test","test",MB_OK);
↑このintは何よ?

282 :名前は開発中のものです。:2006/09/15(金) 22:56:34 ID:B+YyIKNU
>>280
Cの基礎からやり直せ。

283 :名前は開発中のものです。:2006/09/15(金) 22:59:05 ID:LV6+FZpS
int抜いたら出来ました、、
Cの基礎からやり直してきます

284 :名前は開発中のものです。:2006/09/16(土) 00:56:51 ID:AkzEWiy4
>>280
どっからコピーしてきたか知らないけど、一字一句でも間違えたらダメだよ

285 :名前は開発中のものです。::2006/09/18(月) 11:20:58 ID:Sv37SaL7
windows APIで、画像をひとまとめにしたdatファイルから
LoadImage()等で表示するにはどうすればいいですか?

または、HSPのmemfile命令と同等の関数があれば教えてください。
開発コンパイラ:BCC32

286 :名前は開発中のものです。:2006/09/18(月) 12:27:42 ID:ojXe2P0e
リソースを読み込むAPIなので用途が違う。
適切なAPIを使え。

287 :名前は開発中のものです。:2006/09/18(月) 17:15:52 ID:T/AO14da
>>285
そのデータの形式にもよるが、
DIBの形で読み込めるなら、CreateDIBitmapとかで出来ると思う。

288 :名前は開発中のものです。:2006/09/22(金) 05:20:19 ID:UxeWHvRU
TextureならFromFileInMemoryとか

289 :名前は開発中のものです。:2006/10/05(木) 08:54:14 ID:UCkPjisv
うむ

290 :名前は開発中のものです。:2006/10/06(金) 23:22:42 ID:nNc3THyN
すいません、困っているので、教えてください。

今、スマートボールを作っているのですが
方向ごとの衝突反応が上手くできなくて困っています。

ブロックの左に玉がぶつかったら
右の衝突反応が優先されてしまったりしてしまっています。

ブロックの左に当たったら
左の衝突反応。
ブロックの上に当たったら
上の衝突反応。
といったようにきちんとした反応が返ってくるようにしたいです。

たぶん衝突判定あたりが問題だと思うのですが
どうにも直すことができません。
誰か教えてください。

291 :名前は開発中のものです。:2006/10/06(金) 23:51:36 ID:+9iAuVTh
ボールの左上、左下、右上、右下の4つで当たりを取って、
後はそのうちのどれとどれが衝突しているかで条件分け。
がんばれ。

292 :290:2006/10/07(土) 00:19:22 ID:tK+JL53m
>>291
さっそくの返答、ありがとうございます。

ボールの当たりを取るっていうのは


if (ボールとブロックの衝突判定) {
  /*ボールの右側が当たった場合*/
  if ((ballPos.x + BALL_WIDTH) == blockPos.x) {
   degree = (180 - degree);
  }
}

みたいな感じで良いんでしょうか?

293 :290:2006/10/07(土) 04:34:25 ID:M90oHVt8
>>291
色々とやってみて
3回に1回くらい
思った通りの動作をするようになりました。

ですが、精度を高めることができなかったので
ピンを敵に変えてアクションゲームにしました。

アドバイスをいかしきれなくて
すいません。

294 :名前は開発中のものです。:2006/10/07(土) 10:49:25 ID:JWPSnV8K
よくわからないが、ボールが右に動いて壁に当たったなら
壁には左に当たっているわけだから、壁の右の衝突判定は呼び出す必要はないだろ?

もし、壁もボールも動くなら、相対速度を求めて、
どちらかだけの衝突判定をすればいいんじゃない?

295 :290:2006/10/07(土) 18:50:12 ID:M6IRgPHU
>>294
説明不足ですいません。

ボールの速度が一定でないので
頻繁にブロックへのめり込みが発生して
思ったような衝突判定ができなかったみたいです。

あと、ブロックは動かす予定はありませんでした。

296 :名前は開発中のものです。:2006/10/15(日) 17:35:00 ID:ZDJeTry+
判定部分のソース晒すのが一番早いかと

297 :名前は開発中のものです。:2006/10/15(日) 21:42:00 ID:C/TMVGDR
移動する前に当たり判定して終わりのような

298 :名前は開発中のものです。:2006/10/17(火) 06:19:58 ID:Ci2KLVBp
ダイレクトXってほんとわかんねーよ。
あれってわざと難しくしてるんじゃねーか?

MFCは一応使えるようになったけど、(理解はしてないが)
あれは次元が違う難解さだ。

ゲーム用ベーシックみたいに、Porigon(x,y,z)とかで簡単に表示できるかと思ってたわ。


299 :名前は開発中のものです。:2006/10/17(火) 08:05:30 ID:v0yfnzhi
頭が悪いなら諦めろ。

300 :名前は開発中のものです。:2006/10/17(火) 11:16:17 ID:D9KM+For
>>298
3Dはみんなそんなもんだよん

Direct3Dを簡単に扱うためのBASIC見たいな
文法で書くスクリプト言語とかMFCの様な
C++のライブラリ使うとかすれば
いいんじゃないの?

301 :名前は開発中のものです。:2006/10/17(火) 13:39:31 ID:EGJYiJfH
PlayStationは凄い素直だった。
マイクロソフトは何でもかんでもカプセル化すれば良いと思ってる。

302 :名前は開発中のものです。:2006/10/17(火) 17:08:41 ID:U7WoMmHI
COMとかそこら辺の流れが入ってきてるから分りにくいだけだろ。
分らない奴はOpenGLでも使ってろ。

303 :名前は開発中のものです。:2006/10/17(火) 18:16:39 ID:hbZjh9o3
そりゃPCとコンシューマ機は違うでしょ。

304 :名前は開発中のものです。:2006/10/18(水) 06:48:34 ID:WfLow5G2
いまどきDirectXでCOMがどうとか言ってる人がいるとは
何年前から冬眠してたんだろ

305 :名前は開発中のものです。:2006/10/18(水) 12:28:41 ID:5TL5JyUw
人の作ったライブラリにおんぶに抱っこじゃ、そりゃCOMのことなんか分からないよなw

306 :名前は開発中のものです。:2006/10/18(水) 14:55:21 ID:WfLow5G2
ん?DirectXのことかな?それともWin32のことかな?
頭悪い突っ込みほど格好悪いものもないねー

307 :名前は開発中のものです。:2006/10/18(水) 16:11:59 ID:5TL5JyUw
DXライブラリ厨乙

308 :名前は開発中のものです。:2006/10/18(水) 20:30:52 ID:jafne6Pg
二人合わせてWTL

309 :名前は開発中のものです。:2006/10/19(木) 19:35:51 ID:QtL2sYe+
DXライブラリは救世主だと思ったのに

310 :名前は開発中のものです。:2006/10/22(日) 11:41:55 ID:Q0NnJdKD
     i:::::::::::::i:::::::;:::::::::::::::::::::::::/i:::::/ i::::::::::::::::::::::| そんなことよりもっと考えるべきことがあるだろう。
     |::::::::::::|:::::/::::::::::;:::::::::/ /:::/  i::::::i:::::::::::::i たとえば『画面のキャリブレーション』だ。
     |:::::::::::|:::::i:::::::/::::/  /:::/   |::::|:::::::::::/ 画面によってぜんぜん発色が違うのは常識だね?
     ∨:::::::|::::|:::::イ:::/   /:::/    |::::|:::::::::/ そう、常識だ。いや、常識だと多くの人々が思っている。
      ∨:::::|:::| ̄ナナ=、  /::Zz=='"T:T|:::::::/  だが、実は画面やドライバの設定がおかしいだけかもしれない。
      ∨:::|::|::ャ代戌ナ= // 弋戌テT:ァi::::::/   そもそも最低限の調整すらしたこと無い人が多いのではないか。
       ∨:::i:i/ i/     /      i/./:::::/,_,, そう主張する人も少なくない。
       rヤ::::|i. !    /       /i::::::ハ Y  ふっ、どうも私は口下手で困るよ。
      ,,イrヤ::::|ゝ.      i     / ,イ::::< .〉 .ト、 つまり常識を疑えということだ。
    rイ! レヤ:::|i .ゝ.   _ _     .イ.|:::/ ソ  ! ト‐、
>ー''フ/''|  | ヤi::| i .|\      // |::/ /    ト、 `ー、
   / i   i ャヤi j  > 、  //./  |:i /    | Y

ttp://www.eurus.dti.ne.jp/~koich-n/retouch/display.html
ttp://blogs.yahoo.co.jp/komutai_tk/42100061.html
ttp://www.w3.org/Graphics/Color/sRGB
ttp://bsg.to/mt/archives/200609/2006-09-07T23:42.shtml

311 :名前は開発中のものです。:2006/11/04(土) 08:44:47 ID:u3HqISdl
会話などを表示するためにサブウインドウを作成し、表示したのですが
表示中に再描画を行うとサブウインドウの画面がちらついてしまいます。
これを防ぐにはどのような対処を行えば良いでしょうか?

312 :名前は開発中のものです。:2006/11/04(土) 12:58:01 ID:/q8A3ZyR
>>311
一度画面全体をバックバッファに描く


313 :名前は開発中のものです。:2006/11/04(土) 16:36:15 ID:u3HqISdl
>>312
ShowWindow();を使ってたんですが
ウインドウも画像を使うべきということでしょうか?

314 :名前は開発中のものです。:2006/11/04(土) 19:48:09 ID:eIj40MQq
>>313
とりあえずバックバッファでググレ。

315 :名前は開発中のものです。:2006/11/07(火) 11:51:06 ID:8tSL6aoZ
>>313
ヒント「DIBSection」


316 :名前は開発中のものです。:2006/11/07(火) 14:05:03 ID:WJeQGxZV
そのサブウィンドウってのはWindowsのウィンドウとして作ってるの?
だとしたら親ウィンドウにWS_CLIPCHILDREN属性を設定すればいいと思う。

ただ、ゲームを作る場合312-315のとおり、ウィンドウは1枚だけにして
内部のユーザインターフェイスは自前で用意するのが普通。

317 :313:2006/11/07(火) 14:07:56 ID:WJeQGxZV
>>313を見落としてた
WM_PAINTを呼び出したいなら再描画指示はInvalidateRectで、
最後のパラメータはFALSEでね。

318 :311:2006/11/07(火) 18:31:21 ID:wb4UfHDQ
>>312-317
画像で作成する方法がよく使われてるということですので
そちらで作成することにします
ご回答下さった方ありがとうございました

319 :名前は開発中のものです。:2006/11/07(火) 19:56:31 ID:Gmffc/vx
>>311
C言語?他に使ってるライブラリは?

320 :311:2006/11/08(水) 22:17:58 ID:g81bdmif
Cです
ライブラリ等は特に使ってません

321 :名前は開発中のものです。:2006/11/09(木) 01:44:06 ID:RPNJn70P
問題が解決したのなら必要ですが、WM_ERASEBKGNDメッセージ処理を
DefWindowProcにさせなければ良いという話がよくあります。

322 :名前は開発中のものです。:2006/11/09(木) 01:45:22 ID:RPNJn70P
>>321 大きな間違い。
○必要ですが、
×必要ないですが、

問題が解決したのなら必要ないですが、WM_ERASEBKGNDメッセージ処理を
DefWindowProcにさせなければ良いという話がよくあります。

323 :名前は開発中のものです。:2006/11/17(金) 04:17:18 ID:5hvBfGHn
シーン管理などで手間取ってるのですが、
何か良いサイト・参考書などありませんでしょうか?

324 :名前は開発中のものです。:2006/11/17(金) 05:19:47 ID:t6WIPUdH
漠然とし過ぎてる。

325 :名前は開発中のものです。:2006/11/17(金) 05:30:25 ID:5hvBfGHn
Sceneクラスを管理するSceneManagerクラスを作ったまでは良かったんですが、
Sceneクラス内でシーンのpopやpush、deleteをするのに、SceneManagerに直接頼めないので困ってます。

Sceneクラスにフラグを持たせて逐一チェックすれば実装は可能なんですがなんか微妙ですし…。

326 :名前は開発中のものです。:2006/11/17(金) 06:03:38 ID:t6WIPUdH
@言語は?
Aシーンをスタック(pushとpop)するという事はアドベンチャーゲーム?
Bdeleteするのはスタックされているシーン?

327 :名前は開発中のものです。:2006/11/17(金) 06:24:34 ID:5hvBfGHn
@C言語です
Aアドベンチャーではありません。
B自クラスorスタックされてるシーン全て含みます。

ドラクエを例に取ると

オープニングシーン
↑↓シーン移動
セーブデータロードシーン
↑↓シーン移動
マップシーン
↑↓シーンPush(移動も可)
戦闘シーン

という作業を効率良く管理したいのです。

328 :323:2006/11/17(金) 16:18:43 ID:5hvBfGHn
 
・最下層ヘッダ ( SCENE (TITLE_SCENE, OPENING_SCENE...)の定義 )
・CScene
・CSceneManager

の順を守ることで自己解決しました。

329 :名前は開発中のものです。:2006/11/19(日) 08:06:52 ID:x2dz501C
isuファイルの作り方が分かりません。

330 :名前は開発中のものです。:2006/11/19(日) 10:23:46 ID:urBRsIAy
参照とポインタ、値渡しと参照渡し
このあたりの違いが、うまくまとまらないんです

331 :名前は開発中のものです。:2006/11/19(日) 10:50:12 ID:x2dz501C
>>330
C++?

332 :名前は開発中のものです。:2006/11/19(日) 11:16:06 ID:x2dz501C
ポインタが出てくるからC++か。
void func1(int& val)
{
val = 10;
}
void func2(int val)
{
val = 10;
}
func1では参照渡しなので引数valの値が変化します。func2ではvalのコピーが渡されるだけなので
値は変化しません。

C++では参照は定義した時に初期化が必要です。
int& val = intger;
int* pVal;

val = 10; 参照に後から代入すると(ここでは)intgerの値が変化します。
pVal = &intger; ポインタは後からアドレスを代入できます。
*pVal = 10; これでintgerの値が変化します。

333 :名前は開発中のものです。:2006/11/19(日) 13:43:43 ID:urBRsIAy
>>332
ありがとう、前半はいいんだけど、
例えば例題として、値渡ししていた関数funk3があるとして
//関数コールはこんなかんじ
int val = 10;
val = funk3(val);

int funk3(int val)
{
val = val * 2;
return val;
}

//参照渡しに変更するとき
int val = 10;
int& ref = val; //【疑問1】ここで宣言すんの?
val = funk3(ref);

int funk3(int& val) //【疑問2】呼び出し時点で初期化されてるのかな?
{
val = val * 2; //
return val;
}
この辺がよくわからないのです。

334 :名前は開発中のものです。:2006/11/19(日) 13:54:54 ID:fUpTw/Bs
mciでmidiオープンするとwavはすぐなのに時間かかるのなんで?

335 :名前は開発中のものです。:2006/11/19(日) 14:31:24 ID:x2dz501C
>>333
参照渡し引数に参照を用意して渡す必要はありません。

int val = 10;

funk3(val);

int funk3(int& val)
{
val *= 2; // 2倍にする場合左の記述が出来ます。
return val;
}
この時関数funk3を抜けると引数valは20になります。戻り値を受け取る必要はありません。
この場合、funk3は以下のように戻り値なしでも良いです。
void funk3(int&val)
{
val *= 2;
}

以下のように別に戻り値を受け取る必要がある場合は別ですが。

int val = 10;
int data;

data = funk3(val);

int funk3(int&val)
{
val *= 2;
return val * 2;
}

336 :名前は開発中のものです。:2006/11/19(日) 15:16:12 ID:urBRsIAy
>>335
ありがとうございます。漸く理解できました。
ということは、やはりメンバで宣言された時点で初期化も行われているのですね。
参照は初期化が必要と聞いていたのでその点がどうしてもわかりませんでした。
int val = 10;
funk3(val);
//   └──┐引数valの参照としてメンバーのvalが定義される
int funk3(int& val)
{
val = val * 2;
return val;
//この場合return不要とのことですが、記述したままで不都合はありますかね?
//関数の型を維持しておきたいのです。
}

//次にポインタの場合なのですが、
int val = 10;
funk3(&val);
//   └──┐valに参照演算子を使ってアドレスを引数にする。
void funk3(int* pVal) //アドレスはint*型のpValに代入したい。でも*pValって値を格納する式だよね。
{
pVal *= 2;
// それとも *pVal *= 2; ?
// なんか変だ、pValというのはポインタなので、値を代入する場合は*pValに入れる必要がある。
// 最初に宣言した*pValにはアドレスが入っちゃってるんじゃないだろうか。2倍するのは危険じゃないか。
}
funk3(val);で呼び出して、void funk3(int* pVal) に渡すのかな。
funk3(&val);で呼び出して、void funk3(int pVal) で、式中では*pValを使用でいいのかな。
と、このような感じで悩んでおります。
ここが解ればテキストを読み進められそうなので、お願いします。本当に長々と申し訳ありません。

337 :名前は開発中のものです。:2006/11/19(日) 15:40:27 ID:x2dz501C
>>336 前半
>//この場合return不要とのことですが、記述したままで不都合はありますかね?
不都合ありません。

>>336 後半
void funk3(int* pVal)
{
*pVal *= 2; // 2倍する場合、このように記述してください。

pVal *= 2; // これだとコンパイルエラーになります。
}

呼び出す時は以下のようにします。
int val = 10;
funk3(&val);
宣言は以下になります。
void funk3(int*pVal)
{
}

338 :名前は開発中のものです。:2006/11/19(日) 15:47:52 ID:naTTgqRZ
>>334
音源の初期化に時間がかかるとかなんとか
俺はMIDIでもmpegvideo(2が使えれば2)使う
こっちなら待ち時間なし

339 :名前は開発中のものです。:2006/11/19(日) 18:08:02 ID:N4xxvn6y
C++やるならポインタの本一冊持ってた方が
絶対に良いと思うんだけど、後々忘れた時にも役立つし

340 :名前は開発中のものです。:2006/11/19(日) 18:18:34 ID:urBRsIAy
>>337
ということは、ポインタとして宣言しているにも関わらず、
関数に渡された時点でpVal = &val (正しい入れ物に格納)が行われる。

void funk3(int*pVal) //pVal = &val が行われる

値渡し、参照渡し、ポインタ渡しについてなんとか理解できました。
ありがとうございました。

>>339
ポインタだけで一冊本になってしまうんですか…
やはり奥が深いものなんですね。

341 :名前は開発中のものです。:2006/11/19(日) 18:27:56 ID:2miANHZG
ポインタ=アドレスを格納する変数。

342 :名前は開発中のものです。:2006/11/20(月) 04:26:34 ID:U++jXOTp
>>341
理解する前は中々その概念が飲み込めなかったな

343 :名前は開発中のものです。:2006/11/20(月) 06:08:52 ID:ZcLa67Yd
本見ただけじゃ分からなくて、自作関数とか使うようになってから理解したなぁ

344 :名前は開発中のものです。:2006/11/20(月) 09:19:16 ID:cWAxydvH
本読んでいる段階で関数定義しなかったほうがおかしい。
よほどの悪書に当たったんだな。

345 :名前は開発中のものです。:2006/11/20(月) 17:17:53 ID:qN/GewWR
ポインタがアドレスを格納する変数なのはいいが、
+1して次の1バイトを指さないのがムカツクw

346 :名前は開発中のものです。:2006/11/20(月) 17:27:30 ID:1bEPmk5z
int a[] = {0, 1, 2, 3}:
int *p = a;
printf("%d",*(p + 1));
         ↑これで次の1バイトにされたら
           堪んねぇだろw

347 :名前は開発中のものです。:2006/11/20(月) 19:28:24 ID:AJ2QuceH
でもアドレスがどこ指すかを単純に四則計算してくれた方が分かりやすいのではなかろうか?

printf("%d", *(p +(sizeof(int) * 1));
手間かな?

348 :名前は開発中のものです。:2006/11/20(月) 19:29:29 ID:AJ2QuceH
ヤバイ。
;の前に’)’が必要です。
と言われる…

349 :名前は開発中のものです。:2006/11/20(月) 20:01:30 ID:1bEPmk5z
どうしても次の1バイトが欲しけりゃ
(char *)でキャストすればいいし

350 :名前は開発中のものです。:2006/11/20(月) 20:58:13 ID:7k9bIboP
ふと鏡を見たとき
僕は おっさんだった
        _____
          |    //|
  ∧_∧  |  ∧_∧ |
 ( ´/д)  | (дヽ` ). |
          |        |


351 :名前は開発中のものです。:2006/11/20(月) 20:58:31 ID:S5Fs/BKE
void型ポインタのポインタを引数にchar型のポインタのポインタを返す
関数配列へのポインタのポインタ。


352 :名前は開発中のものです。:2006/11/20(月) 21:02:55 ID:7k9bIboP
ポインタ言いたいだけちゃうん

353 :名前は開発中のものです。:2006/11/24(金) 21:31:29 ID:EhTxhZca
>>347
")"が一個足りないよ?

354 :名前は開発中のものです。:2006/11/25(土) 04:14:33 ID:4QW1W1ru
>>353
>>348で書いてる。

355 :名前は開発中のものです。:2006/12/09(土) 22:10:40 ID:OvCcmX7t
DirectShowを使った既存のプログラム(DMO)を改良したいのですが、
その中で新たにDirectSoundを使う場合、DirectSoundの初期化は
必要無いですよね?

356 :名前は開発中のものです。:2006/12/10(日) 05:10:19 ID:kEK2MzKm
ないね、だってshow自体が内部でsoundとdrawをオーサリングしてんだから

357 :名前は開発中のものです。:2006/12/11(月) 00:01:44 ID:YOxKuoli
ゲーム開拓チーム Revino Wiki
http://wiki.livedoor.jp/revino/d/FrontPage

参加よろ、どうぞこちらへ。

358 :名前は開発中のものです。:2006/12/11(月) 00:03:01 ID:rflZNTCU
ttp://pc8.2ch.net/test/read.cgi/gamedev/1111242845/411

359 :名前は開発中のものです。:2006/12/11(月) 22:25:54 ID:yrS20+yq
造ってるプログラム起動すると終了するんでログみてみたんだけど
どうもGetGlyphOutline関数でエラー吐いてるみたいなんだけど
GetGlyphOutline関数が失敗する原因とはどういったものがありますか?
また手っ取り早い改善方法などありましたら教えてください

360 :名前は開発中のものです。:2006/12/11(月) 22:35:51 ID:53CHNDXB
>>359
GetLastErrorくらいは確認しました?

361 :名前は開発中のものです。:2006/12/11(月) 22:46:06 ID:yrS20+yq
2545:GetGlyphOutline 関数が失敗しました
ttp://onegland.hp.infoseek.co.jp/wincgi/help/winerror.txt
此処で調べてみましたがひょっとしてプログラム側でやらないといけないのかな…。
エラー出たのは自分の環境じゃないもので

362 :名前は開発中のものです。:2006/12/12(火) 01:06:32 ID:24eCXnSM
>>359,361
http://support.microsoft.com/default.aspx?scid=kb%3Bja%3B241358

363 :名前は開発中のものです。:2006/12/13(水) 12:04:59 ID:C9Zkbwpn
ゲーム中に読み込む画像管理のいい方法はないでしょうか?

今は、enumで、使う画像を列挙して、
ローディング時に全て読み込んでいます。
今のところそれでも大丈夫ですが、
画像が増えてくると困ると思いました。

キャッシュ機構を作って、最初に読んだときに、ロードするとか・・・

皆さんは、どのように管理していますか?
参考になるオープンソースのライブラリなどがありますか?

364 :名前は開発中のものです。:2006/12/13(水) 16:03:34 ID:wx/jv2jM
今はPCのメモリが増えたからあまり画像読み込みに困ることはないなぁ。
大きいのは実行時にロード。小さいのはリソース化してる。

アドベンチャーゲームはでかい画像を大量に使うかな。

365 :名前は開発中のものです。:2006/12/15(金) 05:50:30 ID:9pBTogWv
質問したいのですが、RPGのイベント時にキャラを動かすのって、とんな方法がいいと思います?
プログラムは、bcc5.5でテトリスが作れる程度です。


366 :名前は開発中のものです。:2006/12/15(金) 07:10:36 ID:T2csHrT9
>>365
そのキャラを動かす以外のイベントは実装できている?
例えば、パラメータ変化、効果音を鳴らすとか。

367 :365:2006/12/15(金) 09:16:35 ID:9pBTogWv
>>366
まだ企画した直後で、仕様考えてます。
プログラムの段階まで進んで無いです。


368 :名前は開発中のものです。:2006/12/15(金) 11:45:51 ID:T2csHrT9
>>367
キャラの移動自体は、通常のプレイヤーのキー入力による移動や、
NPCのランダム移動とそんなに変わらない。
難しいのは、イベントを読み込む感じを理解することかな。

まずは、マップ生成時、そのマップの全てのイベントを読み込む。
それで、効果音(MessageBeep)などの
簡単なイベントでチェックするのがいいと思う。

369 :名前は開発中のものです。:2006/12/15(金) 13:13:24 ID:tn3TaKhK
C++ + WinAPIでRPGを作ろうと思うのですが、
主人公のステータス(HP,LV,etc)を扱うのは構造体・クラスのどちらが向いてるのでしょうか

370 :名前は開発中のものです。:2006/12/15(金) 13:32:53 ID:S7YnqDhE
構造体とクラスに違いはない

371 :名前は開発中のものです。:2006/12/15(金) 13:37:05 ID:XjFFsw1z
>>365
動かすというか、キャラの移動は状態(状態を保持する「何か」の
中の変数)をいじるだけで、後は「状態に応じてゲームを描画する」
実体を作るのが楽。

この「何か」や「実体」は、クラスから作ったインスタンスでも
グローバル関数でもお好きに。

キャラを動かす「主体」をどうするか、という話なら、スクリプ
ト処理系を実装しておくと、シナリオが作りやすいかもしれない。


372 :名前は開発中のものです。:2006/12/15(金) 14:06:22 ID:9pBTogWv
レスどうもです。
〉イベントを全て読み込む

歩いてる人もツボも階段も、大小あれどみんなイベント、という事ですか。
やはりツクールに似てますね。参考になりました。

>>371
スクリプタって…何でしたっけ?
後で調べてみます。

373 :名前は開発中のものです。:2006/12/17(日) 11:10:18 ID:V53BBQpT
俺はスクリプトってーとLua組み込んでるな
ROのホムのお陰で一通り組み方覚えたら、案外使いやすいと思った

374 :名前は開発中のものです。:2006/12/17(日) 13:56:19 ID:SOdz4R2r
Luaって初めて知った
少し見てみたけど型変換を自動でやってくれるのは怠惰だなぁ

375 :名前は開発中のものです。:2006/12/23(土) 21:22:01 ID:BlkC47LG
ム板に行ってLuaで検索すると、組み込み系言語について話すスレがあるよ。過疎ってるけど

376 :名前は開発中のものです。:2006/12/27(水) 18:35:13 ID:EcJm4CKc
ファファファファファ!!!
なんなんやぁーー!ああああぁぁあああ!!??
dwRopのDSnaってなんなんじゃゴルアァーーあああ???
わかるやつこたえてみんかいやぁああ???!!
キィィィいいイーーホッ!!
キィィィィィィーーーーーーホッ!!!!!
キィィィィィィイイイイーーー ホッホッホッ

100 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)