ID3DX11Effect::Optimize-Methode
Minimieren Sie den für einen Effekt erforderlichen Arbeitsspeicher.
Syntax
HRESULT Optimize();
Parameter
Diese Methode hat keine Parameter.
Rückgabewert
Typ: HRESULT
Gibt einen der folgenden Direct3D 11-Rückgabecodes zurück.
Hinweise
Ein Effekt verwendet Arbeitsspeicher auf zwei verschiedene Arten: zum Speichern der Informationen, die von der Laufzeit zum Ausführen eines Effekts benötigt werden, und zum Speichern der Metadaten, die erforderlich sind, um Informationen mithilfe der API an eine Anwendung zurückzugeben. Sie können die für einen Effekt erforderliche Arbeitsspeichermenge minimieren, indem Sie ID3DX11Effect::Optimize aufrufen, wodurch die Reflektionsmetadaten aus dem Arbeitsspeicher entfernt werden. API-Methoden zum Lesen von Variablen funktionieren nicht mehr, nachdem Reflektionsdaten entfernt wurden.
Die folgenden Methoden schlagen fehl, nachdem Optimize für einen Effekt aufgerufen wurde.
- ID3DX11Effect::GetConstantBufferByIndex
- ID3DX11Effect::GetConstantBufferByName
- ID3DX11Effect::GetDesc
- ID3DX11Effect::GetDevice
- ID3DX11Effect::GetTechniqueByIndex
- ID3DX11Effect::GetTechniqueByName
- ID3DX11Effect::GetVariableByIndex
- ID3DX11Effect::GetVariableByName
- ID3DX11Effect::GetVariableBySemantic
Hinweis
Verweise, die mit diesen Methoden abgerufen werden, bevor SIE ID3DX11Effect::Optimize aufrufen, sind nach dem Aufruf von ID3DX11Effect::Optimize weiterhin gültig. Dadurch kann die Anwendung alle Variablen und Techniken abrufen und übergibt sie, ruft Optimize auf und verwendet dann den Effekt.
Hinweis
Das DirectX SDK stellt keine kompilierten Binärdateien für Effekte zur Verfügung. Sie müssen die Effects 11-Quelle verwenden, um ihre Effekttypanwendung zu erstellen. Weitere Informationen zur Verwendung der Quelle Effects 11 finden Sie unter Unterschiede zwischen Effekten 10 und Effekten 11.
Anforderungen
| Anforderung | Wert |
|---|---|
| Header |
|
| Bibliothek |
|