堕天使の煉獄
2022-05
23
07:14:27
情報なさすぎ
いろいろと再開するにあたって、今となってはもう古くて刷新しないといけないものがいくつか。
まず……ゲーム、それも2Dならべつに32bitアプリでも全然問題ないよね。
なんて思ってたけど、今の流れだと、そろそろ32bitアプリそろそろ切り捨てる気運が高まってきてたりするぽ。
新しもの好きなアップルさんなんか、もう新しい機種だと32bitアプリ動かなくなってるみたいだし。
MSも32bitOSはwin10からもうサポートしないって言ってるしな。
なので、DXライブラリつかったアプリのビルドも64bitに移行するべき時かなと。
QTでのツール開発はもう随分前から64bitに移行してるしね。
そしてもうひとつ。
DXライブラリは基本2Dに強くて、3Dは本格的にやるのは貧弱過ぎて無理ってかんじなのだけども。
んで、対応してるのが今はDirectX9と11。
2D限定なら実際のところDX9でも全然問題ないのだけども、もうサポート終了してるwin7あたりでもう、DX11は入ってる前提な感じになってるので、DX9にとどまり続けるのも将来的にどうなん?
てのと、もうデフォルトでDX11が使われるように最近のverではなってたりもするし。
ただ、問題が一つ。
DX9用のシェーダーがDX11ではそのまま使えないんですよね。
シェーダー使ってなければ特になんにもしないで移行できるのですが。
主にシェーダーはピクセルシェーダーつかって、モザイクとか波立たせたりとか、ピクセル単位でなんやかんやするエフェクトで使ってたりする。
このへんCPUでやると、昨今のCPUでも重かったりするので。
んで、そのうちDX11用にシェーダー書き直さないとなーと思ってはいたのですが。
もう何年も前だけどw
そんでその辺なにか情報増えてるかなーと調べてみたら、昔見た記事が最後の情報で、ほとんど新しい情報は無し。
DXライブラリの方も、相変わらず一応使えるけど仕様変更あるかもなので仕様は非公開って状態のまま。
んーこのへんちょっと時代に取り残されてる感際立ってきちゃったなぁ。
まあ基本的には面倒なDirectXの初期化周りやってくれるだけで十分だと割り切れば、全然気にするところではないのだけども。
でも定数バッファが~とかいわれてもさっぱりわからん(ぉ
やりたいのはピクセルシェーダーのみなので、そこだけ触りたいのだけども、サンプルとかは頂点シェーダとかとセットだったりして、いろいろとわけわからんことにw
あと、具体的にシェーダーコードかくにあたって、具体的に何が変わったとかいうのがわかる情報とか全然見つけられないし。
とりあえずいろいろ試してみたところ、灰色の四角しか表示されない……とかでしばらく足踏みw
なのでいろいろと覚書。
まず嵌ったのが、シェーダーのコンパイル時のオプション。
DX9だとシェーダモデル2.0とかつかってたんだけど、DX11は5.0~なのね。
なので、2.0でコンパイルしたシェーダーだと出力にピクセルシェーダの作成に失敗しました~とかでてたりして、そりゃ動かんわとw
ShaderCompiler.exe /Tps_2_0 xxxx.fx
から
ShaderCompiler.exe /Tps_5_0 xxxx.fx
に変更。
あと、書き方的にも、使えなくなってるのあるのね。
psout.Output = tex2D( sampler0, uv ) ;
のtex2Dていう関数がDX11では廃止されてるぽ。
じゃあどう書けば良いのよってのでも、何をどう調べたものかと。
何がわからないのかさえわからない手探りレベルだらなぁ……。
そんな感じでようやっと動くものに。
左がDX9で右の方がDX11用。
ハッキリ言って、何がどうとか、まったくよくわかってませんw
なんとなく、変数よりも構造体とかオブジェクト思考な感じになってるっぽい?
シェーダーにわたす変数なんかも構造体で、かつ4の倍数でアライメントてるとか、なんか速度的に理由とかあったりするんだろうけど、そういう基本的な情報すらないところからだといろいろと分からなすぎる~。
なんとかモザイクシェーダー動いた~
細かいのから大きなモザイクになってく感じのトランジション用のシェーダーコードの実行テスト結果。
そんな感じで、64bit移行、DX11移行できそう。
んでもDX9とDX11は実行中に切り替えるとかは無理そうっぽいね。
対応してればDX11、対応してない古い環境ならDX9と起動時に決め打ちな感じしかできなさそう。
まあ、いまどきDX11対応してない古いPCも少ないんだろうけどさ……。
……一個前のPCはDX11対応してなかったけどねw
xpのころからwin7に載せ替えて使ってた古いPCだったからなぁ。
おかげでサガフロリマスターがDX11以降だったので出来なかったしw
そんな感じで、時代とともにいろいろと対応していかないと行けない部分に一苦労。
ていうかVisualStudioさんよぅ。
相変わらず要る機能ばっか削ってくれるよな。設定メニューのVCディレクトリ無くなった次は、デフォルトで読み込まれるプロジェクト設定のテンプレ
Microsoft.Cpp.Win32.user.propsを編集すれば、VCディレクトリとかの設定全部新規プロジェクト作るときに適応済みとかできたのに、コレも消しやがったのな……。
どうやっても新規プロジェクト作るたびにちまちま設定させたいんだろうか……。
今度はプロパティマネージャでごちゃごちゃやればできるみたいなんだけど、触ってみるとなんかいろいろと動作がおかしい。
あと新規プロジェクト作るたびに「既存のプロパティシートの読み込み」とかひと手間いるし……。
なんかネットワークビルドとか仮想環境のビルドとかなんかそういうののからみで、デフォルトで読み込まれる設定適応されると困るみたいな事情らしいんだけど。
ただただ面倒で迂遠なだけ感が。
このへんもうちょっとスッキリさせてほしいところなんだけど、現状新しいverになるたびにどんどん使いにくくなってる部分なんだよな……。
勘弁してください……。
でもc++23の対応とかはかなり早くてそっちはすごく頑張ってる感が。
昔のc++11あたりの頃は、かなり対応遅い方でイライラさせられたものだけど。
そんなかんじで、環境づくりと旧体制からの移行で半日つぶれますた。
そいや昨日の晩、雷鳴ってたなぁ。
そろそろ梅雨が近いかんじなのかな。
はふ~
まず……ゲーム、それも2Dならべつに32bitアプリでも全然問題ないよね。
なんて思ってたけど、今の流れだと、そろそろ32bitアプリそろそろ切り捨てる気運が高まってきてたりするぽ。
新しもの好きなアップルさんなんか、もう新しい機種だと32bitアプリ動かなくなってるみたいだし。
MSも32bitOSはwin10からもうサポートしないって言ってるしな。
なので、DXライブラリつかったアプリのビルドも64bitに移行するべき時かなと。
QTでのツール開発はもう随分前から64bitに移行してるしね。
そしてもうひとつ。
DXライブラリは基本2Dに強くて、3Dは本格的にやるのは貧弱過ぎて無理ってかんじなのだけども。
んで、対応してるのが今はDirectX9と11。
2D限定なら実際のところDX9でも全然問題ないのだけども、もうサポート終了してるwin7あたりでもう、DX11は入ってる前提な感じになってるので、DX9にとどまり続けるのも将来的にどうなん?
てのと、もうデフォルトでDX11が使われるように最近のverではなってたりもするし。
ただ、問題が一つ。
DX9用のシェーダーがDX11ではそのまま使えないんですよね。
シェーダー使ってなければ特になんにもしないで移行できるのですが。
主にシェーダーはピクセルシェーダーつかって、モザイクとか波立たせたりとか、ピクセル単位でなんやかんやするエフェクトで使ってたりする。
このへんCPUでやると、昨今のCPUでも重かったりするので。
んで、そのうちDX11用にシェーダー書き直さないとなーと思ってはいたのですが。
もう何年も前だけどw
そんでその辺なにか情報増えてるかなーと調べてみたら、昔見た記事が最後の情報で、ほとんど新しい情報は無し。
DXライブラリの方も、相変わらず一応使えるけど仕様変更あるかもなので仕様は非公開って状態のまま。
んーこのへんちょっと時代に取り残されてる感際立ってきちゃったなぁ。
まあ基本的には面倒なDirectXの初期化周りやってくれるだけで十分だと割り切れば、全然気にするところではないのだけども。
でも定数バッファが~とかいわれてもさっぱりわからん(ぉ
やりたいのはピクセルシェーダーのみなので、そこだけ触りたいのだけども、サンプルとかは頂点シェーダとかとセットだったりして、いろいろとわけわからんことにw
あと、具体的にシェーダーコードかくにあたって、具体的に何が変わったとかいうのがわかる情報とか全然見つけられないし。
とりあえずいろいろ試してみたところ、灰色の四角しか表示されない……とかでしばらく足踏みw
なのでいろいろと覚書。
まず嵌ったのが、シェーダーのコンパイル時のオプション。
DX9だとシェーダモデル2.0とかつかってたんだけど、DX11は5.0~なのね。
なので、2.0でコンパイルしたシェーダーだと出力にピクセルシェーダの作成に失敗しました~とかでてたりして、そりゃ動かんわとw
ShaderCompiler.exe /Tps_2_0 xxxx.fx
から
ShaderCompiler.exe /Tps_5_0 xxxx.fx
に変更。
あと、書き方的にも、使えなくなってるのあるのね。
psout.Output = tex2D( sampler0, uv ) ;
のtex2Dていう関数がDX11では廃止されてるぽ。
じゃあどう書けば良いのよってのでも、何をどう調べたものかと。
何がわからないのかさえわからない手探りレベルだらなぁ……。
そんな感じでようやっと動くものに。
左がDX9で右の方がDX11用。
ハッキリ言って、何がどうとか、まったくよくわかってませんw
なんとなく、変数よりも構造体とかオブジェクト思考な感じになってるっぽい?
シェーダーにわたす変数なんかも構造体で、かつ4の倍数でアライメントてるとか、なんか速度的に理由とかあったりするんだろうけど、そういう基本的な情報すらないところからだといろいろと分からなすぎる~。
なんとかモザイクシェーダー動いた~
細かいのから大きなモザイクになってく感じのトランジション用のシェーダーコードの実行テスト結果。
そんな感じで、64bit移行、DX11移行できそう。
んでもDX9とDX11は実行中に切り替えるとかは無理そうっぽいね。
対応してればDX11、対応してない古い環境ならDX9と起動時に決め打ちな感じしかできなさそう。
まあ、いまどきDX11対応してない古いPCも少ないんだろうけどさ……。
……一個前のPCはDX11対応してなかったけどねw
xpのころからwin7に載せ替えて使ってた古いPCだったからなぁ。
おかげでサガフロリマスターがDX11以降だったので出来なかったしw
そんな感じで、時代とともにいろいろと対応していかないと行けない部分に一苦労。
ていうかVisualStudioさんよぅ。
相変わらず要る機能ばっか削ってくれるよな。設定メニューのVCディレクトリ無くなった次は、デフォルトで読み込まれるプロジェクト設定のテンプレ
Microsoft.Cpp.Win32.user.propsを編集すれば、VCディレクトリとかの設定全部新規プロジェクト作るときに適応済みとかできたのに、コレも消しやがったのな……。
どうやっても新規プロジェクト作るたびにちまちま設定させたいんだろうか……。
今度はプロパティマネージャでごちゃごちゃやればできるみたいなんだけど、触ってみるとなんかいろいろと動作がおかしい。
あと新規プロジェクト作るたびに「既存のプロパティシートの読み込み」とかひと手間いるし……。
なんかネットワークビルドとか仮想環境のビルドとかなんかそういうののからみで、デフォルトで読み込まれる設定適応されると困るみたいな事情らしいんだけど。
ただただ面倒で迂遠なだけ感が。
このへんもうちょっとスッキリさせてほしいところなんだけど、現状新しいverになるたびにどんどん使いにくくなってる部分なんだよな……。
勘弁してください……。
でもc++23の対応とかはかなり早くてそっちはすごく頑張ってる感が。
昔のc++11あたりの頃は、かなり対応遅い方でイライラさせられたものだけど。
そんなかんじで、環境づくりと旧体制からの移行で半日つぶれますた。
そいや昨日の晩、雷鳴ってたなぁ。
そろそろ梅雨が近いかんじなのかな。
はふ~
Sun
Mon
Tue
Wed
Thu
Fri
Sat
01
02
03
[憲法記念日]
04
■
■
レベルデザインという言葉
[みどりの日]
[みどりの日]
05
[こどもの日]
06
07
08
09
10
11
■
■
なんか寒くね
12
13
14
15
16
17
18
19
20
21
22
23
■
■
情報なさすぎ
24
25
26
27
28
29
30
31
total:2080375 t:2745 y:180
■記事タイトル■
■年度別リスト■
2024年
2024年12月(0)2024年11月(0)
2024年10月(1)
2024年09月(2)
2024年08月(1)
2024年07月(1)
2024年06月(5)
2024年05月(2)
2024年04月(1)
2024年03月(6)
2024年02月(4)
2024年01月(3)
2023年
2023年12月(3)2023年11月(1)
2023年10月(2)
2023年09月(3)
2023年08月(3)
2023年07月(3)
2023年06月(7)
2023年05月(8)
2023年04月(2)
2023年03月(1)
2023年02月(2)
2023年01月(3)
2022年
2022年12月(4)2022年11月(3)
2022年10月(1)
2022年09月(3)
2022年08月(3)
2022年07月(2)
2022年06月(1)
2022年05月(3)
2022年04月(2)
2022年03月(2)
2022年02月(1)
2022年01月(6)
2021年
2021年12月(8)2021年11月(3)
2021年10月(4)
2021年09月(6)
2021年08月(2)
2021年07月(1)
2021年06月(3)
2021年05月(2)
2021年04月(2)
2021年03月(3)
2021年02月(1)
2021年01月(4)
2020年
2020年12月(3)2020年11月(7)
2020年10月(2)
2020年09月(3)
2020年08月(1)
2020年07月(3)
2020年06月(7)
2020年05月(5)
2020年04月(8)
2020年03月(4)
2020年02月(2)
2020年01月(4)
2019年
2019年12月(1)2019年11月(1)
2019年10月(2)
2019年09月(1)
2019年08月(3)
2019年07月(2)
2019年06月(2)
2019年05月(2)
2019年04月(4)
2019年03月(1)
2019年02月(7)
2019年01月(1)
2018年
2018年12月(1)2018年11月(1)
2018年10月(5)
2018年09月(1)
2018年08月(5)
2018年07月(1)
2018年06月(1)
2018年05月(1)
2018年04月(2)
2018年03月(2)
2018年02月(1)
2018年01月(1)
2017年
2017年12月(2)2017年11月(1)
2017年10月(2)
2017年09月(5)
2017年08月(8)
2017年07月(2)
2017年06月(1)
2017年05月(1)
2017年04月(3)
2017年03月(5)
2017年02月(7)
2017年01月(8)
2016年
2016年12月(7)2016年11月(2)
2016年10月(3)
2016年09月(7)
2016年08月(8)
2016年07月(10)
2016年06月(17)
2016年05月(6)
2016年04月(8)
2016年03月(10)
2016年02月(5)
2016年01月(10)
2015年
2015年12月(7)2015年11月(7)
2015年10月(13)
2015年09月(7)
2015年08月(7)
2015年07月(5)
2015年06月(4)
2015年05月(5)
2015年04月(2)
2015年03月(4)
2015年02月(1)
2015年01月(7)
2014年
2014年12月(12)2014年11月(8)
2014年10月(4)
2014年09月(6)
2014年08月(7)
2014年07月(4)
2014年06月(2)
2014年05月(5)
2014年04月(4)
2014年03月(8)
2014年02月(4)
2014年01月(8)
2013年
2013年12月(15)2013年11月(8)
2013年10月(3)
2013年09月(3)
2013年08月(8)
2013年07月(0)
2013年06月(0)
2013年05月(0)
2013年04月(0)
2013年03月(0)
2013年02月(0)
2013年01月(0)
■レス履歴■
■ファイル抽出■
■ワード検索■
堕天使の煉獄
https://rengoku.sakura.ne.jp
管理人
織田霧さくら(oda-x)
E-mail (■を@に)
oda-x■rengoku.sakura.ne.jp