07/09/18 01:01:21
>>121
一応まとめてみたんで貼る。なんかもう解決しちゃってるぽいんで無視してくれ。
例のBBXのMasaの投稿を読み直してみたけど、彼は別に間違ったことは言っていない。
彼が言っているのは、あくまで「リソースを再作成する必要が生じるタイミング」が二種類ある、
ってことだけ。つまり、
1) デバイスがロストした時
2) プログラマが意図的にデバイスを開放した時
だと言っている。
問題なのは、この記述を「ロストが二種類ある」と誤って解釈してしまっている一部のスレ住人だ。
何故か、上の1)2)を「リソースのロスト」と「デバイスのロスト」などと区別してしまっているようだ。
DirectXのヘルプで書かれている「デバイス消失時の~」ってのは要するに 1) の状態のことだ。
2) の状態のことを、ロストだとか消失だとか普通は言わない。
さらに混乱の元となっているのは、上のBBXのスレッドが、DirectXのサンプルフレームワークを
前提にした議論になってること。
本来ならプログラマが明示的にデバイスを開放しない限り 2) は起こりえないのだが、
サンプルフレームワークではHAL→HELの切り替えなどのタイミングでこれを内部で自動的に
行っているらしく、一部の住人がこれを
「もう一つのロスト状態」だとか「デバイスの指す先は勝手に変わることがあるよな?」
などと勘違いしている、という訳だ。