Reach Profil
Aus indiedev
Microsoft hat mit XNA 4.0 die sogenannten Profile eingeführt. Diese sind vergleichbar mit den Feature Levels von DirectX.
XNA 4.0 unterstützt aktuell zwei Profile:
- Reach
- HiDef
Das Reach Profile wird vom Windows Phone und älteren PCs unterstützt und das HiDef Profil von der XBox und modernen PCs. Alle HiDef-Geräte schließen eine vollständige Unterstützung des Reach Profils ein, da dies eine Untermenge darstellt.
Die folgende Tabelle stellt die Unterschiede im Detail dar:
| Reach | HiDef | |
|---|---|---|
| Unterstützte Plattformen | Windows Phone 7, XBox 360, Windows PC mit DirectX 9 GPU und Shader Model 2.0 oder neuer | XBox 360, Windows PC mit DirectX 10 (oder Feature kompatibler) GPU |
| Shader Model | 2.0 (Windows Phone unterstützt keine Custom Shader) | 3.0 (XBox 360 mit zusätzlichen Instruktionen wie vfetch) |
| max. Texturgröße | 2048 x 2048 | 4096 x 4096 |
| max. Cubemap-Größe | 512^3 | 4096^3 |
| max. Volumen-Textur-Größe | n/a | 256 |
| Power of Two Texturen notwendig | Ja | Nein |
| Power of Two Cubemaps notwendig | Ja | Nein |
| Power of Two Volumen-Texturen notwendig | n/a | Ja |
| max. Anzahl Primitive je Draw Call | 65535 | 1048575 |
| Index Buffer Formate | 16 Bit | 16 und 32 Bit |
| Vertex Element Formate | Color, Byte4, Single, Vector2, Vector3, Vector4, Short2, Short4, NormalizedShort2, NormalizedShort4 | Color, Byte4, Single, Vector2, Vector3, Vector4, Short2, Short4, NormalizedShort2, NormalizedShort4, HalfVector2, HalfVector4 |
| Texture Formate | Color, Bgr565, Bgra5551, Bgra4444, NormalizedByte2, NormalizedByte4, Dxt1, Dxt3, Dxt5 | Color, Bgr565, Bgra5551, Bgra4444, NormalizedByte2, NormalizedByte4, Dxt1, Dxt3, Dxt5, Alpha8, Rg32, Rgba64, Rgba1010102, Single, Vector2, Vector4, HalfSingle, HalfVector2, HalfVector4. (* Floating Point Texturen ohne Filterung) |
| Vertex Texture Formate | n/a | Single, Vector2, Vector4, HalfSingle, HalfVector2, HalfVector4 |
| Anzahl Multi Render Targets | n/a | 4 (gleiche Bittiefe) |
| Occlusion Queries | n/a | Ja |
| Separates Alpha Blending je Render Target | Nein | Ja |
| Blend.SourceAlphaSaturation | nur für SourceBlend | Ja |
| max. Vertex Streams | 16 | 16 |
| max. Stream Stride | 255 | 255 |