HaxeFlixel is an open source 2D game library written for use with the Open Flash Library and the Haxe Toolkit, it is completely free for personal or commercial use. This game library enables multi platform development for native targets on mobile and desktop as well as flash and experimental html5 support on web platforms.

This project was founded by Alexander Hohlov, also known on Beeblerox on GitHub, who continues to be the project lead for the HaxeFlixel Organisation group. The project itself also has an active community with contributions from highly valued developers (by github names) crazysam, impaler, Werdn, ProG4mr, Gama11, sergey-miryanov and more.

HaxeFlixel is largely based on the AS3 version of Flixel written by Adam “Atomic” Saltsman. One of the major motivations for creating HaxeFlixel is overcoming the limitations of the Actionscript 3 language and the Adobe Flash and Air runtime targets. HaxeFlixel has been able to incorporate and continues to add new language features of Haxe and incorporate exciting new runtime targets through OpenFL.

Features Overview

  • Display thousands of moving objects
  • Basic collisions between objects
  • Group objects together for simplicity
  • Easily generate and emit particles
  • Create game levels using Tilemaps
  • Text display and Bitmap Fonts
  • Math & Color utilities
  • Record and play back replays
  • Powerful interactive debugger
  • Path finding and following
  • Easy object recycling

Enhancements over AS3

  • Use of a robust and powerful open source language Haxe
  • Cross platform development to Linux, Mac and Windows
  • Compile to Mobile and Desktop targets with native code
  • Impressive Native Performance using GPU acceleration
  • Advanced Physics with inbuilt Nape support
  • Improved debugger and interactive console
  • Texture batching and cache enhancements
  • Access to OpenFL native extensions
  • Flexible Asset Management System
  • Integrated Tweening system
Image RSS Feed Latest Screens
Games Released Games Released Games Released
Blog RSS Feed Post news Report abuse Latest News: HaxeFlixel 3 Released!

0 comments by stvr on Dec 6th, 2013

Changes for HaxeFlixel 3.0

This is the third big update to HaxeFlixel. Here are the biggest changes:

  • New Front End classes to better encapsulate FlxG functionality.
  • Refactored the animation system.
  • Better support for nested sprites via FlxSpriteGroup. FlxSpriteGroups can be contained within other groups, and behave like FlxSprites. They are expensive though, use them sparingly.
  • Moved lots of stuff into utility classes to reduce clutter in core classes.
  • Continued optimizations for cpp targets.

Upgrading from HaxeFlixel 2.x to 3.0

HaxeFlixel 3.0 is an evolution of the original Flixel api and while most of the API is very similar and quickly learnt, it requires some renames and modifications to update your code.

Major changes from version 2.10

We wanted to slim down up the core classes, which meant moving non-essential functionality into separate classes. We've also continued to focus on improving stability and adding features to the engine. Here's a quick overview of the biggest changes:

mySprite.animation.frameName = "String";
mySprite.animation.frameIndex = Int;

Feel free to inspect the advanced api features such as addByNames, addByStringIndicies, addByIndicies, addByPrefix, findSpriteFrame, and randomFrame.

  • Added new FlxKeyShortcuts class, which replaces FlxG.keys. FlxG.keys.pressed is no longer a function, it's now an object, ex: if( FlxG.keys.pressed.ANY ) {...}
  • Added new FlxSpriteGroup class, which allows an FlxGroup to behave like an FlxSprite. This is a powerful new construct that will simplify building UI controls.
  • FlxU is now gone, we've moved all its functionality to several utility classes that specific contain functionality, ex: FlxArrayUtil, FlxAngle, FlxMath, FlxRandom, FlxSpriteUtil, FlxVelocity, etc.
  • FlxSprite Filters are now in a separate FlxSpriteFilter utility class.

Package Structure

HaxeFlixel no longer has an org package. Everything is now included as flixel.package.Class. For most cases you can just remove org. from your import statements.

This was a decision the core developers agreed upon, to make the package structure simpler and detach HaxeFlixel from old flash conventions.

FrontEnds and the FlxG refactor

Frontends in HaxeFlixel 3.x are a new structure to the core of Flixel and which tackles the often criticized bloated collection of static methods in FlxG.

Frontends are accessed in FlxG.frontend in a similar fashion to what Flixel devs are used to. Careful thought has been given to organise them into logical shortcuts. This way the api will be easier browse, remember and maintain.

For example in HaxeFlixel 2.x to add a FlxCamera you would use FlxG.addCamera(camera:FlxCamera);, this addCamera method has been moved into a camera frontend with all the other camera related shortcuts.

So the code in HaxeFlixel 3.x to add a FlxCamera is now FlxG.cameras.add(camera:FlxCamera).
The Flixel FrontEnds are as follows:

  • FlxG.inputs
  • FlxG.console
  • FlxG.log
  • FlxG.bmpLog
  • FlxG.watch
  • FlxG.debugger
  • FlxG.vcr
  • FlxG.bitmap
  • FlxG.cameras
  • FlxG.plugins
  • FlxG.sound

More detail on the FrontEnds can be read on the FrontEnd docs page.

Core Assets

HaxeFlixel has system Assets for its debugger buttons, system sounds etc these assets were previously stored in every project in the assets/data folder. HaxeFlixel 3.x uses the OpenFL include.xml in core HaxeFlixel to omit the need to include them in every project.

So you dont need to have system assets anymore, everything in your project's ./assets/* folder should only be the assets you create.

New Debugger and Interactive Console

HaxeFlixel 3.x includes a powerful console and improved debugger. The new debugger system by default redirects the core trace() command to the log. Alternativley you can use FlxG.log.add() , FlxG.watch.add(), FlxG.log.warn and more.

New Flixel Command Line Tools

Our command line tools have been moved to an optional repository, so the old haxelib run flixel new command will not work.

Install the tools from haxelib just like flixel and run setup and follow the prompts:

install flixel-tools
haxelib run flixel-tools setup

Now you can use the commands with just flixel, try the help command for more info.

flixel help

You can see the new template tool options with:

flixel help template

Also, there's now a shorthand version to create a template with a custom name:

flixel tpl -n "CustomProject"

Automatic find and replace

A collection of most of the API name changes were collected for the flixel-tools command line tool.
You can see what it replaces here.

To run the find and replace the command is simple:

flixel convert

For more information, see the upgrade guide in the HaxeFlixel documentation.

Add game Games
Little Blue Wizard
Little Blue Wizard

Little Blue Wizard

Updated 15 hours ago TBD Single Player Platformer

Little Blue Wizard tells a story about a little wizard, trying to save his kingdom from evil. He has to accomplish different challenges/obstacles to save...

Rhino 2
Rhino 2

Rhino 2

Updated 2 weeks ago Released Aug 2015 Single, Multiplayer & Co-Op Turn Based Tactics

English Rhino – is a turn-based tactical game, where you can hustle and bunt other players. Choose a character to your taste, improve it and win, invite...



Updated 2 weeks ago TBD Co-op Platformer

Holobunnies is a challenging and rewarding side-scrolling adventure game that happens across every corner of the universe. You play as one of the Holobunnies...



Updated 2 weeks ago TBD Single & Co-op Party

Mazerat is a tricky puzzle game where you attempt to elude your alien kidnappers by shifting lasers, crates, and much more to activate the escape hatch...

Shape Puzzles Pro - Assemble
Shape Puzzles Pro - Assemble

Shape Puzzles Pro - Assemble

Updated 1 month ago Released Oct 29, 2014 Single Player Family

Assemble the puzzle to show the hidden image. Shape Puzzles Pro is a variation of irregular jigsaw puzzles with a couple of twists. 1.) All the puzzle...

Post a Comment
click to sign in

You are not logged in, your comment will be anonymous unless you join the community today (totally free - or sign in with your social account on the right) which we encourage all contributors to do.

2000 characters limit; HTML formatting and smileys are not supported - text only

Send Message
Official Page
Release Date
Released Sep 2011
Engine Watch
Track this engine
Community Rating



5 votes submitted.

You Say


Ratings closed.

Embed Buttons

Promote HaxeFlixel on your homepage or blog by selecting a button and using the embed code provided (more).

HaxeFlixel HaxeFlixel
84 of 721
Last Update
2 weeks ago
7 members