Posts tagged with “iOS”
Ejecta 2.1 makes use of this new API - this streamlines the whole internal design, making Ejecta's code more elegant and straightforward then ever.
Screenshot from my Wipeout Model Viewer running in Ejecta
Of course Ejecta 2.1 also comes with a lot of bugfixes and small improvements.
Ejecta 2.1 requires XCode 8.0 to compile and runs on iOS 10 and tvOS. As always, the newest release can be found on the Ejecta project page. If you need compatibility with an older iOS version, please use the 2.0 release.
After more than a year since the last release, Ejecta 2.0 brings support for Apple's tvOS, the Gamepad API and dozens of bugfixes.
Without the custom JSC lib, Apps build with Ejecta can now be as small as 1 Megabyte, instead of ~12 Megabyte previously. However, using the system provided JSC lib also has its downside: reading and writing of Typed Arrays in native code is now a good deal slower than it was previously. This only affects WebGL and the
get/setImageData() for the Canvas2D and is still plenty fast for most use cases.
Support for Apple's new tvOS platform is also a major milestone. tvOS doesn't support any Browser or WebView, which makes Ejecta the only viable way to bring HTML5 Games and Canvas animations onto the Apple TV.
Ejecta 2 requires XCode 7.1 to compile and runs on iOS8 or tvOS. As always, the newest release can be found on the Ejecta project page.
Thanks to everyone who contributed and reported bugs!
Ejecta, running on the new Apple TV
- Added tvOS support
- Added Gamepad API
- Added support for gradient and pattern strokes
- Added support for sending Array Buffers for XMLHttpRequest
- Added Audio
- Added Audio
- Added support for changing orientation in running App
- Added antialias support for WebGL
- Removed deprecated pixel auto doubling for Canvas2D
- Use XIBs for launch screens where possible
- Allow arbitrary retina scale (i.e. 3x for iPhone6)
- Smarter console.log() – logs only 2 levels deep
- Images are now lazy loaded on first use
- + ...countless bugfixes
Ejecta has been formerly known as iOSImpact. It still shares the same idea and some basic code with iOSImpact, but is otherwise a significant rewrite of it.
The whole Canvas implementation has been re-implemented from scratch and is now much faster, more robust and closer to the HTML5 spec. It also supports the vector drawing functions, such as
stroke() as well as
getImageData() and many others.
iOSImpact used a lot of Impact specific hacks and you needed a special set of plugins to make Impact work with it. This is no longer the case – Impact games now work without any modifications or plugins in Ejecta.
Ejecta has become much more generally usable. It's not only a tool to get Impact games running on iOS, but can also be used for many other Canvas animations and games.
Because Ejecta is no longer focused on Impact only, I decided to release it as Open Source to see what the community comes up with. I'm also hoping that the community will help out to fill the last gaps in the Canvas implementation and also provide some more functionality such as in-app purchases or WebSocket support.
Visit the Ejecta page for more info. If you're upgrading from iOSImpact, be sure to read the Integrating Impact Games article.
I also wrote a bit about some implementation details in my blog.
You can get the source for iOSImpact on your download page. I also wrote some basic documentation to get you started, but it's all very much in a beta stage right now. Read my blog for some more technical details and behind the scenes stuff.