[][src]Crate glutin

The purpose of this library is to provide an OpenGL Context on as many platforms as possible.

Building a WindowedContext<T>

A WindowedContext<T> is composed of a Window and an OpenGL Context.

Due to some operating-system-specific quirks, glutin prefers control over the order of creation of the Context and Window. Here is an example of building a WindowedContext<T>:

let el = glutin::event_loop::EventLoop::new();
let wb = glutin::window::WindowBuilder::new()
    .with_title("Hello world!")
    .with_inner_size(glutin::dpi::LogicalSize::new(1024.0, 768.0));
let windowed_context = glutin::ContextBuilder::new()
    .build_windowed(wb, &el)
    .unwrap();

You can, of course, create a RawContext<T> separately from an existing window, however that may result in an suboptimal configuration of the window on some platforms. In that case use the unsafe platform-specific RawContextExt available on unix operating systems and Windows.

You can also produce headless Contexts via the ContextBuilder::build_headless function.

Modules

dpi

UI scaling is important, so read the docs for this module if you don't want to be confused.

error
event

The Event enum and assorted supporting types.

event_loop

The EventLoop struct and assorted supporting types, including ControlFlow.

monitor

Types useful for interacting with a user's monitors.

platform

Contains traits with platform-specific methods in them.

platform

Contains traits with platform-specific methods in them.

window

The Window struct and associated types.

Structs

Context

Represents an OpenGL Context.

ContextBuilder

An object that allows you to build Contexts, RawContext<T>s and WindowedContext<T>s.

ContextWrapper

A context which has an underlying window, which may or may not be stored separately.

GlAttributes

Attributes to use when creating an OpenGL Context.

PixelFormat

Describes a possible format.

PixelFormatRequirements

Describes how the backend should choose a pixel format.

PossiblyCurrent

A type that Contexts which might possibly be currently current on some thread take as a generic.

Rect

Enums

Api

All APIs related to OpenGL that you can possibly get while using glutin.

ContextError

Error that can happen when manipulating an OpenGL Context.

CreationError

Error that can happen while creating a window or a headless renderer.

GlProfile

Describes the requested OpenGL Context profiles.

GlRequest

Describes the OpenGL API and version that are being requested when a context is created.

NotCurrent

A type that Contexts which are not currently current on any thread take as a generic.

ReleaseBehavior

The behavior of the driver when you change the current context.

Robustness

Specifies the tolerance of the OpenGL Context to faults. If you accept raw OpenGL commands and/or raw shader code from an untrusted source, you should definitely care about this.

Statics

GL_CORE

The minimum core profile GL context. Useful for getting the minimum required GL version while still running on OSX, which often forbids the compatibility profile features.

Traits

ContextCurrentState

A trait implemented on both NotCurrent and PossiblyCurrent.

Type Definitions

RawContext

Represents an OpenGL Context which has an underlying window that is stored separately.

WindowedContext

Represents an OpenGL Context and the Window with which it is associated.