Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Функции набора Direct3D 10 не содержат ссылку на дочерний объект устройства. Это означает, что каждое приложение должно содержать ссылку на дочерний объект устройства до тех пор, пока объект должен быть привязан к конвейеру. Когда число ссылок объекта падает до нуля, объект будет удален из конвейера и уничтожен. Этот стиль ссылочного хранения также называется слабым ссылочным удержанием, потому что каждая точка привязки конвейера содержит слабую ссылку на интерфейс или объект, привязанный к ней.
Например:
pDevice->CreateRasterizerState( ..., &pRasterizerState );
pDevice->RSSetState( pRasterizerState );
pDevice->RSGetState( &pCurRasterizerState );
// pCurRasterizerState will be equal to pRasterizerState.
pCurRasterizerState->Release();
pRasterizerState->Release();
// Following the final release, the object is unbound.
pDevice->RSGetState( &pCurRasterizerState );
// pCurRasterizerState will be equal to NULL.
Различия между Direct3D 9 и Direct3D 10:
- В Direct3D 9 функции устанавливают ссылку на объекты устройства, тогда как в Direct3D 10 функции не содержат ссылку на дочерние объекты устройства.
Связанные разделы
-
Возможности API (Direct3D 10)