アナログデータのリアルタイム描画
Re: アナログデータのリアルタイム描画
オフトピック
offtopicにしてる話なので,今の話の流れに無関係であれば気兼ねなく黙認してくださいな.
要は,
何らかのレンダリング処理を自前で書いたとして
そのレンダリング処理に要する計算やらデータアクセス処理やらの実装自体が重い場合,
DirectXだの何だのを持ってこようが,肝心のボトルネック部分が改善されるわけじゃないんだから意味ねぇよな,っていう.
要は,
何らかのレンダリング処理を自前で書いたとして
そのレンダリング処理に要する計算やらデータアクセス処理やらの実装自体が重い場合,
DirectXだの何だのを持ってこようが,肝心のボトルネック部分が改善されるわけじゃないんだから意味ねぇよな,っていう.
Re: アナログデータのリアルタイム描画
速習法について
#29の
>なを
>viewtopic.php?f=3&t=20479
>の
>#5~#8
>も参考にしてください
の方法なら1日で https://dixq.net/g/ の例がテストできるはず(^^;
またコマンドプロンプトでビルドをやれば VS2017のIDEを立ち上げず ビルド&RUNができる。
(いま時間がないので後日…)
あと(3.14章 特定のFPSで動作させる方法があります)
#29の
>なを
>viewtopic.php?f=3&t=20479
>の
>#5~#8
>も参考にしてください
の方法なら1日で https://dixq.net/g/ の例がテストできるはず(^^;
またコマンドプロンプトでビルドをやれば VS2017のIDEを立ち上げず ビルド&RUNができる。
(いま時間がないので後日…)
あと(3.14章 特定のFPSで動作させる方法があります)
Re: アナログデータのリアルタイム描画
ここは元々 DXライブラリーでゲームを作っていた管理人さんの ページから派生しているのです
(***https://dixq.net/g/ ここのしたから飛んでくる)
https://dxlib.xsrv.jp/cgi/patiobbs/patio.cgi?
に元祖 DXライブラリーを開発・管理されている方の掲示板があります
かなり専門的な質問に丁寧に答えてくださいます。
いまは アンドロイド対応版 もありますよ。
https://dxlib.xsrv.jp/dxinfo.html
に
DXライブラリの主な特徴を以下に記します。
1.Windowsプログラム( Android版の場合は Androidアプリプログラム )だと意識しなくて済む
2.ライブラリの色が薄い
3.ライブラリのソースコードを公開
まず1の『Windowsプログラム( Android版の場合は Androidアプリプログラム )だと意識しなくて済む』ですが、 これは大抵の同種のライブラリでも同じだと思います。『メッセージループ』だとか、 WindowsAPI云々などとは99%無縁の環境でゲームプログラムが出来ます。 ( Android版の場合も同じく、Androidアプリ特有の『アクティビティ( Activity )』や『ビュー( View )』といったものを意識せずにプログラムを組むことができます。 )
次に2の『ライブラリの色が薄い』ですが、これは何を意味するかと いいますと… いわゆるライブラリ独自の『規則』や『法則』が少ないと いうことです。つまり、このライブラリでつちかったゲームプログラム技法は 他の開発環境に移っても通用しますし、逆を言えば他の環境で養ってきたプログラム技法も このライブラリで通用する率が高いということです。
これは重要なことで、逆に独自性が高いライブラリですと他の開発環境に移ったときに 今まで築いてきた知識が全く役に立たなかったり、そのライブラリを使おうとしたときに多くの 知識と技能を再構築しなくてはならなくなるという事態に陥ります。
3の『ライブラリのソースコードを公開』 は、今では特徴というほどでもありませんが… 見ようと思えばライブラリ内部で何が行われているか確認することができます。
ーーーーーーーーーーーーーーーーーーーーーーーーーー
と安心して使えます
https://ja.wikipedia.org/wiki/DX%E3%83% ... 9%E3%83%AA
にあるように
DirectX 11に対応している
(***https://dixq.net/g/ ここのしたから飛んでくる)
https://dxlib.xsrv.jp/cgi/patiobbs/patio.cgi?
に元祖 DXライブラリーを開発・管理されている方の掲示板があります
かなり専門的な質問に丁寧に答えてくださいます。
いまは アンドロイド対応版 もありますよ。
https://dxlib.xsrv.jp/dxinfo.html
に
DXライブラリの主な特徴を以下に記します。
1.Windowsプログラム( Android版の場合は Androidアプリプログラム )だと意識しなくて済む
2.ライブラリの色が薄い
3.ライブラリのソースコードを公開
まず1の『Windowsプログラム( Android版の場合は Androidアプリプログラム )だと意識しなくて済む』ですが、 これは大抵の同種のライブラリでも同じだと思います。『メッセージループ』だとか、 WindowsAPI云々などとは99%無縁の環境でゲームプログラムが出来ます。 ( Android版の場合も同じく、Androidアプリ特有の『アクティビティ( Activity )』や『ビュー( View )』といったものを意識せずにプログラムを組むことができます。 )
次に2の『ライブラリの色が薄い』ですが、これは何を意味するかと いいますと… いわゆるライブラリ独自の『規則』や『法則』が少ないと いうことです。つまり、このライブラリでつちかったゲームプログラム技法は 他の開発環境に移っても通用しますし、逆を言えば他の環境で養ってきたプログラム技法も このライブラリで通用する率が高いということです。
これは重要なことで、逆に独自性が高いライブラリですと他の開発環境に移ったときに 今まで築いてきた知識が全く役に立たなかったり、そのライブラリを使おうとしたときに多くの 知識と技能を再構築しなくてはならなくなるという事態に陥ります。
3の『ライブラリのソースコードを公開』 は、今では特徴というほどでもありませんが… 見ようと思えばライブラリ内部で何が行われているか確認することができます。
ーーーーーーーーーーーーーーーーーーーーーーーーーー
と安心して使えます
https://ja.wikipedia.org/wiki/DX%E3%83% ... 9%E3%83%AA
にあるように
DirectX 11に対応している
Re: アナログデータのリアルタイム描画
[参考]
必要があって
DXライブラリーを使ったプログラムをTEXTファイル形式で行えるように設定してみました。
ゲームコード.txt( 試験用コード )
実験・成功
http://www2.koyoen.birdview.co.jp/~abcx ... -02-c-.PNG
下記の #10 です
viewtopic.php?f=3&t=20540
必要があって
DXライブラリーを使ったプログラムをTEXTファイル形式で行えるように設定してみました。
ゲームコード.txt( 試験用コード )
#include "DxLib.h"
#include "Math.h"
// プログラムは WinMain から始まります
int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int)
{
int x,y;
double PI = 3.14159265358979; // 産医師異国に向こう産後厄なく産・
ChangeWindowMode( TRUE ); // ウィンドウモードに設定
if( DxLib_Init() == -1 ) // DXライブラリ初期化処理
{
return -1 ; // エラーが起きたら直ちに終了
}
for(x = 0; x < 640; x++) DrawPixel( x , 240 , GetColor( 0,0,255 ) ) ; // 点を打つ
for(y = 0; y < 480; y++) DrawPixel( 320 , y , GetColor( 0,255,0 ) ) ; // 点を打つ
for(x = 0; x < 640; x++) DrawPixel( x , 220*sin((float)x*(2.0*PI/320.0))+240 , GetColor( 0,255,255 ) ) ;
WaitKey() ; // キー入力待ち
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
http://www2.koyoen.birdview.co.jp/~abcx ... -02-c-.PNG
下記の #10 です
viewtopic.php?f=3&t=20540
Re: アナログデータのリアルタイム描画
[Windows アプリケーションから Consoleを デバッグ用などに生成する]
DXライブラリーのプログラムをコンソール・アプリケーションとして作成する方法を記したが
逆に Windows アプリケーションから Consoleを デバッグ用などに生成する方法を記す。
実行する。
http://www2.koyoen.birdview.co.jp/~abcx ... -05-c-.PNG
DXライブラリーのプログラムをコンソール・アプリケーションとして作成する方法を記したが
逆に Windows アプリケーションから Consoleを デバッグ用などに生成する方法を記す。
#include "DxLib.h"
#include "Math.h"
// プログラムは WinMain から始まります
int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int)
{
AllocConsole();
FILE* out = 0; freopen_s( &out, "CON", "w", stdout );
FILE* in = 0; freopen_s( &in, "CON", "r", stdin );
printf("Hello World!\n");
printf("%lf\n", 3.141592653589793);
int x,y;
double PI = 3.141592653589793; // 産医師異国に向こう産後厄なく産・
ChangeWindowMode( TRUE ); // ウィンドウモードに設定
if( DxLib_Init() == -1 ) // DXライブラリ初期化処理
{
return -1 ; // エラーが起きたら直ちに終了
}
for(x = 0; x < 640; x++) DrawPixel( x , 240 , GetColor( 0,0,255 ) ) ; // 点を打つ
for(y = 0; y < 480; y++) DrawPixel( 320 , y , GetColor( 0,255,0 ) ) ; // 点を打つ
printf("正弦波・・・\n");
for(x = 0; x < 640; x++) DrawPixel( x , 220*sin((float)x*(2.0*PI/320.0))+240 , GetColor( 0,255,255 ) ) ;
WaitKey() ; // キー入力待ち
DxLib_End() ; // DXライブラリ使用の終了処理
//コンソール解放
fclose( out ); fclose( in ); FreeConsole();
return 0 ; // ソフトの終了
}
http://www2.koyoen.birdview.co.jp/~abcx ... -05-c-.PNG
Re: アナログデータのリアルタイム描画
[ 分割コンパイル ]
g.mak
ゲームコード.txt
sub_02.txt
実行する。
http://www2.koyoen.birdview.co.jp/~abcx ... -07-a-.PNG
g.mak
TARGETNAME=ゲームコード
C_FLAGS=/c /TP /EHsc /D "_MBCS" /MT /Ic:\dxlib /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /W3
LINK_FLAGS=/SUBSYSTEM:WINDOWS /LIBPATH:c:\dxlib "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" "comdlg32.lib" "advapi32.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "odbc32.lib" "odbccp32.lib"
ALL:
cl $(C_FLAGS) $(TARGETNAME).txt sub_02.txt
link /out:$(TARGETNAME).exe $(LINK_FLAGS) $(TARGETNAME).obj sub_02.obj
$(TARGETNAME).exe
#include "DxLib.h"
#include "Math.h"
void sub_02( void );
// プログラムは WinMain から始まります
int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int)
{
AllocConsole();
FILE* out = 0; freopen_s( &out, "CON", "w", stdout );
FILE* in = 0; freopen_s( &in, "CON", "r", stdin );
printf("Hello World!\n");
printf("%16.15f\n", 3.141592653589793);
int x, y;
ChangeWindowMode( TRUE ); // ウィンドウモードに設定
if( DxLib_Init() == -1 ) // DXライブラリ初期化処理
{
return -1 ; // エラーが起きたら直ちに終了
}
for(x = 0; x < 640; x++) DrawPixel( x , 240 , GetColor( 0,0,255 ) ) ; // 点を打つ
for(y = 0; y < 480; y++) DrawPixel( 320 , y , GetColor( 0,255,0 ) ) ; // 点を打つ
sub_02();
WaitKey() ; // キー入力待ち
DxLib_End() ; // DXライブラリ使用の終了処理
//コンソール解放
fclose( out ); fclose( in ); FreeConsole();
return 0 ; // ソフトの終了
}
#include "DxLib.h"
#include "Math.h"
void sub_02( void )
{
double PI = 3.141592653589793; // 産医師異国に向こう産後厄なく産・
printf("正弦波・・・\n");
for(int x = 0; x < 640; x++) DrawPixel( x , 220*sin((float)x*(2.0*PI/320.0))+240 , GetColor( 0,255,255 ) ) ;
printf("余弦波・・・\n");
for(int x = 0; x < 640; x++) DrawPixel( x , 220*cos((float)x*(2.0*PI/320.0))+240 , GetColor( 0,255,255 ) ) ;
}
http://www2.koyoen.birdview.co.jp/~abcx ... -07-a-.PNG
Re: アナログデータのリアルタイム描画
[ OpenCV4 ]
msys2にて clang(クラン)ake、にて openCV4 を 導入したのですが
OpenGL, DXライブラリー と共に選択肢に入るとおもいますね。
viewtopic.php?f=3&t=20501#p152413
OpenCV 4.0.1をVisual Studio 2017から使用する時の手順
は
https://qiita.com/h-adachi/items/aad3401b8900438b2acd
msys2にて clang(クラン)ake、にて openCV4 を 導入したのですが
OpenGL, DXライブラリー と共に選択肢に入るとおもいますね。
viewtopic.php?f=3&t=20501#p152413
OpenCV 4.0.1をVisual Studio 2017から使用する時の手順
は
https://qiita.com/h-adachi/items/aad3401b8900438b2acd
Re: アナログデータのリアルタイム描画
C++Builder の話
Cpadの作者の話viewtopic.php?f=3&t=20551
「情報系の友人がC++Builderを持っているのですが、C++の入門書や、大学の授業では、コンソールプログラムがほとんどで、BCBはコンソールアプリ作成には使いにくい!と文句を言っていたのです。
BCBは優れた開発ツール(Windowアプリを作るのにはDelphiと並んで最強!)ですが、単純なコンソールプログラムの作成には正直向いていません。
当時CPadはLSI C-86にしか対応してなかったのですが、LSIC86は、基本的にDOS16ビットコンパイラであり、intが16ビットである、C++に対応してない、など今となっては仕様の古さは否めませんでした。(注:もちろん今でも、純粋なフリーのCコンパイラとして貴重な存在であると思います。)
すると、選択肢は、MicrosoftのVisual C++しかなくなってしまいます(他にもありますがメジャーなもの、ということで)。僕はDelphiを使っていたため、Inprise/Borland製品の質の高さを知っていたので、学習用途、コンソールアプリ作成のためだけにVCを買うのはもったいない、CPadをBCBと組み合わせてそういう時に使えるツールにしよう、と思っていたのです。BCBのコンソールアプリに弱い、という弱点を克服できれば、BCBユーザーも増えるし、いいことだらけだ!と。」
C++BuilderはC++で唯一のRAD だけど少し違和感があったのがこれですね。
Cpadの作者の話viewtopic.php?f=3&t=20551
「情報系の友人がC++Builderを持っているのですが、C++の入門書や、大学の授業では、コンソールプログラムがほとんどで、BCBはコンソールアプリ作成には使いにくい!と文句を言っていたのです。
BCBは優れた開発ツール(Windowアプリを作るのにはDelphiと並んで最強!)ですが、単純なコンソールプログラムの作成には正直向いていません。
当時CPadはLSI C-86にしか対応してなかったのですが、LSIC86は、基本的にDOS16ビットコンパイラであり、intが16ビットである、C++に対応してない、など今となっては仕様の古さは否めませんでした。(注:もちろん今でも、純粋なフリーのCコンパイラとして貴重な存在であると思います。)
すると、選択肢は、MicrosoftのVisual C++しかなくなってしまいます(他にもありますがメジャーなもの、ということで)。僕はDelphiを使っていたため、Inprise/Borland製品の質の高さを知っていたので、学習用途、コンソールアプリ作成のためだけにVCを買うのはもったいない、CPadをBCBと組み合わせてそういう時に使えるツールにしよう、と思っていたのです。BCBのコンソールアプリに弱い、という弱点を克服できれば、BCBユーザーも増えるし、いいことだらけだ!と。」
C++BuilderはC++で唯一のRAD だけど少し違和感があったのがこれですね。