[過去ログ] DXライブラリ 総合スレッド その4 (1001レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
1(1): 2009/08/09(日)21:55 ID:TrjuCGgx(1) AAS
Cを習得した程度のスキルでも、
GUIのゲームを比較的容易に作成する事を可能にする、
「DXライブラリ」に関するスレッドです。
DXライブラリに関するテクニックなどの情報交換などを行う事で、
多くのDXライブラリユーザのスキルの向上に役立てたら幸いです。
【公式】
外部リンク:homepage2.nifty.com
省7
2: 2009/08/09(日)21:59 ID:9DTU34Ts(1) AAS
>>1乙
3: 2009/08/09(日)23:44 ID:yLk0K061(1) AAS
戻15/990:名前は開発中のものです。[sage]
2009/03/31(火) 18:20:23 ID:3yX1QyX+
116 名前: 名前は開発中のものです。 Mail: sage 投稿日: 2009/02/07(土) 16:18:41 ID: Pn1Dl7Zh
アフォBlog C言語勉強したけどゲーム作れないぞコラって人向けに
外部リンク[html]:afoafodayo.blog84.fc2.com
やっとみつけた
はてなブックマークの検索性の悪さは異常・・・
省3
4(1): 2009/08/10(月)01:28 ID:x4cP5rNi(1) AAS
クラスで挫折した
5: 2009/08/10(月)01:37 ID:bFMOlul4(1/2) AAS
もうクラスなしじゃ生きていけない
6(1): 2009/08/10(月)01:51 ID:QAwN9V2J(1/5) AAS
ライブラリと関係ない話をすんなとは言わねーが、C言語そのものを使い慣れてない
レベルの質問は勘弁してくれ
ここはC言語初心者質問スレじゃねーから
7: 2009/08/10(月)07:42 ID:61l6TBny(1) AAS
>>4
もっと頑張れよ
俺も1回挫折して再度勉強し直したけど使える道具が増えていろいろ記述が楽になったから
ちゃんと苦労なりの見返りはあると思うよ
8(1): 2009/08/10(月)08:38 ID:ejPisMfv(1) AAS
4じゃないけど、俺もクラスはよくわからん。
というかなぜそういう事をする必要があるのか、
ゲーム製作においてどういうメリットがあるのか、
どういうときに使うと便利なのか、
が解らないから、なかなか頭に入らない。
9: 2009/08/10(月)08:59 ID:QAwN9V2J(2/5) AAS
・リソース解放処理をデストラクタに書くと楽
・何個も実体を作るような構造体を扱う場合、構造体へのポインタを関数に渡すよりも、
勝手に*thisを作って内部的に同じことをしてくれるクラスの方が楽
10(1): 2009/08/10(月)09:05 ID:bFMOlul4(2/2) AAS
>>8
俺もポインタとか必要になるまでよくわからなかったし、
必要になれば覚えるもんだよ
「あ! 今やりたいことコレ使えばできるじゃん!!」
って気づいた時の喜びといったらもうね
11: 2009/08/10(月)10:16 ID:EzwBEj6R(1) AAS
フンドルワラタ
12: 2009/08/10(月)10:52 ID:QAwN9V2J(3/5) AAS
フンドレの人はマジでC言語初心者スレとか探した方がいいな
13: 2009/08/10(月)10:58 ID:HlYTjnic(1) AAS
自動リソース管理
ポリモーフィズム
これだけでも覚える価値あり
ポリモーフィズムはすごいゲームと相性いいしね
14: 2009/08/10(月)12:31 ID:xD0qaraW(1) AAS
>>10
分かる分かるw 俺もまさにそうだ。
きっかけはリプレイ機能付けたいな、だったかしら
15: 2009/08/10(月)15:24 ID:Ug4ZM9mI(1) AAS
俺もクラスよく分からんのだが
STGの弾作るときに便利だと聞いた
今から弾処理だから勉強してみる予定
16: 2009/08/10(月)16:52 ID:QAwN9V2J(4/5) AAS
structとclassは全く同じ。classはデフォがprivateになっただけの構造体。
メンバ関数は、隠れ引数として構造体へのポインタ*thisがこっそり付いただけ。つまり、
以下の二つは大体同じ意味のコード。
// Cっぽい版
struct vector2d {
float x, y;
};
省20
17: 2009/08/10(月)16:55 ID:++6V/igm(1/2) AAS
うまく使えば
new Bullet(
this, // 親は自分で
RAD(270), //270度方向に
10, //1フレーム10pixelで動く
GROUP_FRIEND //味方の弾
); //を作るよ!
省1
18: 2009/08/10(月)17:08 ID:jE6nNtzy(1) AAS
こういうの見せられると、
「俺って実はプログラム全然できてないんじゃないか」
と思うなぁ。
一応ゲームはできてるんだけどねw
19: 2009/08/10(月)17:16 ID:QAwN9V2J(5/5) AAS
完成品が一つも出てこないよりはいいんじゃね?
20: 2009/08/10(月)17:28 ID:++6V/igm(2/2) AAS
DxArchiveのソース見てたら単にファイル格納&暗号化じゃなくて圧縮&暗号化だったんだな
各APIでも読み込めるしかなり使いやすいな
21: 2009/08/10(月)18:10 ID:91ixwnBP(1) AAS
DxArchiveのエンコードとデコードをプログラムからやる方法教えてください
22(1): 2009/08/10(月)18:22 ID:g7oYbweh(1) AAS
つ 外部リンク[html]:homepage2.nifty.com
23: 2009/08/11(火)00:22 ID:y+GUJ2eW(1) AAS
クラスが便利なことを実感するのは2個目のゲームを作るときだと思う俺ガイル
自分でつくったものをブラックボックス的に使いまわせるってすごい便利
24: 2009/08/11(火)00:36 ID:ubRnnBVT(1) AAS
必要性を感じないなら無理にクラスを使う必要はない。
重要なのはクラスを使うことではなく分かりやすいプログラムを書くこと。
分かりやすいプログラムを追及していくとおのずとオブジェクト指向/クラスへと向かっていく。
25: 2009/08/11(火)01:14 ID:F+5v/k7H(1) AAS
ちゃんと最後に かもしれない とつけてくださいね
26: 2009/08/11(火)02:11 ID:L7W3nnsg(1) AAS
なんだそりゃ
どうしても抽象化できない病気とかならともかく
27: 2009/08/11(火)02:47 ID:E0sSKTbh(1/2) AAS
クラス勉強したいなー
ってことで俺は今、クラス化している。
それくらいの動機でもいいよね?
28: 2009/08/11(火)02:56 ID:hi68lz2+(1) AAS
いいんじゃないかな<動機
便利な使い方が分かると、楽しくなってくる、、、と思う
29(1): 2009/08/11(火)03:53 ID:Ev9Wt5wN(1) AAS
>>22
たとえばオリジナルのセーブデータをDxArchiveで暗号化して保存することってできますか?
30: 2009/08/11(火)04:21 ID:E0sSKTbh(2/2) AAS
>>29
ソースが公開されているように見えるが
31: 2009/08/11(火)09:51 ID:kbSEr/35(1) AAS
ファイル分割して関数書いて、で綺麗に片付くならそれでいい。
クラスに包む方が綺麗に片付くところは、クラスを使えばもっといい。
使い分けが適切ならさらにいい。
32: 2009/08/11(火)12:46 ID:88dfSPXH(1/3) AAS
同じようなゲーム作りたくないから
クラスが役に立ったことはほとんど無いな
描画系関数はかなり再利用するから
ファイル分割して綺麗に関数をまとめた分にはかなり役に立つ
33: 2009/08/11(火)13:15 ID:jm9PqIPM(1/3) AAS
たとえばどんな関数をつかいまわすの?
34: 2009/08/11(火)13:25 ID:bYgbIZyE(1) AAS
モザイクかけたりボカシかけたりシャープにしたり
ノイズ入れたり回転させたりセピアにしたり
35: 2009/08/11(火)13:36 ID:jm9PqIPM(2/3) AAS
よくわからないけどそういうのって関数一つにできるもんなの?
Mozaiku(x1,y1,x2,y2)みたいに?
36: 2009/08/11(火)13:38 ID:88dfSPXH(2/3) AAS
うん
37: 2009/08/11(火)13:48 ID:jm9PqIPM(3/3) AAS
いったいどうやって?画面情報を取得して、CPUのほうで計算して上から貼付けたりするの?
38: 2009/08/11(火)13:49 ID:88dfSPXH(3/3) AAS
うん
39: 2009/08/12(水)13:04 ID:/zSclh+b(1) AAS
シーンをクラス化する利点がよくわからなくて
switch文で頑張る俺
40: 2009/08/12(水)14:01 ID:3OGNII1m(1) AAS
if-eilse if-elseでもswitchでも関数ポインタテーブルでも仮想関数でも普通に書ける上で
switchが総合的に見て一番いい状況だからswitchで頑張る、ならそれでいい
41: 2009/08/13(木)01:13 ID:u+NBJI2f(1/2) AAS
組み方によっては、シーンを追加するたびにシーン管理のコードを変更しなきゃならないからなあ。
せっかくライブラリっぽくしたのに、いちいち弄らされるのは面倒だ。
そこがクリア出来るなら何でもいい。
42: 2009/08/13(木)02:32 ID:tx0/U4pP(1) AAS
キャラクタを白く点滅フラッシュさせるためには
それ用にマスク画像を用意しないとできないかな?
43: 2009/08/13(木)02:49 ID:wLlGHcGf(1/2) AAS
少なくとも俺は、同じ事をしようとした時、それしか解決策を思いつかなかった。
44: 2009/08/13(木)03:37 ID:uVGvNX64(1/2) AAS
SetDrawBrightで輝度値設定してやるとか
45: 2009/08/13(木)03:54 ID:wLlGHcGf(2/2) AAS
いや、SetDrawBrightだと最高100%までしか輝度あげられなくて、
その100%ってのは、画像そのまんま表示って事なのよ。
つまりSetDrawBrightは暗くはできても明るくはできない。
46: 2009/08/13(木)04:13 ID:uVGvNX64(2/2) AAS
SetDrawBright(0,0,0);//暗く
SetDrawBlendMode(DX_BLENDMODE_INVSRC);//反転
とするのはどうかな
47: 2009/08/13(木)07:09 ID:fyRM2WT2(1) AAS
それだけZバッファを適用して、きつくした白いフォグを適用させるって冗談みたいな方法もあるぞw
48(1): 2009/08/13(木)09:08 ID:hlVZHvkF(1/2) AAS
武器とか魔法のデータってどうやって管理してる?
やっぱり大本のクラスを作って継承させる感じ?
DBとかでもりもり書いたほうが楽そうではあるんだけれど
49: 2009/08/13(木)10:27 ID:ymWx9+cu(1) AAS
>> 42
パレット操作
50: 2009/08/13(木)11:29 ID:FIgxQyht(1) AAS
そういやパレット操作の命令が追加されたんだっけ。
それを使って白い画像を作って、グラフィックハンドルまで用意しておけばできるはずだな……。
51(2): 2009/08/13(木)13:06 ID:8SGCfcLw(1) AAS
>>48
struct(構造体)を持つSTLのリストを作って、そこで管理
新しく何かを手に入れたならば、リストに新しい構造体を埋める
代入する値は手打ち、つまり長々と代入文を書く。DB化してもよいが労力は大差ない
これは仲間キャラクターや戦闘の管理に向いているだろう
もう1つは数値をひとつ代入するリストを作って
そこに例えば武器ナンバー001番って値を入れて
省4
52: 2009/08/13(木)22:01 ID:hlVZHvkF(2/2) AAS
>>51
ありがとう
2つ目のパターンがいいのかな
どうも膨大になっちゃってたからいろいろ試してみる
ありがとう
53: 2009/08/13(木)22:09 ID:LkhPG9Xp(1) AAS
構造体の代入じゃ駄目なのかそれ
54: 2009/08/13(木)23:45 ID:u+NBJI2f(2/2) AAS
テンプレで、名前や数字を変えるだけで何とかなるものと、それだけでは表現できないものと、両方がある。
武器や魔法は前者であることが多いと思う。
ダメージなどが違うだけでアルゴリズムは変わらない。回復/支援魔法なども入れても数パターンで済む。
TRPG的な魔法とかはコンピュータゲームじゃ作りにくいだろうし。
逆に、イベントなどは後者で作られる。
クラスの継承なり、関数ポインタなり、外部スクリプトなりで、イベントごとにまるっと別の処理になるだろう。
ただしその場合でも、共通データを格納する部分は、武器や魔法と同じようなテンプレ処理を利用することになるかも。
55: ◆GRGSIBERIA 2009/08/14(金)00:12 ID:FT3Wa2QE(1/2) AAS
>>51
戦闘で魔法を使うんならその方法でいいだろうけど、
呼び出すときに関数ポインタ使わなきゃならんから面倒くさくね?
データ的には安上がりでいいんだろうけど、可読性考えると怖いなあ……。
56: ◆GRGSIBERIA 2009/08/14(金)00:19 ID:FT3Wa2QE(2/2) AAS
ごめんなさい。
二番目の話です。
57: 2009/08/14(金)00:50 ID:E9/t+ChI(1) AAS
基本基本クラスで例外は派生クラスでいいんじゃね
58: 2009/08/14(金)01:01 ID:Bq2DtYMd(1) AAS
まあ別に仕事でプログラムする以外だったら好きなようにすればいいんじゃね
59(1): 2009/08/14(金)15:49 ID:X3RFlmNR(1/3) AAS
dxライブラリがSetDrawScreenで使っているバックバッファに
dxライブラリを介さずに絵を書き加えてやる方法はないもんかな・・・
それができるだけで結構3D表示させられそうなんだが
60(1): 2009/08/14(金)16:36 ID:zyAixWsB(1/3) AAS
>>59
俺の場合3Dは行列系関数とDrawPolygon3Dで間に合ってるけど、
それって裏画面にDirectXで描画するってこと?
上下前次1-新書関写板覧索設栞歴
あと 941 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.019s