Hello everyone, Sorry I have not been keeping up with my posts lately, however, that is because I have been working on a new game engine called HYPER JS. It focuses specifically on more complicated arcade games, but works great with most advanced 2D games. The reason I have created this is for people who use libraries like Phaser, and ImpactJS. They are good game libraries, but they are huge and often have a steep learning curve. They could do things much better to balance user control, and library control. HYPERJS is a small, lightweight, library that will work well for mobile, desktop, and tablet gaming.
(adsbygoogle = window.adsbygoogle || []).push({});
HYPERJS focuses on using a great custom rendering engine that does just what you tell it to. We are creating new revolutionary technology that will make a lasting impact on the HTML5 world. With a easy to learn API that is similar to how most things are done in regular JavaScript. It will come as easily as breathing.
The code to HYPERJS can be found on github.com Feel free to check it out, and as it is still in beta, be sure to tell us all the ways we can improve it for the first stable release!
~ PLANNED FEATURES ~
Preloading
HYPERJS will have full preloading support for loading images, sounds, sprite-sheets, and more. With a simple to use API you can have large assets ready at your fingertips.
Timers
We will be supporting separate update and rendering loops, you will be able to change the FPS for each of them to suite your needs. HYPERJS even supports modern standard of requestAnimationFrame, with multiple fall-backs for older browsers.
Input
Weather you are dealing with a single mouse, or ten simultaneous touch points, you will have no problem keeping track of them. Having the ability to add various custom event listeners to your sprites only enhances the ability. Keep track of all the keys as well, no more using key codes! Just name the key you want.
Stages
We make swapping between various parts of your game a breeze. Being able to easily separate your code into more organizable chunks will make programming faster, and cleaner. Now it is easier then ever to have separate stages for things like preloading, play, credits, and more!
Screens and Layers
Being able to render your game is the most important part. We use new, advanced methods for you to update your game screen at top speeds, while updating each different layer at a different speed. This allows your game to focus on the important parts of the game, while rendering advanced backgrounds for minimal cost. This also allows for an alternative to the multiple canvas approach, where you update multiple canvases simultaneously for a good looking game, but awful performance. Now it renders only once on screen, and the rest is cached in the memory for when you need it.
Caching
HYPERJS also allows for saving advanced images into the memory, anything from a simple starry night sky to entire pseudo-randomly developed sprite-sheets. This allows for much more processor power to be devoted to the active game.
Audio
We use only the best audio libraries, which is why we choose Howler JS. Howler JS is an advanced audio library that allows for lots of things, from 3D placement of sounds to simple sound looping.
Physics
We are currently developing a physics engine designed to be lightweight and usable. With very little impact on performance. This engine will include things like AABB collision detection, solid objects, circle collision detection, friction, acceleration, velocity, vectors, and more.
Sprite Groups
This will allow for object pooling to help performance, and just more simple ways to deal with large amounts of sprites. It will support separate renderings, physics, object pooling, and easy to learn API.
any frp of fp support?
Can you be more specific on what you are asking? However, if what I think you are asking is correct, then HYPERJS should support at least the basic concepts of both Functional Reactive Programming, and Functional Programming.
so signals and pure functions are supported?
up
very interesting, there is a mailing list to follow the news?
Yes, just check out the sidebar.
Interesting
When it will be ready?
We are looking at a launch date for sometime in the middle of May, so in about two weeks. If you want to follow the development processes in the meantime, then subscribe to the newsletter. (found in a widget on the side of the page)
What do you think about Phaser Framework? or Pixi.js? 🙂
See my Facebook group: https://www.facebook.com/groups/javascriptgames/
I think that they are both excellent libraries and frameworks, they just have a lot of “bloat wear” I guess you can call it. Extra functions that slow down the game. That, and I hate how closed the API is, but that is just personal preference.