Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Getting Started with fullscreen crashes on macOS Big Sur 11.1 #1366

Open
anatawa12 opened this issue Jan 18, 2021 · 2 comments
Open

Getting Started with fullscreen crashes on macOS Big Sur 11.1 #1366

anatawa12 opened this issue Jan 18, 2021 · 2 comments

Comments

@anatawa12
Copy link

I've just added the line .fullscreen(true) from Getting Started Spinning Square.

But it shows a fullscreen white window and the app was crashed when launches this or clicks the window.

All tools and libraries are the latest releases at this issue creation.

  • platform: macOS BigSur version 11.1
  • rustc 1.49.0 (e1884a8e3 2020-12-29)
  • cargo 1.49.0 (d00d64df9 2020-12-05)
  • piston = "0.52.1"
  • piston2d-graphics = "0.39.0"
  • pistoncore-glutin_window = "0.68.0"
  • piston2d-opengl_graphics = "0.77.0"
main.rs
extern crate glutin_window;
extern crate graphics;
extern crate opengl_graphics;
extern crate piston;

use glutin_window::GlutinWindow as Window;
use opengl_graphics::{GlGraphics, OpenGL};
use piston::event_loop::{EventSettings, Events};
use piston::input::{RenderArgs, RenderEvent, UpdateArgs, UpdateEvent};
use piston::window::WindowSettings;

pub struct App {
    gl: GlGraphics, // OpenGL drawing backend.
    rotation: f64,  // Rotation for the square.
}

impl App {
    fn render(&mut self, args: &RenderArgs) {
        use graphics::*;

        const GREEN: [f32; 4] = [0.0, 1.0, 0.0, 1.0];
        const RED: [f32; 4] = [1.0, 0.0, 0.0, 1.0];

        let square = rectangle::square(0.0, 0.0, 50.0);
        let rotation = self.rotation;
        let (x, y) = (args.window_size[0] / 2.0, args.window_size[1] / 2.0);

        self.gl.draw(args.viewport(), |c, gl| {
            // Clear the screen.
            clear(GREEN, gl);

            let transform = c
                .transform
                .trans(x, y)
                .rot_rad(rotation)
                .trans(-25.0, -25.0);

            // Draw a box rotating around the middle of the screen.
            rectangle(RED, square, transform, gl);
        });
    }

    fn update(&mut self, args: &UpdateArgs) {
        // Rotate 2 radians per second.
        self.rotation += 2.0 * args.dt;
    }
}

fn main() {
    // Change this to OpenGL::V2_1 if not working.
    let opengl = OpenGL::V3_2;

    // Create an Glutin window.
    let mut window: Window = WindowSettings::new("spinning-square", [200, 200])
        .fullscreen(true) // just added here
        .graphics_api(opengl)
        .exit_on_esc(true)
        // tried here too but same error
        .build()
        .unwrap();

    // Create a new game and run it.
    let mut app = App {
        gl: GlGraphics::new(opengl),
        rotation: 0.0,
    };

    let mut events = Events::new(EventSettings::new());
    while let Some(e) = events.next(&mut window) {
        if let Some(args) = e.render_args() {
            app.render(&args);
        }

        if let Some(args) = e.update_args() {
            app.update(&args);
        }
    }
}
console output
/Users/anatawa12/.cargo/bin/cargo run --color=always --package photo-frame-rs --bin photo-frame-rs
    Finished dev [unoptimized + debuginfo] target(s) in 0.36s
     Running `target/debug/photo-frame-rs`
thread 'main' panicked at 'assertion failed: `(left != right)`
  left: `0x0`,
 right: `0x0`', /Users/anatawa12/.cargo/registry/src/github.com-1ecc6299db9ec823/winit-0.24.0/src/platform_impl/macos/app.rs:106:13
stack backtrace:
   0: rust_begin_unwind
             at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/panicking.rs:495:5
   1: std::panicking::begin_panic_fmt
             at /rustc/e1884a8e3c3e813aada8254edfa120e85bf5ffca/library/std/src/panicking.rs:437:5
   2: winit::platform_impl::platform::app::maybe_dispatch_device_event
             at /Users/anatawa12/.cargo/registry/src/github.com-1ecc6299db9ec823/winit-0.24.0/src/platform_impl/macos/app.rs:106:13
   3: winit::platform_impl::platform::app::send_event
             at /Users/anatawa12/.cargo/registry/src/github.com-1ecc6299db9ec823/winit-0.24.0/src/platform_impl/macos/app.rs:52:13
   4: <unknown>
   5: <unknown>
   6: <() as objc::message::MessageArguments>::invoke
             at /Users/anatawa12/.cargo/registry/src/github.com-1ecc6299db9ec823/objc-0.2.7/src/message/mod.rs:128:17
   7: objc::message::platform::send_unverified
             at /Users/anatawa12/.cargo/registry/src/github.com-1ecc6299db9ec823/objc-0.2.7/src/message/apple/mod.rs:27:9
   8: objc::message::send_message
             at /Users/anatawa12/.cargo/registry/src/github.com-1ecc6299db9ec823/objc-0.2.7/src/message/mod.rs:178:5
   9: winit::platform_impl::platform::event_loop::EventLoop<T>::run_return
             at /Users/anatawa12/.cargo/registry/src/github.com-1ecc6299db9ec823/winit-0.24.0/src/platform_impl/macos/event_loop.rs:106:25
  10: <winit::event_loop::EventLoop<T> as winit::platform::run_return::EventLoopExtRunReturn>::run_return
             at /Users/anatawa12/.cargo/registry/src/github.com-1ecc6299db9ec823/winit-0.24.0/src/platform/run_return.rs:56:9
  11: glutin_window::GlutinWindow::poll_events
             at /Users/anatawa12/.cargo/registry/src/github.com-1ecc6299db9ec823/pistoncore-glutin_window-0.68.0/src/lib.rs:271:9
  12: glutin_window::GlutinWindow::poll_event
             at /Users/anatawa12/.cargo/registry/src/github.com-1ecc6299db9ec823/pistoncore-glutin_window-0.68.0/src/lib.rs:237:17
  13: <glutin_window::GlutinWindow as window::Window>::poll_event
             at /Users/anatawa12/.cargo/registry/src/github.com-1ecc6299db9ec823/pistoncore-glutin_window-0.68.0/src/lib.rs:509:49
  14: event_loop::Events::next
             at /Users/anatawa12/.cargo/registry/src/github.com-1ecc6299db9ec823/pistoncore-event_loop-0.52.0/src/lib.rs:253:38
  15: photo_frame_rs::main
             at ./src/main.rs:68:25
  16: core::ops::function::FnOnce::call_once
             at /Users/anatawa12/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/src/rust/library/core/src/ops/function.rs:227:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

Process finished with exit code 101
@max298
Copy link

max298 commented Nov 1, 2021

I'm having the exact same problem, currently running macOS 12.0.1 21A559 arm64, regardless of using my intel or arm macbook.

@nirvik
Copy link

nirvik commented Nov 28, 2021

+1 on this issue

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants