3 #if SILICONSTUDIO_PLATFORM_ANDROID
5 using SiliconStudio.Paradox.Graphics;
8 using OpenTK.Platform.Android;
12 public class AndroidParadoxGameView : AndroidGameView
14 public EventHandler<EventArgs> OnPause;
16 public AndroidParadoxGameView(Context context) : base(context)
18 RequestedBackBufferFormat = PixelFormat.R8G8B8A8_UNorm;
19 RequestedDepthStencilFormat = PixelFormat.D24_UNorm_S8_UInt;
28 public PixelFormat RequestedBackBufferFormat {
get; set; }
36 public PixelFormat RequestedDepthStencilFormat {
get; set; }
38 public override void Pause()
42 var handler = OnPause;
47 protected override void CreateFrameBuffer()
50 ContextRenderingApi = GLVersion.ES2;
52 int requestedDepth = 0;
53 int requestedStencil = 0;
54 ColorFormat requestedColorFormat = 32;
56 switch (RequestedBackBufferFormat)
58 case PixelFormat.R8G8B8A8_UNorm:
59 case PixelFormat.B8G8R8A8_UNorm:
60 requestedColorFormat = 32;
62 case PixelFormat.B8G8R8X8_UNorm:
63 requestedColorFormat = 24;
65 case PixelFormat.B5G6R5_UNorm:
66 requestedColorFormat =
new ColorFormat(5, 6, 5, 0);
68 case PixelFormat.B5G5R5A1_UNorm:
69 requestedColorFormat =
new ColorFormat(5, 5, 5, 1);
72 throw new NotSupportedException(
"RequestedBackBufferFormat");
75 switch (RequestedDepthStencilFormat)
77 case PixelFormat.D16_UNorm:
80 case PixelFormat.D24_UNorm_S8_UInt:
84 case PixelFormat.D32_Float:
87 case PixelFormat.D32_Float_S8X24_UInt:
92 throw new NotSupportedException(
"RequestedDepthStencilFormat");
97 GraphicsMode =
new GraphicsMode(requestedColorFormat, requestedDepth, requestedStencil);
98 base.CreateFrameBuffer();
107 if (requestedDepth > 16)
110 GraphicsMode =
new GraphicsMode(requestedColorFormat, requestedDepth, requestedStencil);
111 base.CreateFrameBuffer();
PixelFormat
Defines various types of pixel formats.