ab.com コミュニティ
https://www.activebasic.com/forum/

DirectPlay
https://www.activebasic.com/forum/viewtopic.php?t=1200
ページ 11

作成者:  r@PCLabo [ 2006年7月02日(日) 21:40 ]
記事の件名:  DirectPlay

はじめまして。2.3から3.0ぐらいまでABをメインに使ってプログラムを組んでいたrと申します。

ABの進歩は速いですね。いつの間にDirectXに対応したのでしょうか。
2.62で作成したグラフィック生成のプログラムを4.24のN88互換に移植したら、速さの違いに感動しました。
以前オンラインゲームを作ろうとして挫折したのですが、これを機に再挑戦したいと思っております。

しかし、ヘルプを見るとDirectPlayの情報がありませんが、対応していないのであれば今後の対応をお願いします。(もしすでに使えるのであればごめんなさい。できれば情報がかかれているところを教えてください。)

ついでで申し訳ないのですが、PSetでRGBを使いたいと思い、\Include\basic\prompt.sbpのMacro PSET 部分を

[code]
Macro PSET(x As Long, y As Long)(ColorCode As Long)
'呼び出し方法は以下のようになります(コンパイラがパラメータの並びを最適化します)
'PSet (x,y),ColorCode

Dim hDC As Long

hDC=GetDC(_PromptSys_hWnd)
SetPixel(hDC,x,y,ColorCode)
SetPixel(_PromptSys_hMemDC,x,y,ColorCode)
ReleaseDC(_PromptSys_hWnd,hDC)

_PromptSys_GlobalPos.x=x
_PromptSys_GlobalPos.y=y
End Macro
[/code]

と変更したら動いたのですが、単純にカラーコードの関数を外してよいのでしょうか? 他のところで悪さをしそうで心配です…
[/b]

作成者:  konisi [ 2006年7月02日(日) 23:01 ]
記事の件名: 

SetPixel関数かGetBasicColor関数を調べてみてください。
ちなみに、はずしても平気です。(RGBの順序が逆転した気もするけど。)

作成者:  r@PCLabo [ 2006年7月02日(日) 23:11 ]
記事の件名:  RGB

> SetPixel関数かGetBasicColor関数を調べてみてください。
> ちなみに、はずしても平気です。(RGBの順序が逆転した気もするけど。)
返信ありがとうございます。

RGBが逆転ですか。
そのプログラムというのは波の干渉をシミュレートするもので、位相を色で表示しているのですが、
最大値(+2)を赤 0を緑 その間は中間色
最小値(-2)を青 0を緑 その間は中間色
つまり、正負が逆転するだけだと全く変わらないので、確かめようがありません(爆)

試験も近いので試してみます。

作成者:  konisi [ 2006年7月03日(月) 01:24 ]
記事の件名: 

いや、逆転すると言うのは正負ではなく。

HTMLとかでは#RRGGBBっていう順番になるんですが、ABで使う時は上下が逆で&HBBGGRRの順番だったかなと。

作成者:  淡幻星 [ 2006年7月03日(月) 14:14 ]
記事の件名:  Re: DirectPlay

ついでの方に関して。
引用:
> PSetでRGBを使いたいと思い ・・・(中略)・・・
> と変更したら動いたのですが、単純にカラーコードの関数を外してよいのでしょうか? 他のところで悪さをしそうで心配です…
konisiさんがおしゃっているように、外しても問題ありません。
が、ABのアップグレードのたびにインクルードファイルを書き換えるのも面倒なので、
RBG対応のPSet()を自分で作ってしまうのも手です。
例えば私はRGB指定用にPsetBmp()なんてものを作ってます^^;

なお、RGBの指定にはRGB関数(ヘルプにあります)を使ったほうが楽です。
RGBの順序などを考えずにすむので。
(実際のところ、ABのRGBの順序はkonisiさんのおっしゃってるようにBBGGRRの順ですね)

作成者:  r@PCLabo [ 2006年7月03日(月) 19:53 ]
記事の件名:  Re2: RGB

konisiさん、淡幻星さん、返信ありがとうございます。

正負が逆転というのは、RGBの順序の逆転が、私のプログラムでは位相の正負の逆転に対応する、という意味です。誤解を与えるような表現ですいません。

カラーコード(だった引数)の指定はRGB関数にかけてしていますので大丈夫そうです。今度使うときがあったら気をつけておきます。

DirectPlayについての情報はどなたかお持ちでしょうか。仕様提案の場所ですので、ついでのことはこれで解決とさせてください。

ページ 11 全ての表示時間は UTC+09:00 です
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/