예제 #1
0
        private RendererInfo(int index, SDL_RendererInfo info)
        {
            Index            = index;
            Name             = Util.FromNullTerminated(info.name);
            MaxTextureWidth  = info.max_texture_width;
            MaxTextureHeight = info.max_texture_height;
            var flags = info.flags;

            IsHardwareAccelerated      = flags.HasFlag(SDL_RendererFlags.SDL_RENDERER_ACCELERATED);
            SupportsRenderingToTexture = flags.HasFlag(SDL_RendererFlags.SDL_RENDERER_TARGETTEXTURE);
            SupportsVSync = flags.HasFlag(SDL_RendererFlags.SDL_RENDERER_PRESENTVSYNC);

            var formats = new List <PixelFormat>((int)info.num_texture_formats);

            for (int i = 0; i < info.num_texture_formats; i++)
            {
                unsafe {
                    var format = *(info.texture_formats + i);
                    formats.Add((PixelFormat)format);
                }
            }
            PixelFormats = formats;
        }
예제 #2
0
 public static int SDL_GetRenderDriverInfo(int index, out SDL_RendererInfo info) => s_SDL_GetRenderDriverInfo_int_IntPtr_t(index, out info);
예제 #3
0
 internal RendererInfo(SDL_RendererInfo info)
 {
     this.info    = info;
     this.Formats = new RendererInfoFormats(this);
 }
예제 #4
0
 public static int SDL_GetRendererInfo(IntPtr renderer, ref SDL_RendererInfo info) => s_SDL_GetRendererInfo_IntPtr_IntPtr_t(renderer, ref info);
예제 #5
0
파일: SDL2.cs 프로젝트: pakoito/SDL2-CS
		public static extern int SDL_GetRendererInfo(
			IntPtr renderer,
			ref SDL_RendererInfo info
		);
예제 #6
0
파일: SDL2.cs 프로젝트: pakoito/SDL2-CS
		public static extern int SDL_GetRenderDriverInfo(
			int index,
			ref SDL_RendererInfo info
		);
예제 #7
0
파일: Render.cs 프로젝트: plunch/sdlsharp
 public static extern int SDL_GetRendererInfo(
     Renderer renderer,
     out SDL_RendererInfo info
     );
예제 #8
0
파일: Render.cs 프로젝트: plunch/sdlsharp
 public static extern int SDL_GetRenderDriverInfo(
     int index,
     out SDL_RendererInfo info
     );