Pixi.js: Webpack рдХреЗ рд╕рд╛рде рд╕рдВрдпреЛрдЬрди рдХреЗ рд░реВрдк рдореЗрдВ PIXI.js рдХреЗ рд▓рд┐рдП рдЫрд╡рд┐ рд╕рдВрдкрддреНрддрд┐ рд▓реЛрдб рдХрд░реЗрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 2 рджрд┐рд╕ре░ 2016  ┬╖  6рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: pixijs/pixi.js

рдореИрдВ PIXI.js рдХреЗ рд▓рд┐рдП рдЫрд╡рд┐ рдХреА рд╕рдВрдкрддреНрддрд┐ рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдЬреЛ рдХрд┐

import React from 'react';
import styles from './Menu.css';
import backgroundUrl from './background.jpg';
require('pixi.js')

class Menu extends React.Component {    

    componentDidMount () {

        // Get reference to canvas element
        this.canvas = this.refs.canvas;        

        // Load assets                
        PIXI.loader.add([
            {
                name: 'background',
                url: backgroundUrl
            }
        ]).load(this.init());

    }

    init () {

        // Create background sprite
        const background = new PIXI.Sprite(PIXI.loader.resources.background.texture);

        // DEBUG: Height and width is always '1'
        console.log('Background width: ' + background.width);
        console.log('Background height: ' + background.height);

        // Setup renderer
        this.renderer = PIXI.autoDetectRenderer(background.width, background.height);
        this.renderer.autoResize = true;
        this.renderer.resize(window.innerWidth, window.innerHeight);
        this.canvas.appendChild(this.renderer.view);

        // Create stage
        this.stage = new PIXI.Container();                

        // Add background to stage
        this.stage.addChild(background)

        // Tell the renderer to render the stage
        this.renderer.render(this.stage);

    }

    render () {

        return (
           <div className={styles.canvas} ref='canvas'></div>
        );
    }

}

export default Menu;

рдЕрдм рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдореИрдВ loader.add() рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╕рд╛рде PIXI рдореЗрдВ background.jpg рд▓реЛрдб рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдпрд╣ рд╕рд┐рд░реНрдл рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдореЗрд░реЗ рдбрд┐рдмрдЧ рдХрдВрд╕реЛрд▓ рд▓реЙрдЧ рдореЗрдВ рдореИрдВ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдЫрд╡рд┐ рдХреА рдКрдВрдЪрд╛рдИ рдФрд░ рдЪреМрдбрд╝рд╛рдИ 1. рд╣реИ, рдЬрдм рдореИрдВ рдкреГрд╖реНрдарднреВрдорд┐ рдЫрд╡рд┐ рдХреЗ рд▓рд┐рдП URL рджреЗрдЦрддрд╛ рд╣реВрдВ, рддреЛ рдпрд╣ рд╕рдм рдареАрдХ рд▓рдЧрддрд╛ рд╣реИред рдХреЛрдИ рд╕реБрдЭрд╛рд╡?

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдпрд╣ рдЕрдм рдЕрдкреНрд░рдЪрд▓рд┐рдд рд╣реИ ... рдФрд░ рд╣рдореЗрдВ рдХрд┐рд╕реА рднреА рд╕рдВрдкрддреНрддрд┐ рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рддрд░реАрдХрд╛ рдЪрд╛рд╣рд┐рдП, рдЬрд┐рд╕реЗ рд╣рдо рд╡реЗрдмрдкреИрдХ рдХреЗ рд╕рд╛рде рдЬреЛрдбрд╝ рд░рд╣реЗ рд╣реИрдВ

рд╕рднреА 6 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдЗрд╕реЗ рдЗрд╕ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ;
~.load () (= = this.init ());~

@ staff0rd рдЬреЛ рдмрдврд╝рд┐рдпрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ! рдкрд░ рдХреНрдпреЛрдВ??

load рдЗрд╕рдХреЗ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ init() рдмреБрд▓рд╛ рд░рд╣реЗ рдереЗ, рдЬрд┐рд╕рд╕реЗ рдЗрд╕рдХрд╛ рдкрд░рд┐рдгрд╛рдо (рд╢реВрдиреНрдп) load ред рдЕрдЧрд░ init рдЕрдВрджрд░ this рд╕рдВрджрд░реНрдн рдирд╣реАрдВ рдерд╛, рддреЛ рдЖрдк рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдкрд╛рд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ;
~.load (this.init);~

рдХреЛрд╖реНрдардХ рдХреА рдХрдореА рдкрд░ рдзреНрдпрд╛рди рджреЗрдВред

рдпрд╣ рдЕрдм рдЕрдкреНрд░рдЪрд▓рд┐рдд рд╣реИ ... рдФрд░ рд╣рдореЗрдВ рдХрд┐рд╕реА рднреА рд╕рдВрдкрддреНрддрд┐ рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рддрд░реАрдХрд╛ рдЪрд╛рд╣рд┐рдП, рдЬрд┐рд╕реЗ рд╣рдо рд╡реЗрдмрдкреИрдХ рдХреЗ рд╕рд╛рде рдЬреЛрдбрд╝ рд░рд╣реЗ рд╣реИрдВ

@hayesmaker рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдмрдирд╛рд╡рдЯ рдереЛрдбрд╝реА рджреЗрд░ рдХреЗ рд▓рд┐рдП рдЦрд╛рд▓реА рд╣реИред рдЬрдм рдпрд╣ рддреИрдпрд╛рд░ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдпрд╣ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдзреБрдВрдзрд▓рд╛ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

@nitwhiz рдпрд╣ рд╣реИ рдХрд┐ рдореБрдЭреЗ рд╢реБрд░реВ рдореЗрдВ рд╕рднреА рд╕реНрдкреНрд░рд╛рдЗрдЯреНрд╕ рдХреЗ рд▓рд┐рдП 1px рдЪреМрдбрд╝рд╛рдИ рдХреНрдпреЛрдВ рдорд┐рд▓рддреА рд╣реИ?
рдПрдХ рдмрд╛рд░ рдПрдХ рд╕реНрдкреНрд░рд╛рдЗрдЯ рд▓реЛрдб рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдЖрдЧ рдкрд░ рдХреЙрд▓рдмреИрдХ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реИ?

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

Darker picture Darker  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

gigamesh picture gigamesh  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

neciszhang picture neciszhang  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

softshape picture softshape  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

gaccob picture gaccob  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ