[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 11/13 16:36 / Filesize : 243 KB / Number-of Response : 900
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

DXライブラリ 総合スレッド



1 名前:名前は開発中のものです。 mailto:sage [2007/12/12(水) 23:06:39 ID:Ns2HwhRB]
Cを習得した程度のスキルでも、
GUIのゲームを比較的容易に作成する事を可能にする、
「DXライブラリ」に関するスレッドです。

DXライブラリの詳細ついては
homepage2.nifty.com/natupaji/DxLib/
を参照して頂きたい。

DXライブラリに関するテクニックなどの情報交換などを行う事で、
多くのDXライブラリユーザのスキルの向上に役立てたら幸いです。

630 名前:627 mailto:sage [2008/08/13(水) 11:08:10 ID:7NjPpTlV]
教えていただき、ありがとうございます。
カレントディレクトリって、作業中のフォルダですよね?
C#の場合ですと、[WindowsFormsApplication1]フォルダでいいのでしょうか?

何度も申し訳ありませんが、よろしくお願いします。

631 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 11:22:56 ID:FyPLvjSN]
C#がどんなのか知らないけどな。

カレントディレクトリってのが作業中のフォルダって認識は合ってる。
ただ「なんの作業中か」を誤解している可能性がある。

例えば、貴方がゲームを作って、そのプログラムが「game.exe」というファイル名で作成されたとしよう。
当然、そのゲームをするにはその「game.exe」を実行するわけだが、
その時、まさにその「game.exe」のあるフォルダが「作業中のフォルダ」になるわけだ。

要するに「カレントディレクトリに置いたらいいよ」ってのは
「実行ファイルと同じとこに置いとけ」という意味だ。

632 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 11:42:08 ID:ZEZwt305]
いやー、その説明はどうかと。

633 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 11:42:13 ID:BbNVLc2o]
ショートカット経由で起動した場合はショートカットの場所がカレントになるだろ

634 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 12:10:59 ID:ZEZwt305]
まあとにかく、リソースの類はファイル埋め込むかEXEの場所に。
カレントをあてにせず、EXEの場所を調べてアクセスするのがいいかな。
書き込む場合はEXEの場所じゃないほうがいい。

635 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 12:21:47 ID:yFX3V9Dg]
カレントディレクトリは、OpenFileDialogを使ったりすると
読み込み先のフォルダに変わったりするから注意した方がいいと思うぞ
それが原因で詰まったこともあるから

636 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 17:09:46 ID:RJ+2pmNA]
適当にカレントディレクトリに置けばいいとか言った。反省はしている。

相対パスでアクセスしたいってことだよね?
それとも絶対パスでも画像とかが動かないの?
後者だとお手上げ。
前者なら、多分bin/Debugフォルダが作られてるから、そこに置けばいいよ。

637 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 17:31:59 ID:yFX3V9Dg]
DXライブラリゲームプログラム開発講座を全部読んでみたけど、
すごーーーーーーーく初心者向けの解説だなw

まぁこれで十分なのかも知れないけど、
もう少し詳しい中級者レベルのはないのかな

638 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 17:40:55 ID:gDnH2Ick]
中級者なら自分で考えるか、他の方法知ってる前提なんだろ




639 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 18:56:43 ID:R5DuEQYn]
>>637
DXライブラリについて勉強したいならココダロー
l.huu.cc/g/
龍神録プログラミングの館まで全部理解出来れば相当使いこなせるようになるかと


640 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 19:00:40 ID:yFX3V9Dg]
>>639
おおありがとう
こっちはもう少し実践的だね

641 名前:627 mailto:sage [2008/08/13(水) 20:13:52 ID:7NjPpTlV]
皆さん、教えていただいてありがとうございます。

画像をbin/フォルダの下にあるDebugフォルダに入れたのですが、表示されませんでした。
某サイトのソースをコピーしたのですが、記述が間違ってるのでしょうか・・・

-- ソース --
DX.LoadGraphScreen(0, 0, "char.png", DX.TRUE);

申し訳ありませんが、アドバイスをお願いします。

642 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 20:18:45 ID:v0IoKL7W]
LoadGraphScreen(0, 0, "char.png", TRUE);

643 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 23:34:45 ID:ZpXLkfXI]
>>641
それで、問題が解決できる奴がいたとしたら、そいつはエスパーだよ・・・・・


まさか、それでソースが全部なわけないよな。

644 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 23:49:59 ID:RJ+2pmNA]
>>641
確認したいんだけど、画面は真っ黒になってる?
なってなかったらそもそもDXライブラリがちゃんと動いてない。
でも一応動いてるみたいだからそれはないかな……。

あとchar.pngを一回絶対パスで指定してみて。

645 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 23:50:43 ID:CMyXDagd]
>>641
表示されないというのが「エラーが出た」なのか、「何も起きない」なのかすら
わからないので、無限の可能性が広がります。

1. ファイル名が間違っている
2. 画像に使ってる色が透過色になってる
3. ファイルが存在しない
4. 画像がセーブできてない(セーブに失敗している)
5. パスの指定がうまくいってない
6. そもそもDXライブラリを初期化できていない
7. ウィンドウが出てない
8. 裏画面に書いたままFLIPしてない
9. メモリが足りない
10. コンパイルしてない、あるいはエラーが出ている
11. 実は環境がMac
12. ライブラリをインストールしてない
13. 使用しているディスプレイ、グラボの仕様/設定上表示できない色を使っている
14. 某サイトのソースにバグ
15. (CPUの)速さが足りない

646 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 23:52:44 ID:k9pinPn+]
Releaseフォルダも試してみたら

647 名前:名前は開発中のものです。 mailto:sage [2008/08/14(木) 00:10:37 ID:7xrMXFtW]
プロジェクトファイルだっけ?←拡張子がdspのやつ
とりあえずあれを含んだサンプルを拾ってきて、動くかどうか試してみる。
動くのを確認してからソースをオリジナルに書き換え、フォルダに画像を置いて動作確認。
というのはどうだろう?

648 名前:名前は開発中のものです。 mailto:sage [2008/08/14(木) 03:20:37 ID:s4dRQS6A]
「横スクロールアクション」を作ってる最中なんだが、
同じカーソルキー二度押しでダッシュさせるサンプルコードを探してるが見つからない。

二度押し判定の仕方を教えてほしいの



649 名前:名前は開発中のものです。 mailto:sage [2008/08/14(木) 03:33:41 ID:4cx2dJb5]
それくらい自分で考えてみようぜ
フラグやカウンタを使えばできる


650 名前:名前は開発中のものです。 mailto:sage [2008/08/14(木) 10:06:19 ID:E3jqMQR0]
>>641
とりあえず動かしたいんだよな?
まず、プロジェクトの全部のフォルダにその画像全部コピーして実行してみろよ。
で、表示されたら1つずつ消して実行してみて、どれ消したら出なくなるか試してみるんだよ。

本当はカレントがどこか調べたり、フルパス指定したりするんだけど最初のためしなんだろうから、
それでやってみ。たぶんDebugの一つ上がカレントじゃないかと思う。

651 名前:名前は開発中のものです。 mailto:sage [2008/08/14(木) 10:08:06 ID:E3jqMQR0]
ってbinができてるなら2008じゃなくて2005なのかな。
だったら別の場所かもしれん。

652 名前:名前は開発中のものです。 mailto:sage [2008/08/14(木) 12:42:31 ID:E3jqMQR0]
って、、、、よく見たらC#なのか。
これC#から使うにはちょっとあれだが・・・
bin\Debug に入れたら動いたぞ。
(うちはVista64なんで正確にはbin\x86\Debug)

653 名前:名前は開発中のものです。 mailto:sage [2008/08/14(木) 12:45:51 ID:E3jqMQR0]
ついでに、全ソース。
using System;
using DxLibDLL;

namespace WindowsFormsApplication1
{
static class Program
{
[STAThread]
static void Main()
{
DX.ChangeWindowMode(DX.TRUE);
DX.DxLib_Init();
DX.LoadGraphScreen(0, 0, "char.png", DX.TRUE);
DX.WaitKey();
}
}
}

654 名前:名前は開発中のものです。 mailto:sage [2008/08/14(木) 16:59:16 ID:E3jqMQR0]
しかしDXライブラリを初めて使ってみたが、Vistaと相性悪い?

655 名前:名前は開発中のものです。 mailto:sage [2008/08/14(木) 19:47:10 ID:Lwdz3ZLP]
そもそもVistaだったらDirect3D使うべき

656 名前:名前は開発中のものです。 mailto:sage [2008/08/14(木) 22:28:58 ID:husrYnDZ]
>>654
そんなことないと思うけど。なんか問題あったか???

657 名前:名前は開発中のものです。 mailto:sage [2008/08/14(木) 23:20:36 ID:E3jqMQR0]
あー、入門向けの説明してる画像ずらして表示するやつ、キー入力待ちまで何もでないんだよね
まあ通りがかりに質問見つけてためしに動かしてみただけなので、もうちょっと見てみないと何とも言えないけど。
でもこの龍神録の解説はいいね。xnaに移植してみたくなった

658 名前:名前は開発中のものです。 mailto:sage [2008/08/15(金) 10:04:50 ID:c3xnj8Q3]
>>648
14歳〜、のアクションゲームサンプルに
「ジャンプ時にジャンプキーを受け付けないようにする」って解説がある、参考にしてみては?



659 名前:627 mailto:sage [2008/08/16(土) 02:31:00 ID:IJByLJ4E]
ソースを組み直したら表示されました。
単純なミスをしてたみたいでした。お騒がせしました。

画像ファイルはbin/debugに置くことで表示されました。
皆さん、アドバイスありがとうございました。

660 名前:名前は開発中のものです。 mailto:sage [2008/08/16(土) 09:26:28 ID:tLttBDTG]
>648
入力をキューなりリングバッファなりに貯めて
コマンド成立判定の結果で状態遷移なりフラグなり変更

661 名前:名前は開発中のものです。 mailto:sage [2008/08/16(土) 10:14:52 ID:QpDIrmnH]
「カーソルキー二度押し」とはどういう状況の事なのか、を
考えてみれば自ずと答えは出るだろう。


662 名前:名前は開発中のものです。 mailto:sage [2008/08/16(土) 23:31:10 ID:7gLPM7hz]
DXライブラリで、STLって使えない?
クラスの配列を実装するのにコンテナのvectorを使いたいんだけど、
エラーを吐かれる。

>>232-233で、ヘッダに何か書いてある、と書いてあったから
DxLib.hをSTLでテキスト検索掛けたけど
(STLを半角にしても全角にしても)引っかからない。

本家掲示板過去ログ↓でそれらしき記述を見つけたけど、
ttp://hpcgi2.nifty.com/natupaji/bbs/patio.cgi?mode=past&no=560
#define DX_USE_VISUALC_MEM_DEBUG
ってどこにもないんだよね。
DxLib.hの147行目当たりに DX_USE_VISUALC_MEM_DEBUG があったから
それを含む数行のコメントアウトを外してみたけど反応は変わらないし。

663 名前:名前は開発中のものです。 mailto:sage [2008/08/16(土) 23:42:01 ID:O36Whzxu]
>>662
オレは何の問題もなく使えてるよ

664 名前:名前は開発中のものです。 mailto:sage [2008/08/16(土) 23:54:42 ID:3Mm4zQJB]
>>662
(出来る範囲で)エラーメッセージを晒せば、詳しい人がトラブルシュートしてくれるかもよ。

665 名前:名前は開発中のものです。 mailto:sage [2008/08/17(日) 01:34:05 ID:ewUKCOWb]
>>663-664 ありがとう。
>>663 何の問題も無く、とは、DxLib.hをいじったりしないで、ってこと?

とりあえず、最低限で組んだソースを晒してみる。
------
#include "DxLib.h"
#include <vector>

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow){
        if(DxLib_Init() == -1){
                return -1;
        }
        SetDrawScreen(DX_SCREEN_BACK);

        vector<int> x;
        x.push_back(1);

        while(CheckHitKey(KEY_INPUT_ESCAPE)==0 && ProcessMessage()==0){
                DrawFormatString(0,0,GetColor(255,255,255),"x[0] = %d",x[0]);
                ScreenFlip();
        }

        DxLib_End();
        return (0);
}
------

666 名前:名前は開発中のものです。 mailto:sage [2008/08/17(日) 01:34:45 ID:ewUKCOWb]
長くなったので連投失礼。

>>665のソースで吐かれるエラーは、
------
\main.cpp(10) : error C2065: 'vector' : 定義されていない識別子です。
\main.cpp(10) : error C2062: 型 'int' は不要です。
\main.cpp(11) : error C2065: 'x' : 定義されていない識別子です。
\main.cpp(11) : error C2228: '.push_back' の左側はクラス、構造体、共用体でなければなりません
        型は ''unknown-type'' です。
\main.cpp(14) : error C2065: 'x' : 定義されていない識別子です。
------
以上。

あ、環境書いてなかった。
VC++2008Ver9.0の、DXライブラリVer 2.24cです。

667 名前:名前は開発中のものです。 mailto:sage [2008/08/17(日) 01:40:34 ID:tqDU34tR]
>>649,>>658,>>661
とんくす
何となく理解した

668 名前:名前は開発中のものです。 mailto:sage [2008/08/17(日) 04:10:10 ID:mR8Ia0CQ]
>666
俺そんなに詳しいわけでもないんだけど、
std::vector<int> x;
これでどうだろう



669 名前:名前は開発中のものです。 mailto:sage [2008/08/17(日) 07:39:51 ID:GOwvXjh7]
>>665
答えは>>668が書いてくれてるけど、
問題の切り分けができるようになった方が良いよ。

670 名前:名前は開発中のものです。 mailto:sage [2008/08/17(日) 11:45:33 ID:ewUKCOWb]
>>668
cinとcout使わないからstdネームスペースを宣言していなかった。
ありがとう。
(っていうか「C++ vector」でググったら最初のページに『vectorはstdという名前空間内にあります。』って書いてあるじゃないか…)
>>669
精進します><

671 名前:名前は開発中のものです。 mailto:sage [2008/08/17(日) 12:35:36 ID:vVpxXEty]
using namespace std;
はいつもしとけば

672 名前:名前は開発中のものです。 mailto:sage [2008/08/18(月) 13:02:21 ID:BAHHLEa/]
>>671
ヲイヲィ・・・・
使わないところで、そうやってnamespace使っちゃだめだろ。
なんのために名前空間なんて概念取り入れてると思ってるんだよwww

673 名前:名前は開発中のものです。 mailto:sage [2008/08/18(月) 13:43:37 ID:XHbUdQA2]
逆にいつも使わなければ、この手のエラーは最初に食らってて変なとこ探したりしなかっただろうに。

674 名前:名前は開発中のものです。 mailto:sage [2008/08/18(月) 15:29:16 ID:IR1SAisJ]
std名前空間なんて別にusingしといても問題ねーよ

675 名前:名前は開発中のものです。 mailto:sage [2008/08/18(月) 21:22:08 ID:XHbUdQA2]
今回の質問者には問題あったみたいだがw

676 名前:名前は開発中のものです。 mailto:sage [2008/08/19(火) 01:06:47 ID:HNGx9BRt]
ループ毎に、ClearDrawScreenで画面をきれいにしてから描画していると、
画面の1/3に及ぶ大きなちらつきが出てしまうのですが…解消するには
どういった方法がありますか?

677 名前:名前は開発中のものです。 mailto:sage [2008/08/19(火) 02:28:18 ID:H5en/Vi4]
それは本当にClearDrawScreenのせい?

678 名前:名前は開発中のものです。 mailto:sage [2008/08/19(火) 03:17:38 ID:HNGx9BRt]
>677
すみませんでした。グラフィックボードの性能不足のようでした。
スレ汚し失礼しました



679 名前:名前は開発中のものです。 mailto:sage [2008/08/19(火) 09:03:29 ID:Ck7KpSlS]
>>678
本当のグラフィックボードの性能のせい?
裏画面に描画してflipすれば治る類のものかもよ。

680 名前:名前は開発中のものです。 mailto:sage [2008/08/19(火) 14:41:54 ID:HNGx9BRt]
>679
すみません、SetDrawScreenの位置がおかしいのが原因でした。
ありがとうございました。

681 名前:名前は開発中のものです。 mailto:sage [2008/08/19(火) 15:45:05 ID:Pc0No+Vn]
本当のSetDrawScreenの位置のせい?
(ry

682 名前:名前は開発中のものです。 mailto:sage [2008/08/19(火) 20:42:56 ID:H2/ZmzLf]
お茶吹いたじゃねぇか!

683 名前:名前は開発中のものです。 mailto:sage [2008/08/20(水) 03:18:08 ID:bLtEJeoI]
同じプログラムを、
解像度1024*768 32bitcolor,フルスクリーン
解像度1024*768 32bitcolor,ウインドウ

の両条件で実行したところ、ウインドウモードではfpsが平均して68以上だったのに対し、
フルスクリーンではせいぜい59.8程度で、60を超えることはありませんでした。
さらにSleep(20)のハンデを課して両条件で実行したところ、処理自体はフルスクリーンモード
の方が速いということがわかりました。
フルスクリーン時のfpsが頭打ちになっていたのは、垂直同期というのに関係があるんでしょうか?

684 名前:名前は開発中のものです。 mailto:sage [2008/08/20(水) 04:09:13 ID:rRA8J1RI]
うん

685 名前:名前は開発中のものです。 mailto:sage [2008/08/20(水) 04:13:55 ID:bLtEJeoI]
>>684
ありがとうございました!

686 名前:名前は開発中のものです。 mailto:sage [2008/08/20(水) 09:29:37 ID:e8oi3kIG]
「画面のプロパティ」の「設定」→「詳細」のあたりにリフレッシュレートの設定があると思う。
おそらく60になってるだろうけど、それを70とかに変えて試してみると勉強になるかも。
(ディスプレイやグラフィックボードによっては対応してない場合もあり)

あと、↓の命令を使って垂直同期信号待ちを切ってみるのも勉強になるかも。
どうして垂直同期信号待ちが必要とされる場合があるのか解るかもよ。

SetWaitVSyncFlag  ScreenFlip関数実行時にCRTの垂直同期信号待ちをするかのフラグセット



687 名前:名前は開発中のものです。 mailto:sage [2008/08/20(水) 09:43:38 ID:xrtLaobQ]
CRTのときは、60と70の差が大きすぎてすぐにリフレッシュレート上げてたけど、
液晶は見た目変わらんから60のまま、なことも多いなあ。

688 名前:名前は開発中のものです。 mailto:sage [2008/08/20(水) 18:57:24 ID:bLtEJeoI]
>686
ありがとうございます。
色々勉強になります。しばらく色々設定いじってみます



689 名前:名前は開発中のものです。 mailto:sage [2008/08/25(月) 03:13:19 ID:DGfm1VSy]
ニュートラル調べればいいだけだと思うよ

690 名前:名前は開発中のものです。 [2008/08/28(木) 13:33:11 ID:m65IXGpQ]
DXライブラリ3Dを使っています
メタセコイアでXファイルをつくりUVマッピングなどチェックをして保存しました
LoadModelでそのXファイルを読み込み
DrawModelで表示させるようにしましたが

起動すると LoadModel 0番目のテクスチャ C:\...................... TEST.bmp
が見つかりませんと
でます
対処方法を教えてください

691 名前:名前は開発中のものです。 mailto:sage [2008/08/28(木) 13:38:24 ID:TltG6Uz7]
C:\...................... TEST.bmp はあるの?

692 名前:名前は開発中のものです。 [2008/08/28(木) 13:49:15 ID:m65IXGpQ]
>>691
同じフォルダ内にあるんだけど
他の、サンプルにある Sky1.X は、テクスチャも貼られ表示できました
ちなみに
Xファイルを開いて、TextureFilename のところを 
C:\.........TEST.bmp
から
TEST.bmp
に変えると表示されました

693 名前:名前は開発中のものです。 mailto:sage [2008/08/28(木) 17:26:33 ID:BAQFIkd7]
>>692
マルチバイト文字を使用する設定を確認してみてはどうか。
携帯からエスパー。

694 名前:名前は開発中のものです。 [2008/08/28(木) 18:50:54 ID:JopJTyIq]
というかドライブから指定するもんか?

695 名前:名前は開発中のものです。 [2008/08/28(木) 21:28:08 ID:dfxzS5Cd]
実行されたディレクトリを取得して
そこからの相対パスで書いとくのがいいんじゃないかな

696 名前:名前は開発中のものです。 [2008/08/29(金) 18:08:45 ID:f6mFLVdV]
結局自力解決したのかどうなのか

697 名前:名前は開発中のものです。 [2008/08/29(金) 18:38:30 ID:HzuC4F0t]
>>696
手直しでファイル名を指定することにしました
めんどいね

698 名前:名前は開発中のものです。 mailto:sage [2008/08/29(金) 18:41:09 ID:smutsiJt]
そもそもxにフルパスで書かれるのはどうなんだ?
うちの環境じゃそうならないが・・・



699 名前:名前は開発中のものです。 mailto:sage [2008/08/31(日) 18:49:33 ID:vgAWOJQZ]
グラボの関係か、320*240*16BITでつくってるゲームをフルスクリーンで表示しようとしても、拡大されず、左上4分の1だけゲーム画面で、あとの4分の3は真っ暗!
みたいな状況になってしまう。
なにかいい解決方法ありませんか?;

700 名前:名前は開発中のものです。 mailto:sage [2008/08/31(日) 21:00:40 ID:9t3mvfZS]
>>699
>>610

701 名前:名前は開発中のものです。 mailto:sage [2008/09/01(月) 10:37:37 ID:fhLFDpft]
ってメタセコイアの環境設定で指定したフォルダ以外を指定するとフルパスになるな。
こういうもんなのか。

702 名前:名前は開発中のものです。 mailto:sage [2008/09/01(月) 13:48:16 ID:dabOwcbj]
>>701
そんなもんだ。
メタセコなら毎回フルパスを消して相対パスにせないかんですよ

703 名前:名前は開発中のものです。 [2008/09/02(火) 09:43:44 ID:hFsfLIz7]
>>702
やっぱりそうか。
>>698
のようなこともあるのかと、ぐぐってみたが、なかった

704 名前:名前は開発中のものです。 mailto:sage [2008/09/02(火) 10:05:31 ID:b2f1Qmol]
環境設定でピクチャのフォルダ指定して常にそこ使ってるとパスが入らない、

705 名前:名前は開発中のものです。 mailto:sage [2008/09/09(火) 15:20:40 ID:CoW+esAW]
三角関数などを利用して求めた移動量は基本的に少数の形をとるため、実際に
描画する際には整数にしなければなりません。しかし、そうすると移動量の値に
差が生じてしまい、ずれた方向に進んだりしてしまいます。
今は、定期的に移動量計算をやり直して進路を修正しているのですが、何か他に
良い方法はありませんか?

706 名前:名前は開発中のものです。 mailto:sage [2008/09/09(火) 15:26:39 ID:HJ9D2qDN]
>>705
俺は座標や移動量などは全部小数で扱って、描画するときだけ整数にしてる。

707 名前:名前は開発中のものです。 mailto:sage [2008/09/09(火) 15:36:50 ID:CoW+esAW]
>706
型変換のタイミングを延ばして、誤差を最小限にするんですね
ありがとうございます。

708 名前:名前は開発中のものです。 mailto:sage [2008/09/09(火) 20:28:23 ID:xHkBaHNO]
普通に関数名の最後にFがついた奴で表示すればいい



709 名前:名前は開発中のものです。 mailto:sage [2008/09/10(水) 00:44:13 ID:KDatiZii]
>708
ヘッダを覗いたらありました!
ありがとうございます!

710 名前:名前は開発中のものです。 mailto:sage [2008/09/10(水) 10:33:12 ID:pAofywHU]
久々に来たら自分のカオスソースを見てしまったw

711 名前:名前は開発中のものです。 mailto:sage [2008/09/13(土) 09:05:11 ID:teQENKcK]
>705
亀ですまんが、固定小数点とか楽じゃない?


712 名前:名前は開発中のものです。 mailto:sage [2008/09/13(土) 09:59:40 ID:OOndKDeu]
>711
ありがとうございます。調べてみましたが、なかなか計算速度が向上しそうです。
C,C++では標準でのサポートはされていないようですが…
それも視野に入れて作っていきたいと思います。

713 名前:名前は開発中のものです。 mailto:sage [2008/09/13(土) 10:13:19 ID:Ln37Pw6J]
>>712
難しく考えないでもよほど大きな座標系じゃない限り
浮動小数点でずれが発生するなんてめったにないぞ・・・。

何か間違ってないか?
あと固定小数点は標準のサポートとかそういうんじゃなく、
はるか古来からある基本的な手法の一つだぞっと。

714 名前:名前は開発中のものです。 mailto:sage [2008/09/13(土) 10:46:48 ID:teQENKcK]
>712
要はさ。

座標とか、例えば全部100倍した値で保持しておいて、
実際に表示する時だけ1/100にすればいいんでね?って発想。

実際に使うなら、もうちょっと応用しなきゃならないだろうけど、
これだけでもfloatよりは速い場合があったりする。

715 名前:名前は開発中のものです。 mailto:sage [2008/09/13(土) 15:47:20 ID:OOndKDeu]
>713 >714
そういうことですか。すみません、少し勘違いしていました。
ただ、入力→変換(割り算など)を考えると実感が湧かないので、
とりあえず、クラス化して実際に速度を比較してみます。

716 名前:名前は開発中のものです。 mailto:sage [2008/09/13(土) 15:56:24 ID:jUmbsVEt]
>例えば全部100倍した値で保持しておいて

128倍とか、二の倍数の方が早いかも、と考えるのは古いかな。

717 名前:名前は開発中のものです。 mailto:sage [2008/09/13(土) 16:38:27 ID:SPZ9dRlM]
たとえ話でわかりやすい10進にしてるであろうのにこの突っ込みはかわいそう

718 名前:名前は開発中のものです。 mailto:sage [2008/09/13(土) 17:58:49 ID:jUmbsVEt]
いや別にそれが悪いと言ってるわけじゃないって。



719 名前:名前は開発中のものです。 mailto:sage [2008/09/13(土) 18:00:25 ID:77ztokxP]
僕は5年前HSPというスクリプトでシューティングを作ってたのですが、
整数しかサポートされてなかったので、10000倍にバイアスかけて
描画の時だけ10000で割ってました。
画面が6400000 * 4800000あると仮定していました。
はいはい、よかったでちゅねー僕。

720 名前:714 mailto:sage [2008/09/13(土) 18:15:00 ID:Craygg7f]
>716
ちなみに自分の場合は、ビットフィールドを使ってるので割り算すらしてません

721 名前:名前は開発中のものです。 mailto:sage [2008/09/13(土) 21:55:19 ID:Ln37Pw6J]
>>720
まぁビットフィールド使うよりシフト演算使ったほうが速度的には速いんですけどね。


722 名前:名前は開発中のものです。 mailto:sage [2008/09/14(日) 09:22:56 ID:GkehiKsz]
>721
計測したところあんまり変わらなかったので
シフトさせるよりビットフィールドの方が見やすいかなと。(ぱっと見たら構造体っぽいし)

723 名前:名前は開発中のものです。 mailto:sage [2008/09/17(水) 17:38:25 ID:tRpYcu/9]
みなさんはDXlibで光や水、炎、煙などはどう表現してますか?
元画像とαパターンを用意してアニメーションさせる、
半透明のパーティクルを多数描写して表現するなどの方法が考えられますが
他に効率の良い方法やより良い表現方法などはありますか?

724 名前:名前は開発中のものです。 [2008/09/17(水) 18:02:15 ID:jRvaVjUa]
>>723
チミは、どうやってるの?

725 名前:名前は開発中のものです。 mailto:sage [2008/09/17(水) 18:34:02 ID:tRpYcu/9]
>>724
実はまだαブレンドを使ったことが無いんです
依然作った爆発のエフェクトは透明度0のアニメーションパターンを
大量に描写するという力技をやったのですが非常に見づらくて・・・
いずれαブレンドと使うときの参考に聞いてみたくて

726 名前:名前は開発中のものです。 mailto:sage [2008/09/17(水) 20:41:09 ID:UL3sHJKU]
>723
ドット絵で爆発パターンを用意して、普通にアニメーションさせるのは?
どういうゲームを作るのかにもよるだろうけど、十分綺麗だよ。


727 名前:名前は開発中のものです。 mailto:sage [2008/09/18(木) 05:58:52 ID:0k0SxurY]
αブレンドは非常に便利ですよ〜。
とりあえずスーっと消えていく表現をするのはアルファブレンド無しには無理では。
光は単純に加算ブレンドすれば表現出来ますよ。
水はモワモワした明るさのむらがある画像を同様に加算ブレンドで
適当に動かしながらブレンドすれば所どころ輝度が明るくなるので
水がキラキラしてるみたいに見えます。
・・まぁこればかりはサンプル見ながらじゃないと理解は難しいでしょうけど。
煙もフォトショとかで適当にモワモワした画像を用意して重ねて表現してますね〜。
爆発だけは私の技量じゃ無理なんで、予め用意した画像をまわして
アニメーション作っています。



・・・ところでDXライブラリ使って皆さん
どんなゲーム作っていらっしゃるんでしょう〜?

728 名前:名前は開発中のものです。 mailto:sage [2008/09/18(木) 22:23:53 ID:rk0RvkW2]
>>726
メタルスラッグの爆発アニメーションはすごいですよね
あそこまで出来れば小手先でごまかす必要な無いんでしょうけど・・・

>>727
なるほど、加算も工夫次第でいろいろ使えそうですね



729 名前:名前は開発中のものです。 [2008/09/19(金) 11:13:43 ID:1wZmK+F1]
>>727
ソース見せてくれませんか?

730 名前:名前は開発中のものです。 mailto:sage [2008/09/19(金) 14:14:52 ID:ULXARkZB]
ソース見ても役に立たないのでは・・・
こういうのは素材が大事だ







[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<243KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef