Cooper Partin | 88d3b8c | 2014-10-08 10:41:56 -0700 | [diff] [blame] | 1 | // |
| 2 | // Copyright (c) 2014 The ANGLE Project Authors. All rights reserved. |
| 3 | // Use of this source code is governed by a BSD-style license that can be |
| 4 | // found in the LICENSE file. |
| 5 | // |
| 6 | // angle_windowsstore.h: |
| 7 | |
| 8 | #ifndef ANGLE_WINDOWSSTORE_H_ |
| 9 | #define ANGLE_WINDOWSSTORE_H_ |
| 10 | |
| 11 | // The following properties can be set on the CoreApplication to support additional |
| 12 | // ANGLE configuration options. |
| 13 | // |
| 14 | // The Visual Studio sample templates provided with this version of ANGLE have examples |
| 15 | // of how to set these property values. |
| 16 | |
| 17 | // |
| 18 | // Property: EGLNativeWindowTypeProperty |
| 19 | // Type: IInspectable |
| 20 | // Description: Set this property to specify the window type to use for creating a surface. |
| 21 | // If this property is missing, surface creation will fail. |
| 22 | // |
| 23 | const wchar_t EGLNativeWindowTypeProperty[] = L"EGLNativeWindowTypeProperty"; |
| 24 | |
| 25 | // |
| 26 | // Property: EGLRenderSurfaceSizeProperty |
| 27 | // Type: Size |
| 28 | // Description: Set this property to specify a preferred size in pixels of the render surface. |
| 29 | // The render surface size width and height must be greater than 0. |
| 30 | // If this property is set, then the render surface size is fixed. |
Austin Kinross | da05646 | 2015-06-16 17:00:11 -0700 | [diff] [blame] | 31 | // The render surface will then be scaled to the window dimensions. |
Cooper Partin | 88d3b8c | 2014-10-08 10:41:56 -0700 | [diff] [blame] | 32 | // If this property is missing, a default behavior will be provided. |
| 33 | // The default behavior uses the window size if a CoreWindow is specified or |
| 34 | // the size of the SwapChainPanel control if one is specified. |
| 35 | // |
| 36 | const wchar_t EGLRenderSurfaceSizeProperty[] = L"EGLRenderSurfaceSizeProperty"; |
| 37 | |
Austin Kinross | da05646 | 2015-06-16 17:00:11 -0700 | [diff] [blame] | 38 | // |
| 39 | // Property: EGLRenderResolutionScaleProperty |
| 40 | // Type: Single |
| 41 | // Description: Use this to specify a preferred scale for the render surface compared to the window. |
| 42 | // For example, if the window is 800x480, and: |
| 43 | // - scale is set to 0.5f then the surface will be 400x240 |
| 44 | // - scale is set to 1.2f then the surface will be 960x576 |
| 45 | // If the window resizes or rotates then the surface will resize accordingly. |
| 46 | // EGLRenderResolutionScaleProperty and EGLRenderSurfaceSizeProperty cannot both be set. |
| 47 | // The scale factor should be > 0.0f. |
| 48 | // |
| 49 | const wchar_t EGLRenderResolutionScaleProperty[] = L"EGLRenderResolutionScaleProperty"; |
| 50 | |
Cooper Partin | 88d3b8c | 2014-10-08 10:41:56 -0700 | [diff] [blame] | 51 | #endif // ANGLE_WINDOWSSTORE_H_ |