From The Blog: Corona Roadmap 2018

Our engineering team would like to take this opportunity to share with the community our development goals for the year. Product roadmaps can be unpredictable. While items may be added, removed or postponed, the following roadmap should give you a general sense of what our plans are, with the understanding that they are subject to change without notice.

These are estimated start dates. In most cases, we hope to start and complete the items during their listed quarter, but some items are large projects and will span multiple quarters. Also there is no implied order for each quarter — some items toward the end of each quarter list may be finished before items near the beginning are even started.

Q1 2018

  • Continue working on implementing HTML5 builds
  • Better support for emitters when added to display groups
  • Android API level 27 support
  • New Android sound subsystem based on modern APIs
  • Improve Appodeal plugin
  • Auto-click masks
  • Marketplace 2.0
  • Animation plugin
  • Rebuild internal statistics system
  • Open source Lua frameworks like timer.* and transition.*

Q2 2018

  • Improve Live Builds by adding console logging
  • HTML5 to public beta
  • Support arm64 architectures
  • Investigate Linux builds
  • Move the Android build system to Gradle based
  • Move the Plugin build system to Gradle based
  • Investigate wireless install for iOS, tvOS
  • Revenue-share version of the AdMob plugin

Q3 2018

  • Explore Windows Universal Builds
  • Amazon IAP improvements
  • Per-vertex meshes coloring
  • Optimize touch events.
  • Tile engine support
  • Text rendering plugin

Q4 2018

  • Open Source efforts
  • Explore the Nintendo Switch platform
  • iOS Offline builds from Corona Simulator

Corona is a tool for you and at Corona Labs we value your feedback. Feature requests are recorded and tracked at http://feedback.coronalabs.com and we look forward to you visiting that site and voting on features that are important to you. We will continue to evaluate features requested by Corona developers and we may alter the roadmap as we get more feedback.

View the full article

Hope it will be a great year for Corona!

 

I have many questions regarding the roadmap so here they are:

 

1- Is “text rendering plugin” meant for rich text support or HTML style for text objects? If that’s it, I would have loved to see it in Q1 :slight_smile: Maybe you guys can move it up a quarter, instead of “wireless install for iOS” (since there is live builds :slight_smile: )?

 

2- I guess “internal statistics system” is not Corona Analytics? Or is it?

 

3- Does “tile engine support” mean a Corona made version of Tiled?

 

4- “New Android sound subsystem based on modern APIs” - I don’t know if it was still around but will it solve the Android sound lagging on some devices?

 

I would have preferred the exploration of Windows Universal Builds and Nintendo Switch sooner but I’m guessing these are tied to Microsoft and Nintendo so… Hope they work the gears really soon and make it available as soon as possible.

 

Last but not least, I don’t know if it will be good for monetization of the platform but I really appreciate the open source efforts. Good things may come out of this.

 

 

p.s.: As I wrote in the Slack channel, I would really appreciate if you can add strikethrough to the things in the list that are completed throughout the year. It’s really easy to miss some key stuff I’m interested in between the release notes for both public and daily builds.

I will need to get clarification from Engineering on most of these questions.

Regarding a tile engine, I believe it will be a set of API’s that use Tiled maps.

Regarding sounds for Android. Right now using OpenAL generates a bunch of ANR’s and crashes on Android. We are spending a lot of energy trying to hack around the OpenAL problems. I have no idea if the new changes will improve lagging or not. Many of the Android lagging problems are due to problems inherent to that version of the operating system, but maybe some of these modern API’s will work better on older Android. I just can’t promise that until we actually build it out and test it.

Rob

lots of investigating and exploring but nothing to really look forward too… Switch should be priority IMHO

I’d put a higher priority on the “selling points” - visual editor, supported platforms, and above all - growing the user base (community).

I am not using Corona at the moment but I’d love to - it’s my favourite engine to WORK with. That’s the reason I’m still lurking around. 

My problem with Corona is that it looks and feels like a barebones (for today’s standards) tool with a narrow focus on the mobile platforms and ad monetisation. On top of that, it has (great, but) small community and is quite heavily monetised itself.

Whenever I try to do something with it, I find myself spending tons of time trying to reinvent the wheel and browsing the web for third-party solutions and even adapting code from other engines. It is fun, indeed, but I’m not getting much real work done and don’t feel competitive in the bigger picture.

Different devs, different needs, I’ve moved over one of my projects recently to Löve2d as it was just not possible to handle it in Corona due to limits and problems with regards to meshes/lowlevel support (I still use Corona for all other ones as there are also many things I prefer in Corona).

I couldn’t care less about any visual editors as I tend to write games in a data oriented way and having to use a visual scene editor to just even get something going, *to me*, just results in a very inflexible and slow workflow most of the time.

In general, I prefer Corona devs to work on things I cannot change/implement in a decent way myself as it’s just within the blackbox not accessible at the moment (might change with the open source efforts, but at the moment, these are at least a year away).

Really looking forward to Marketplace 2.0 as I think that’s actually where we should see stuff like Tiled support etc. as there’s no single best way to handle tilemaps and quite some room for multiple versions optimized for different games/needs.

Just to put some weight on the other side of the scale … but as long as there is any development on Corona it’s great already, so I’m fine if not all my wishes become a reality :slight_smile:

Sounds cool - I can’t wait for a HTML5 version. That would expand my market quite a bit!

  1. The text rendering plugin: we want to provide some basic text formatting like HTML or Rich text. We just don’t know what that will be yet.

  2. The internal statistics is for us to better understand how you are using the product and most likely will not be user-facing.

  3. It will be something that will make it easier to use Tiled maps in a supported way.

  4. Hopefully, it will help with lags, but we are also working to reduce crashes and binary size of the product as well.

As far as priorities go, the best thing you can do is vote on those features on the feedback site.  For instance, Xbox-1/UWp support is sitting at 144 votes. ( The Switch is sitting at 159 votes (http://feedback.coronalabs.com/forums/188732-corona-feature-requests-feedback/suggestions/18473182-nintendo-switch-support).  Together, they don’t add up to the HTML5 requests and none of those come close to the Linux requests.  Clearly supporting more platforms means more audience for us and makes us more competitive against other engines, but with our team size and the existing commitments to support what we already have, jumping into new platforms has to be done with a lot of diligence and market analysis. So spend some of your votes and apply them to the platforms that are important to you. I’m looking at upping the number of votes you can spend, I just need to get approval to do so.

I’ll see about striking out items but no promises…

Rob

Slightly offtopic: I used this for text rendering - https://github.com/mimetic/corona-textrender. Works great, including with custom fonts.

I like the timeline. But can I ask one small request:

  1. The internal analytics system please don’t base it on Flurry.

  2. When you improve the Appodeal plugin can you remove Flurry and bring back support for Amazon. (These are the only reasons I don’t use Appodeal at the moment).

Edit: Forget about Appodeal changes. I can do both things I asked for with the new plugin. It is like Hanukkah in February.

Personally, I really hope Corona concentrates on adding more target OS’s - like Xbox, PS and Switch as that increases Corona’'s exposure and reach… that, as you know, other platforms build for.

With regard to internal metrics and usage, whilst valuable to you, presents a big issue for data protection rules in many countries - specially the EU (unless your end points are with in the EU which I very much doubt).  Will this be taken into account (for non-US devs) and will Corona allow for an opt in/out process as rules here are tough compared to the US?

In regards to getting more users, it might be worth Corona thinking of doing some form of out-reach program to developers using Unity to make 2D games and finding out why they chose Unity for that.

If it’s because they are also making 3D games and want the same toolset then you probably can’t persuade them to jump ship, but if they’re using it for other reasons - the asset store, bigger community, platform support, not aware of Corona, it’s what they know, etc - then those would be places where Corona could try to improve so that they can bring them over.

@glitchgames They should do the same with Defold. 

I’d forget about Unity’s audience, but becoming a good option for HTML 5 development would raise the interest in Corona by a great margin. It is a small, but a somewhat stable market.

Unity doesn’t support Canvas games, only WebGL which means the exports don’t run on mobile browsers. Most web game devs rely on JavaScript (or Haxe) frameworks that aren’t very good at producing (native) mobile builds and not too pleasant to use compared to Corona.

And exporting to Switch could make Corona a hit overnight. The interest is huge but even GameMaker doesn’t support it (yet).

Thank you for the answers Rob. I’d really love it if you could increase the number of votes and announce it with the newsletter to let everyone know about it.

Spent my 6 votes on Switch and XBox/Universal build support. I really think that those could give Corona more visibility if they are done right and not like Windows Phone support.

@gsimeonov, I tried that library but the code was a mess for me. If something went wrong, I worried that I couldn’t handle it so I gave up. I’d really prefer a built-in text manipulation option by Corona.

Hi, Just another thought regarding the “New Android sound subsystem based on modern API” item…

Would it be possible to include solving the excessive audio latency from screen tap to a sound being heard? I’ve studied the issue at length so I keep sound files short, preload them with audio.loadSound() and only play them later, I changed the audioPlayFrequency to 44100 (hz) and made sure my wav files are that rate also, etc etc.

It’s especially noticeable (even on my new model Galaxy S8+) when a display object or button is pressed quickly multiple times.  I see it discussed here for Unity

https://assetstore.unity.com/packages/tools/audio/android-native-audio-35295

someone there seems to have figured out a solution for the audio problem, but I love Corona!  Can this possibly be passed on to the engineers working on the Android Audio revisions? (It may give hints on how the other guys solved it in their world) but I want to stay in the Corona world!  

The docs for this Unity plugin says: ANA provides easy access to the native Android audio system for low-latency audio playback. You can play native audio with as few as three lines of code

Hopefully the new Android sound subsystem that is being worked on for Q1 2018 for Corona can allow a way to call the same low-latency audio playback functions?

Resolving this since the engineers are already working on the Android Audio API would  be an incredible boost for Corona on Android.

I saw latency mentioned with Corona above and here also: https://forums.coronalabs.com/topic/70237-superpowered-library-integration/?hl=%2Baudio+%2Blatency so I thought I’d ask.

Thanks so much!

We already provide direct access using the media.* APIs. These are fast and don’t have lags. However, you can’t preload sounds and you can’t mix multiple sounds (playing background music while making UI sounds for instance).

For our audio.* APIs you should always be pre-loading them anyway for small sounds. Large sounds files, like background music, should be loaded with audio.loadStream and then played when appropriate.

But I’ll make sure our engineers see this as I don’t know what the new Android audio system entails. 

Rob

  • New Android sound subsystem based on modern APIs

is this still looking like a reality for Q1 delivery?  (iow, still on track?)

 

it (or some other real fix to the openal android anr’s) is the only item on the whole year’s list that i’d care enough about to actually cast a vote for (if you were taking votes).

It should be on track for a Q1 release. 

Rob

Q1 is rapidly running out