Excalibur 0.25.2
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package Excalibur --version 0.25.2
NuGet\Install-Package Excalibur -Version 0.25.2
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Excalibur" Version="0.25.2" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Excalibur --version 0.25.2
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Excalibur, 0.25.2"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Excalibur as a Cake Addin #addin nuget:?package=Excalibur&version=0.25.2 // Install Excalibur as a Cake Tool #tool nuget:?package=Excalibur&version=0.25.2
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
What's Changed
See migration guide for v0.25.x → v0.25.2
Plugin Updates!
- Excalibur Dev Tools for game debugging!
- Lots of quality of life improvements in the Tiled plugin
- Tiled data is added to corresponding Entities via
TiledObjectComponent
andTiledLayerComponent
- Tiled name's become excalibur Entity names
- Layers and object use Tiled Z-indexing by default
- Tiled data is added to corresponding Entities via
Added Features
- feat: [#577] [#1170] Implement new Clock API by @eonarheim in https://github.com/excaliburjs/Excalibur/pull/2122
- Added new
Clock
api to manage the core main loop. Clocks hide the implementation detail of how the mainloop runs, users just knows that it ticks somehow. Clocks additionally encapsulate any related browser timing, likeperformance.now()
StandardClock
encapsulates the existingrequestAnimationFrame
api logicTestClock
allows a user to manually step the mainloop, this can be useful for frame by frame debugging #1170- The base abstract clock implements the specifics of elapsed time
- Added new
- Added a new feature to Engine options to set a maximum fps
new ex.Engine({...options, maxFps: 30})
. This can be useful when needing to deliver a consistent experience across devices. - feat: Post Processing Improvements + Pre-multiplied alpha by @eonarheim in https://github.com/excaliburjs/Excalibur/pull/2142
- New
ex.ScreenShader
helper for building custom shader based post processors, read docs for more info
- New
- feat: Support image filtering modes on ImageSource & Raster Graphics by @eonarheim in https://github.com/excaliburjs/Excalibur/pull/2168
- feat: Fixes and updates to support
@excaliburjs/dev-tools
by @eonarheim in https://github.com/excaliburjs/Excalibur/pull/2169 - feat+refactor: Renderer simplification and Render plugins by @eonarheim in https://github.com/excaliburjs/Excalibur/pull/2185
- Added ability to build custom renderer plugins that are accessible to the
ex.ExcaliburGraphicsContext.draw<TCustomRenderer>(...)
after registering themex.ExcaliburGraphicsContext.register(new LineRenderer())
- Added ability to draw circles and rectangles with outlines!
ex.ExcaliburGraphicsContext.drawCircle(...)
andex.ExcaliburGraphicsContext.drawRectangle(...)
- Added ability to build custom renderer plugins that are accessible to the
- Added
ex.CoordPlane
can be set in thenew ex.Actor({coordPlane: CoordPlane.Screen})
constructor - Added convenience feature, setting the color, sets the color on default graphic if applicable
- Added support for different webgl texture blending modes as
ex.ImageFiltering
:ex.ImageSource
can now specify a blend mode before the image is loadedex.ImageFiltering.Blended
- Blended is useful when you have high resolution artwork and would like it blended and smoothedex.ImageFiltering.Pixel
- Pixel is useful when you do not want smoothing aka antialiasing applied to your graphics.
- Excalibur will set a "default" blend mode based on the
ex.EngineOption
antialiasing property, but can be overridden per graphicantialiasing: true
, then the blend mode defaults toex.ImageFiltering.Blended
antialiasing: false
, then the blend mode defaults toex.ImageFiltering.Pixel
- Pointers can now be configured to use the collider or the graphics bounds as the target for pointers with the
ex.PointerComponent
useColliderShape
- (default true) uses the collider component geometry for pointer eventsuseGraphicsBounds
- (default false) uses the graphics bounds for pointer events
- Added new
measureText
method to theex.SpriteFont
andex.Font
to return the bounds of any particular text
Breaking Changes
ex.Util.extend()
is removed, modern js spread operator{...someobject, ...someotherobject}
handles this better.- Excalibur post processing is now moved to the
engine.graphicsContext.addPostProcessor()
- Breaking change to
ex.PostProcessor
, all post processors must now now implement this interfaceexport interface PostProcessor { intialize(gl: WebGLRenderingContext): void; getShader(): Shader; getLayout(): VertexLayout; }
- Excalibur
ex.EventEmitter
on longer overrides thethis
parameter in callbacks// change this type of code this.on('precollision', this.onPreCollision); // to this this.on('precollision', (evt) => this.onPreCollision(evt));
Deprecated
- The static
Engine.createMainLoop
is now marked deprecated and will be removed in v0.26.0, it is replaced by theClock
api - Mark legacy draw routines in
ex.Engine
,ex.Scene
, andex.Actor
deprecated
Bug Fixes
- fix: Performance improvements avoid expensive calculations by @eonarheim in https://github.com/excaliburjs/Excalibur/pull/2197
- Big improvement v0.25.0 on the left and v0.25.2 on the right! We stay above 30fps @ 4000 actors! More to come in the future!
- fix: Arcade Solver Jitter on stacked/overlapped tiles by @eonarheim in https://github.com/excaliburjs/Excalibur/pull/2104
- fix: [#2106] Safari 13.1 Does not boot + Safari Pointers by @eonarheim in https://github.com/excaliburjs/Excalibur/pull/2107
- fix: Prevent pair generation for composite colliders by @eonarheim in https://github.com/excaliburjs/Excalibur/pull/2131
- fix: Clock runs game simulation too fast sometimes when limiting fps by @eonarheim in https://github.com/excaliburjs/Excalibur/pull/2162
- fix: Prevent SpriteFonts from logging excessive warnings by @eonarheim in https://github.com/excaliburjs/Excalibur/pull/2163
- fix: [#2152] SpriteFont and Font alignment by @eonarheim in https://github.com/excaliburjs/Excalibur/pull/2153
- fix(tsconfig): restrict types array by @kamranayub in https://github.com/excaliburjs/Excalibur/pull/2160
- fix: [#1815] TileMap tiling artifact by @eonarheim in https://github.com/excaliburjs/Excalibur/pull/2146
- fix: CircleCollider now handles transforms properly by @eonarheim in https://github.com/excaliburjs/Excalibur/pull/2191
- fix: [#2192] Actor.center returns global position by @eonarheim in https://github.com/excaliburjs/Excalibur/pull/2193
Changed/Refactor
- refactor: Pointer System by @eonarheim in https://github.com/excaliburjs/Excalibur/pull/2071
- refactor: Remove .call() in EventDispatcher by @nidble in https://github.com/excaliburjs/Excalibur/pull/2103
- refactor: Move math utils, deprecate old import site by @eonarheim in https://github.com/excaliburjs/Excalibur/pull/2177
Docs
- chore: Update changelog for 0.25.1 release by @jedeen in https://github.com/excaliburjs/Excalibur/pull/2099
- docs: Clarify contribution requirements by @jedeen in https://github.com/excaliburjs/Excalibur/pull/2101
- docs: Remove TravisCI badge by @jedeen in https://github.com/excaliburjs/Excalibur/pull/2108
- docs: Fix semantic headings by @jedeen in https://github.com/excaliburjs/Excalibur/pull/2161
- chore(renovate): do not automerge typedoc by @kamranayub in https://github.com/excaliburjs/Excalibur/pull/2143
- chore(deps): revert "Update dependency typedoc to v0.22.10" by @kamranayub in https://github.com/excaliburjs/Excalibur/pull/2144
- chore(ci): optimize build jobs by @kamranayub in https://github.com/excaliburjs/Excalibur/pull/2145
Build Dependencies Updated
- chore: Update dependency typescript to v4.5.2 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2110
- chore: Update jasmine monorepo by @renovate in https://github.com/excaliburjs/Excalibur/pull/2117
- chore: Update dependency @types/node to v14.17.34 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2112
- chore: Update dependency @types/jasmine to v3.10.2 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2111
- chore: Update dependency webpack to v5.64.1 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2116
- chore: Update dependency core-js to v3.19.1 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2113
- chore: Update dependency karma to v6.3.9 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2115
- chore: Update dependency css-loader to v6.5.1 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2114
- chore: Update dependency webpack to v5.64.4 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2125
- chore: Update typescript-eslint monorepo to v4.33.0 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2123
- chore: Update dependency source-map-support to v0.5.21 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2124
- chore: Update dependency copy-webpack-plugin to v9.1.0 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2126
- chore: Update dependency copy-webpack-plugin to v10 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2118
- chore(deps): bump handlebars from 4.7.6 to 4.7.7 by @dependabot in https://github.com/excaliburjs/Excalibur/pull/2098
- chore: Update dependency serve to v13 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2129
- chore: Update typescript-eslint monorepo to v5 (major) by @renovate in https://github.com/excaliburjs/Excalibur/pull/2130
- chore: Update dependency eslint to v8 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2127
- chore: Update dependency eslint-plugin-jsdoc to v37 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2128
- chore: Update dependency json-schema to 0.4.0 [SECURITY] by @renovate in https://github.com/excaliburjs/Excalibur/pull/2133
- chore: Update dependency core-js to v3.19.2 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2135
- chore: Update typescript-eslint monorepo to v5.5.0 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2134
- chore: Update dependency typedoc to v0.22.10 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2137
- chore: Update dependency eslint-plugin-jsdoc to v37.1.0 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2140
- chore: Update storybook monorepo to v6.4.3 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2138
- chore: Update dependency karma-coverage to v2.1.0 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2141
- chore: Update Node.js to v14.18.2 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2136
- chore: Update dependency core-js to v3.19.3 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2154
- chore: Update dependency typescript to v4.5.4 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2155
- chore: Update Node.js to v16 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2139
- chore: Update dependency typedoc to v0.22.10 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2164
- chore: Update dependency copy-webpack-plugin to v10.2.0 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2167
- chore: Update dependency core-js to v3.20.0 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2166
- chore: Update dependency @types/node to v16.11.17 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2165
- chore: Update typescript-eslint monorepo to v5.8.1 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2174
- chore: Update dependency eslint-plugin-jsdoc to v37.5.0 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2173
- chore: Update dependency eslint to v8.5.0 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2172
- chore: Update storybook monorepo to v6.4.9 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2179
- chore: Update jasmine monorepo to v3.99.0 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2182
- chore: Update dependency core-js to v3.20.2 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2171
- chore: Update dependency eslint to v8.6.0 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2180
- chore: Update dependency @babel/core to v7.16.7 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2178
- chore: Update dependency eslint-plugin-jsdoc to v37.6.1 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2190
- chore: Update typescript-eslint monorepo to v5.9.0 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2187
- chore: Update dependency karma to v6.3.10 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2186
- chore: Update dependency @types/node to v16.11.19 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2189
- chore: Update dependency karma to v6.3.11 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2195
- chore: Update dependency @types/jasmine to v3.10.3 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2188
- chore: Update jasmine monorepo (major) by @renovate in https://github.com/excaliburjs/Excalibur/pull/2183
- chore: Update Node.js to v16.13.2 by @renovate in https://github.com/excaliburjs/Excalibur/pull/2194
Contributors
Big thanks to all the people who have helped out this iteration!
@ivasilov @luttje @tsanyqudsi @lampewebdev @joshuadoan @berkayyildiz @simon-jaeger @YJDoc2 @JumpLink
Full Changelog: https://github.com/excaliburjs/Excalibur/compare/v0.25.1...v0.25.2
There are no supported framework assets in this package.
Learn more about Target Frameworks and .NET Standard.
This package has no dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
0.30.3 | 89 | 1/2/2025 |
0.30.2 | 83 | 12/26/2024 |
0.30.1 | 115 | 12/13/2024 |
0.29.3 | 162 | 5/5/2024 |
0.29.2 | 183 | 4/7/2024 |
0.29.1 | 192 | 2/23/2024 |
0.29.0 | 189 | 2/20/2024 |
0.28.7 | 214 | 1/27/2024 |
0.28.6 | 194 | 1/13/2024 |
0.28.5 | 228 | 1/6/2024 |
0.28.4 | 213 | 12/22/2023 |
0.28.3 | 197 | 12/12/2023 |
0.28.2 | 219 | 12/2/2023 |
0.28.0 | 307 | 8/11/2023 |
0.25.3 | 630 | 2/6/2022 |
0.25.2 | 500 | 1/22/2022 |
0.25.1 | 561 | 11/6/2021 |
0.25.0 | 485 | 10/4/2021 |
0.24.5 | 801 | 9/7/2020 |
0.24.4 | 702 | 9/3/2020 |
0.24.3 | 708 | 5/10/2020 |
0.24.1 | 606 | 4/24/2020 |
0.24.0 | 644 | 4/24/2020 |
0.23.0 | 798 | 6/8/2019 |
0.22.0 | 788 | 4/6/2019 |
0.21.0 | 964 | 2/2/2019 |
0.20.0 | 962 | 12/23/2018 |
0.19.1 | 956 | 10/23/2018 |
0.19.0 | 1,006 | 10/13/2018 |
0.18.0 | 1,068 | 8/4/2018 |
0.17.0 | 1,126 | 6/16/2018 |
0.16.0 | 1,193 | 4/6/2018 |
0.15.0 | 991 | 2/17/2018 |
0.14.0 | 1,153 | 12/2/2017 |
0.13.0 | 1,077 | 10/7/2017 |
0.12.0 | 1,166 | 8/12/2017 |
0.11.0 | 1,249 | 6/10/2017 |
0.10.0 | 1,209 | 4/8/2017 |
0.9.0 | 1,228 | 2/10/2017 |
0.8.0 | 1,156 | 12/4/2016 |
0.7.1 | 1,355 | 10/4/2016 |
0.7.0 | 1,391 | 8/30/2016 |
0.6.0 | 1,615 | 1/20/2016 |
0.5.1 | 1,407 | 6/26/2015 |
0.5.0 | 1,374 | 6/4/2015 |
0.2.2 | 1,754 | 4/16/2014 |
0.2.1 | 1,593 | 4/16/2014 |
0.2.0 | 1,613 | 4/10/2014 |
0.1.1-alpha | 1,229 | 12/19/2013 |
0.1.0-alpha | 1,319 | 12/12/2013 |