ページ 11

ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月09日(水) 07:17
by seruvo
こんにちは。

最近はUnityやUEなど便利なゲームエンジンのおかげで開発が楽になっている印象です。

あらゆるゲームをしらべてみると、これらのゲームエンジンの名前がよく出てきていて、

現場では重宝されている印象です。

自分はプログラミングの勉強もしたいので、DirectXを勉強しようと思っています。

そこで質問なのですが、DirectXなどは低レイヤの勉強用として生かして、アプリをリリースするなどと

いった日常的に使うべきものはUnityなどである、という認識で間違いないですか?

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月09日(水) 07:47
by Math
>DirectXなどは低レイヤの勉強用として生かして、アプリをリリースするなどと

>いった日常的に使うべきものはUnityなどである、という認識で間違いないですか?

間違っています。

Unityは ”DirectXなどは低レイヤの勉強用として生かす” 事ができません。

DirectXなどは低レイヤの勉強用にはDXライブラリー を使ったアプリをリリースするなどとのが最適です。



このサイトがお勧めです。
ここ

https://dixq.net/rp2/https://dixq.net/rp2/



https://dixq.net/g/


ここで質問もできます。
viewforum.php?f=3

質問の仕方も詳しい説明がありますよ。
rules

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月10日(木) 02:57
by seruvo
Mathさん、回答感謝します。

以下想像です。

DirectXを通常のゲーム開発において生で使うのはすごくめんどくさいので、

DirectXでしかできない高度なことをやりたい
又は、
DirectXで確認しながら低レベルのことを勉強する
ときにしかDirectXを使いたくない!

なので日常的に使うのはUnityとかなのかな

と、思ったんです。

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月10日(木) 05:02
by Math
これは 笑止千万 貴方は 私の書いた 文章を読みもせず 自分勝手な 思い込みだけでしゃべっていますよ。

この この質問掲示板の 管理人さんのページを紹介したのであって もう一度#2のわたしの文章をよんで

指定のサイトを見てみること。

この 頓珍漢 野郎! ですよね(^^;  

全く 自分が何処にいるかしったら赤面するでしょうね。でも そうゆう人が多いんですよ。

>DirectXなどは低レイヤの勉強用にはDXライブラリー を使ったアプリをリリースするのが最適です。

ここを全く読んでいないですよ!

その下のサイトをあけてよく読むこと。これは厳命です!

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月10日(木) 05:19
by Math
さらに

viewtopic.php?f=3&t=20482viewtopic.php?f=3&t=20482

を参考にしてください。 (#2は意味不明なことをかかれているので読み飛ばしてください)

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月10日(木) 06:09
by Math
C++Buider は C# とは双子のような 関係で RAD のできる 唯一の C++ になっています。

VS のCLI/CLR はもうメンテナンスされてないようで C#に移行しているようです。私は VS のCLI/CLR を勉強
したのですが。

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月10日(木) 06:13
by Math
あ、失礼投稿場所をまちがえました。

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月10日(木) 06:35
by seruvo
Mathさん回答感謝します。

まず、質問をしっかりと読まず回答してしまい申し訳ありません。

回答の意図をくみ取れず、自分の質問がわかりづらいのかなと思い、質問をわかりやすく言い直したかったんです。本当にもうしわけないです。

質問の話に戻るのですが、DXライブラリでゲームを作りまくることで、ゲームプログラミングの勉強は十二分にできるということですか?

DirectXから学べることとDXライブラリから学べることの違いはあるのですか。

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月10日(木) 06:57
by Math
>質問の話に戻るのですが、DXライブラリでゲームを作りまくることで、ゲームプログラミングの勉強は十二分にできるということですか?

そうですよ

>DirectXから学べることとDXライブラリから学べることの違いはあるのですか。

ないでしょうね

***
まだ自分勝手な話をしてますよ

#5 を詳しく読んだり
管理人さんのゲームを見れば一目瞭然ではありませんか!!! (^^;

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月10日(木) 08:02
by Math
私のPCのUnity
http://www2.koyoen.birdview.co.jp/~abcx ... y-001-.PNG

Unity2018.3.0f2 です

ここのUnityの質問にも結構答えるためにUnityを使いましたが プログラム以前のオーバーヘッドが

おおきいですよ。

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月10日(木) 08:12
by Math
管理人さんのホームページです。

https://dixq.net/

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月10日(木) 13:16
by Math
これも参考に!
viewtopic.php?f=3&t=20479

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月11日(金) 04:38
by あたっしゅ
ワイは、「seruvo 氏が自分勝手な話をしている」とは、思いません。

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月11日(金) 10:59
by usao
seruvo さんが書きました:
10ヶ月前
質問の話に戻るのですが、DXライブラリでゲームを作りまくることで、ゲームプログラミングの勉強は十二分にできるということですか?

DirectXから学べることとDXライブラリから学べることの違いはあるのですか。
> ゲームプログラミングの勉強

という言葉が含む範囲次第になるのではないかと.

ライブラリ側が受け持つ領域がこの「勉強」の範囲に含まれないならば
この問いへの答えはYesになりそうだし,
逆に,ライブラリ側が受け持ってくれるがためにその使用者が意識(理解)せずに済む事柄が「勉強」の範囲に含まれるようであれば答えはNoになり得るのかも,と.

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月11日(金) 22:58
by Math
>DirectXを通常のゲーム開発において生で使うのはすごくめんどくさいので

私の過去ログの答えたものの一部を見てもその通りですね・・

viewtopic.php?f=3&t=19191&p=145338&hili ... 2A#p145338

viewtopic.php?f=3&t=18947&p=144129&hili ... 2A#p144129

viewtopic.php?f=3&t=19486&p=147349&hili ... 2A#p147349

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月11日(金) 23:20
by Math
ここの議論を よーく 読んでくださいね。 特に #11 管理人さんのところ。

viewtopic.php?f=3&t=19742&p=148641&hili ... 2A#p148641

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月11日(金) 23:33
by Math
詳しく 管理人さんの サイトを よく見てね


コードを示して DXライブラリーを詳しくは分かり易く説明してくださっているし 凄いゲームも作っておられるのですよ
管理人さんは


ここで こたえてる人でわかるのは 一握りのひとだけにみえる

くちだけで コードをしめせないひとが・・・・・

ほんとは コードが大事なんだと思います。 

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月12日(土) 00:06
by Math
時間の あるとき Direct9 と Direct11 の設定の仕方を記しておきます。 難しいのを実感してもらわないと。

あすは早いのでおやすみ!

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月13日(日) 18:01
by ISLe
オフトピック
現場がUnityを使うのは、マルチプラットフォーム対応やチームでの作業にかかる開発や学習のコスト削減、さらにプラットフォーム側のアップグレード対応の保守にかかるコストの削減など、開発費の大幅な削減を期待できることがいちばんの理由ですね。

Unityにだってバグはあります。
低レイヤに詳しければ、アプリ開発しててバグに遭遇したとき、問題がアプリ側にあるのか、Unity側なのか、あるいは相性的なものなのか、判断できます。
低レイヤに詳しいと、証拠をそろえて改善方法を提案することも可能で、迅速な対応を期待できます。

単にUnity使ってゲームを作れますっていうだけだと、現場では一生下っ端で働きますっていうのと同じです。
原因の分からないバグに遭遇したら、いつかそのうち直ってくれると期待して待つことしかできないでしょう。
掲示板等で質問しようにも、十分な状況説明ができず、ろくな回答を得られないでしょう。

DXライブラリはお手軽にゲームを作るには適しているでしょうが、それで十分な知識を得られると思いません。
低レイヤを勉強したいと言っている相手に強いるほど優れていると思いません。
DXライブラリの設計自体かなり古く、懐古主義と言われてもおかしくないくらいに思います。
低レイヤに詳しくないと、DXライブラリがDirectX11を使うようになって変化した部分に気付いたりもできず、過去に刷り込まれた情報にいつまでも縛られ続けることになるでしょう。

生でDirectXを使うのがDXライブラリを使うのよりも面倒くさい、ということを知ること自体も勉強の一環だと思います。
実際にやってみれば、それだけの話ではないことも感じ取れると思います。

DXライブラリでゲームを作るのはゲームを作る職業訓練レベルでしょう。
実際に役に立つか経たないかわからない低レイヤを学ぶことこそ『勉強』だと思います。
ですが、そこで得たものは決して無駄にならないと思います。

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月13日(日) 20:11
by Math
なるほど。アマチュアの考えと プロのみる目は違いますね。

2020年からプログラムの勉強が小学校で必須になるようですが、近所のこはもうscratch を3年生で習ったといってます。
scratch の次のステップはUnity と書かれている本もありますね。

認識を変えなくてはいけませんね。

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月14日(月) 16:56
by Math
#18の件
[DirectX9をWindows10で使う場合の設定]
Vista にも設定しているのですが Windows10でも使えました。
同じようにして設定できます。

まずVS2008インストール・ディスクからC++2008 Express をインストールします。

DirectX Software Development Kit で検索し

DirectX SDK(June 2010) をダウンロードして実行します。

表示される内容からエラーがあったように感じますが正しくインストールされています。

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月14日(月) 17:07
by Math
このようにCドライブにディレクトリができます。

http://www2.koyoen.birdview.co.jp/~abcx ... 14-11-.PNG

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月14日(月) 17:49
by Math
DirectX9のプロジェクトを作ってプロジェクトのプロパティを開く。

全ての構成を選ぶ。
C++の ”追加のインクルード・ディレクトリ" にDirect9 SDKのものを図のように追加する。

http://www2.koyoen.birdview.co.jp/~abcx ... 14-22-.PNG

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月14日(月) 17:59
by Math
同様に ”追加のライブラリー・ディレクトリ” を図のようにDirectX9のものにする。

http://www2.koyoen.birdview.co.jp/~abcx ... 14-33-.PNG

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月14日(月) 18:09
by Math

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月14日(月) 18:25
by Math

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月14日(月) 18:40
by Math
Scratch 3.0 Desktop
小学生のために作ったもの

http://www2.koyoen.birdview.co.jp/~abcx ... 14-66-.PNG

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月18日(金) 20:20
by Math
#18 の件 続き
>時間の あるとき Direct9 と Direct11 の設定の仕方を記しておきます。 難しいのを実感してもらわないと

VS2017 Community で DirectX11 DirectX12 および DirectX9を使用するには

すべてWindows10SDKに入っているためVisualStudioのインストールのみで利用できます。

「 DirectX11 」

http://www2.koyoen.birdview.co.jp/~abcx ... 18-11-.PNG

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月18日(金) 20:24
by Math

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月18日(金) 20:26
by Math

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月18日(金) 20:33
by Math

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月18日(金) 21:01
by Math
「 DirectX12について 」
機能的には11とほぼ同じですが、メモリなどのリソース管理、CPUとGPUの並列実行などすべて自分で行う必要があります。その代わり、かなり効率の良いプログラムが可能です。
グラフィックライブラリやゲームエンジンの開発者用です。通常の3Dプログラムで使用することはないと思います。DirectX11以上に情報の取得がむつかしいです。

「 DirectX11について 」
ジオメトリシェーダーなどの機能追加され、より高度で効率の良いプログラムが可能です。支援機能(フォント、画像からテクスチャ生成、シェーダーエフェクトなど)が削られているため、自分で作成するか外部のライブラリ(DirectXTKなど)を使用します。
Windows7以降、新機能に対応したGPUを搭載したPCが必要になります。
情報がほとんどありません。中上級者向けです。

「 DirectX9について 」
高度な処理や計算性能の必要としない3Dプログラムやゲームであれば十分使えます。古いAPIですが、それなりに複雑な処理が可能で、シェーダーも使えます。固定のライティング処理が用意されているためシェーダーを書かなくてもポリゴンなどを描画できます。最新の機能がなく、シェーダーの制約も多いですが、その代わり高性能PCでなくても動作します。
他のものと比べて、簡単に色々な情報が入手できます。

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年1月18日(金) 23:07
by Math
過去ログに私が答えた DirectX11,12 で CUDA C というかわった話がありましたね。

DirectX11,12 で CUDA C
viewtopic.php?f=3&t=18947&p=144116&hili ... 2A#p144116

CUDA C
viewtopic.php?f=3&t=18901

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年2月02日(土) 19:48
by Math
DXライブラリがミドルウェアとして“Nintendo Switch™”に対応しました。・・・凄い!

https://dxlib.xsrv.jp/dxswitch.html


Android版は ずっと以前に試した事があったのですが
https://dxlib.xsrv.jp/


DXライブラリを PlayStation®4 , PlayStation®Vita でも使えるし・・・
https://dxlib.xsrv.jp/dxps.html

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年2月09日(土) 13:49
by Math
[ DXライブラリー 関数の説明 とサンプル ]
ここにhttps://dxlib.xsrv.jp/dxfunc.html
DXライブラリの主な関数の説明とサンプルプログラムが載っています。

[ コマンドプロンプトで実行する ]

円の描画(アンチエイリアス効果付き) を参考にして

g.bat

コード:

nmake -f g.mak
g.mak

コード:

]
TARGETNAME=main

C_FLAGS=/c /TP /EHsc /D "_MBCS" /MT  /Ic:\dxlib /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /W3 

LINK_FLAGS=/SUBSYSTEM:CONSOLE /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
	link /out:$(TARGETNAME).exe $(LINK_FLAGS) $(TARGETNAME).obj 
	$(TARGETNAME).exe

main.txt

コード:

#include "DxLib.h"

int main()
{
    ChangeWindowMode(TRUE);    

printf("\n\nウインドウ・モードに設定しました\n\n");

    unsigned int Cr ;

    if( DxLib_Init() == -1 )        // DXライブラリ初期化処理
    {
         return -1;        // エラーが起きたら直ちに終了
    }

printf("\n\nDXライブラリ初期化処理に成功しました\n\n");

    Cr = GetColor(   0 ,   0 , 255 ) ;    // 青色の値を取得

printf("\n\n青色の値を取得\n\n");

    // 円を描画
    DrawCircleAA( 320.0f , 240.0f , 150.0f , 32 , Cr , FALSE ) ;

printf("\n\n円を描画\n\n");

printf("\n\nキーの入力待ち\n\n");

    WaitKey() ;            // キーの入力待ち(『WaitKey』を使用)

    DxLib_End() ;            // DXライブラリ使用の終了処理

    return 0 ;            // ソフトの終了
}

実行する。
http://www2.koyoen.birdview.co.jp/~abcx ... -09-a-.PNG

Re: ゲーム開発に日常的に使っているものは何ですか?

Posted: 2019年2月09日(土) 15:41
by Math
[ dxlib を バージョンアップする ]

#35
https://dxlib.xsrv.jp/dxdload.html
の 
VisualStudio用 Ver3.20a
をダウンロードし
c:\dxlib
の内容を DxLib_VC のディレクトリ  プロジェクトに追加すべきファイル_VC用 の内容
と入れ替えます。

プログラム例では
c:\プロジェクトに追加すべきファイル_VC用

c:\DxLib_VC
が多いのでわたしは
http://www2.koyoen.birdview.co.jp/~abcx ... -09-b-.PNG
としていますね。