Skip to content

Commit

Permalink
Preparing for v3.80 release
Browse files Browse the repository at this point in the history
  • Loading branch information
photonstorm committed Feb 21, 2024
1 parent c1e61e6 commit 5a12f2a
Show file tree
Hide file tree
Showing 8 changed files with 214,231 additions and 212,559 deletions.
4 changes: 2 additions & 2 deletions .gitpod.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ tasks:
command: npm run watch
- init: >
cd ../ &&
git clone https://github.com/photonstorm/phaser3-examples.git &&
cd phaser3-examples &&
git clone https://github.com/phaserjs/examples.git &&
cd examples &&
npm install && npm start
ports:
- port: 8080
Expand Down
2 changes: 1 addition & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Please select a version to read that specific change log:

| Version | Name | Release Date |
| ------- | ---- | ------------ |
| [3.80](changelog/3.80/CHANGELOG-v3.80.md) | Nino | in beta |
| [3.80](changelog/3.80/CHANGELOG-v3.80.md) | Nino | 21st February 2024 |
| [3.70](changelog/3.70/CHANGELOG-v3.70.md) | Yotsuba | 10th November 2023 |
| [3.60](changelog/3.60/CHANGELOG-v3.60.md) | Miku | 12th April 2023 |
| [3.55.2](changelog/3.55.2/CHANGELOG-v3.55.2.md) | Ichika | 27th May 2021 |
Expand Down
2 changes: 1 addition & 1 deletion LICENSE.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
The MIT License (MIT)

Copyright (c) 2020 Richard Davey, Photon Storm Ltd.
Copyright (c) 2024 Richard Davey, Phaser Studio Inc.

Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
Expand Down
17 changes: 10 additions & 7 deletions changelog/3.80/CHANGELOG-v3.80.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,8 @@
# Version 3.80.0 - Nino - in dev
# Version 3.80.0 - Nino - 21st February 2024

# New Features
# New Features - WebGL Context Loss Handling

* Phaser now performs a [WebGL Context Restore](WebGLContextRestore.md) to keep the game running after losing WebGL context. This affects many parts of the rendering system, but everything should work just the same unless you're doing something very technical. See the link for more details.
* The Scale Manager has a new scale mode called `EXPAND`. This is inspired by the Expand mode in Godot: "Keep aspect ratio when stretching the screen, but keep neither the base width nor height. Depending on the screen aspect ratio, the viewport will either be larger in the horizontal direction (if the screen is wider than the base size) or in the vertical direction (if the screen is taller than the original size)" (thanks @rexrainbow)
* The `Tilemap.createFromTiles` method has been updated. It will now copy the following properties, if set in the Tile, to the Sprites it creates: `rotation`, `flipX`, `flipY`, `alpha`, `visible` and `tint`. If these properties are declared in the `spriteConfig` passed to the method, those will be used instead, otherwise the Tile values are used. Fix #6711 (thanks @Nerodon)
* The `Tilemap.createFromTiles` method has a new property called `useSpriteSheet`. If this is set to `true` and you have loaded the tileset as a sprite sheet (not an image), then it will set the Sprite key and frame to match the sprite texture and tile index. Also, if you have not specified an `origin` in the spriteConfig, it will adjust the sprite positions by half the tile size, to position them accurately on the map.
* `Texture#getFrameBounds` is a new method that will return the bounds that all of the frames of a given Texture Source encompass. This is useful for things like calculating the bounds of a Sprite Sheet embedded within a Texture Atlas.
* `Math.RectangleLike` is a new typedef that defines a rectangle-like object with public `x`, `y`, `width` and `height` properties.

# New Feature - Base64 Loader

Expand All @@ -26,6 +21,14 @@ The Game Config has a new Scale Manager property called `snap`. This allows you
* `ScaleManager.setSnap` is a new method that allows you to set the snap values for the game size, should you need to do it post-boot and not in the game config.
* `Config#snapWidth` and `Config#snapHeight` are new properties in the Game Config that hold the parsed `snap` config values, as used by the Scale Manager.

# New Features

* The Scale Manager has a new scale mode called `EXPAND`. This is inspired by the Expand mode in Godot: "Keep aspect ratio when stretching the screen, but keep neither the base width nor height. Depending on the screen aspect ratio, the viewport will either be larger in the horizontal direction (if the screen is wider than the base size) or in the vertical direction (if the screen is taller than the original size)" (thanks @rexrainbow)
* The `Tilemap.createFromTiles` method has been updated. It will now copy the following properties, if set in the Tile, to the Sprites it creates: `rotation`, `flipX`, `flipY`, `alpha`, `visible` and `tint`. If these properties are declared in the `spriteConfig` passed to the method, those will be used instead, otherwise the Tile values are used. Fix #6711 (thanks @Nerodon)
* The `Tilemap.createFromTiles` method has a new property called `useSpriteSheet`. If this is set to `true` and you have loaded the tileset as a sprite sheet (not an image), then it will set the Sprite key and frame to match the sprite texture and tile index. Also, if you have not specified an `origin` in the spriteConfig, it will adjust the sprite positions by half the tile size, to position them accurately on the map.
* `Texture#getFrameBounds` is a new method that will return the bounds that all of the frames of a given Texture Source encompass. This is useful for things like calculating the bounds of a Sprite Sheet embedded within a Texture Atlas.
* `Math.RectangleLike` is a new typedef that defines a rectangle-like object with public `x`, `y`, `width` and `height` properties.

# Spine Updates

* The Spine 3 and 4.1 Plugins will now call `preUpdate` automatically when the `play` method is called. This forces the new animation state to update and apply itself to the skeleton. This fixes an issue where Spine object would show the default frame in the Spine atlas for a single update before the animation started. Fix #5443 (thanks @spayton)
Expand Down
4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
{
"name": "phaser",
"version": "3.80.0-beta.3",
"version": "3.80.0",
"release": "Nino",
"description": "A fast, free and fun HTML5 Game Framework for Desktop and Mobile web browsers.",
"description": "A fast, free and fun HTML5 Game Framework for Desktop and Mobile web browsers from the team at Phaser Studio Inc.",
"author": "Richard Davey <[email protected]> (https://www.phaser.io)",
"homepage": "https://phaser.io",
"bugs": "https://github.com/phaserjs/phaser/issues",
Expand Down
2 changes: 1 addition & 1 deletion src/const.js
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ var CONST = {
* @type {string}
* @since 3.0.0
*/
VERSION: '3.80.0-beta.3',
VERSION: '3.80.0',

BlendModes: require('./renderer/BlendModes'),

Expand Down
Loading

0 comments on commit 5a12f2a

Please sign in to comment.