Navigation

Phaser World Issue 15

Published on 29th January 2016

lazer2

Phaser 3 is now called Lazer.

Follow development in the repo and Mailing List.

Here are some of the changes made this week:

Line + Intersects

After a few days off ill I decided to work on the Line geometry functions. Created the core Line object and support functions for: Angle, BresenhamLine, CenterOn, Clone, Copy, GetMidPoint, Height, Length, NormalAngle, NormalX, NormalY, PerpSlope, Slope, PointOnLine, PointOnSegment, Random, Reflect, SetFromAngle, Slope and Width.

Also created two new Intersects functions: LineToLine and LineSegmentToLineSegment.

References to other files within Lazer

Having played around with this today I believe the best course of action will be to use absolute paths, rather than relative. However it should still allow for what you were originally trying to do.

So in canvas/shapes/Shape.js at the moment I do:

import DegToRad from 'math/DegToRad.js';
import RadToDeg from 'math/RadToDeg.js';
import Wrap from 'math/Wrap.js';
import ShapeFill from 'canvas/shapes/ShapeFill.js';
import ShapeStroke from 'canvas/shapes/ShapeStroke.js';

But I'll update it to:

import DegToRad from '/math/DegToRad.js';
import RadToDeg from '/math/RadToDeg.js';
import Wrap from '/math/Wrap.js';
import ShapeFill from '/canvas/shapes/ShapeFill.js';
import ShapeStroke from '/canvas/shapes/ShapeStroke.js';

I could do local files relatively, i.e.:

import ShapeFill from './ShapeFill.js';
import ShapeStroke from './ShapeStroke.js';

Just for files in the same folder as the one referencing them. But should I ever need to move a whole folder elsewhere it would be much easier for me to search and replace absolute paths than relative ones, plus I find it less ambiguous (as it uses the same format for everything instead of mixing them).

At the moment SystemJS is configured to set the base path to the root of the repo already, which is why it current works until you try to reference it in any other way. But swapping to proper absolute paths should remove the need for this setting. I'll test it first to make sure though.

  • Pete resumed development of the new renderer with Phaser 2. Approximately half of all the examples are now running, and more come online each day.