[][src]Struct piston_window::PistonWindow

pub struct PistonWindow<W: Window = GlutinWindow> {
    pub window: W,
    pub encoder: GfxEncoder,
    pub device: Device,
    pub output_color: RenderTargetView<Resources, Srgba8>,
    pub output_stencil: DepthStencilView<Resources, DepthStencil>,
    pub g2d: Gfx2d<Resources>,
    pub events: Events,
    pub factory: Factory,
}

Contains everything required for controlling window, graphics, event loop.

Fields

window: W

The window.

encoder: GfxEncoder

GFX encoder.

device: Device

GFX device.

output_color: RenderTargetView<Resources, Srgba8>

Output frame buffer.

output_stencil: DepthStencilView<Resources, DepthStencil>

Output stencil buffer.

g2d: Gfx2d<Resources>

Gfx2d.

events: Events

Event loop state.

factory: Factory

The factory that was created along with the device.

Methods

impl<W> PistonWindow<W> where
    W: Window
[src]

pub fn new(opengl: OpenGL, samples: u8, window: W) -> Self where
    W: OpenGLWindow
[src]

Creates a new piston window.

pub fn draw_2d<E, F, U>(&mut self, e: &E, f: F) -> Option<U> where
    W: OpenGLWindow,
    E: GenericEvent,
    F: FnOnce(Context, &mut G2d) -> U, 
[src]

Renders 2D graphics.

Calls the closure on render events. There is no need to filter events manually, and there is no overhead.

pub fn draw_3d<E, F, U>(&mut self, e: &E, f: F) -> Option<U> where
    W: OpenGLWindow,
    E: GenericEvent,
    F: FnOnce(&mut Self) -> U, 
[src]

Renders 3D graphics.

Calls the closure on render events. There is no need to filter events manually, and there is no overhead.

pub fn next(&mut self) -> Option<Event>[src]

Returns next event. Cleans up after rendering and resizes frame buffers.

pub fn event<E: GenericEvent>(&mut self, event: &E)[src]

Let window handle new event. Cleans up after rendering and resizes frame buffers.

Trait Implementations

impl<W> BuildFromWindowSettings for PistonWindow<W> where
    W: Window + OpenGLWindow + BuildFromWindowSettings
[src]

impl<W> Window for PistonWindow<W> where
    W: Window
[src]

impl<W> AdvancedWindow for PistonWindow<W> where
    W: AdvancedWindow
[src]

fn title(self, value: String) -> Self

Sets title on window. Read more

fn exit_on_esc(self, value: bool) -> Self

Sets whether to exit when pressing the Esc button. Read more

fn automatic_close(self, value: bool) -> Self

Sets whether the window will automatically close when attempting to close it. If this is disabled, attempts to close the window can be detected via an Input::Close(..) event, and Window::set_should_close() can be called to actually close the window. Read more

fn capture_cursor(self, value: bool) -> Self

Sets whether to capture/grab the cursor. Read more

fn position<P>(self, val: P) -> Self where
    P: Into<Position>, 

Sets the position of window. Read more

impl<W> EventLoop for PistonWindow<W> where
    W: Window
[src]

fn set_ups(&mut self, frames: u64)

The number of updates per second Read more

fn ups(self, frames: u64) -> Self

The number of updates per second Read more

fn set_ups_reset(&mut self, frames: u64)

The number of delayed updates before skipping them to catch up. When set to 0, it will always try to catch up. Read more

fn ups_reset(self, frames: u64) -> Self

The number of delayed updates before skipping them to catch up. When set to 0, it will always try to catch up. Read more

fn set_max_fps(&mut self, frames: u64)

The maximum number of frames per second Read more

fn max_fps(self, frames: u64) -> Self

The maximum number of frames per second Read more

fn set_swap_buffers(&mut self, enable: bool)

Enable or disable automatic swapping of buffers.

fn swap_buffers(self, enable: bool) -> Self

Enable or disable automatic swapping of buffers.

fn set_bench_mode(&mut self, enable: bool)

Enable or disable benchmark mode. When enabled, it will render and update without sleep and ignore input. Used to test performance by playing through as fast as possible. Requires lazy to be set to false. Read more

fn bench_mode(self, enable: bool) -> Self

Enable or disable benchmark mode. When enabled, it will render and update without sleep and ignore input. Used to test performance by playing through as fast as possible. Requires lazy to be set to false. Read more

fn set_lazy(&mut self, enable: bool)

Enable or disable rendering only when receiving input. When enabled, update events are disabled. Idle events are emitted while receiving input. Read more

fn lazy(self, enable: bool) -> Self

Enable or disable rendering only when receiving input. When enabled, update events are disabled. Idle events are emitted while receiving input. Read more

Auto Trait Implementations

impl<W = GlutinWindow> !Send for PistonWindow<W>

impl<W = GlutinWindow> !Sync for PistonWindow<W>

Blanket Implementations

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> SetParameter for T

fn set<T>(&mut self, value: T) -> <T as Parameter<Self>>::Result where
    T: Parameter<Self>, 

Sets value as a parameter of self.

impl<T> Erased for T