Extending Corona Via C/C++/ObjectiveC Plugins

It would be great for community and fantastic for Ansca if Corona would provide interface to create our own C plugins that could communicate to Lua code. In this manner, many developers would address many of the feature requests. These user-generated plugins would create a great new value for Corona.

There is a very elegant LuaC interface for Gideros Lua engine: http://bit.ly/IK79er

However Corona has potential for even better implementation: since the code is built server-side, it would ideally shortcut the process by uploading source .cpp files along with .lua.

I know that this requires a substantial effort to make it work, but the reward would be ultimate: Corona could literary have unlimited features and would blow off any competition by light years for many years to come. [import]uid: 80100 topic_id: 25635 reply_id: 325635[/import]

Hi nosheet, it seems like Corona Team sh&&ts on your head. May be they are trying to sell you the premium support! But i come in bringing some light to this topic. There are rumors that Corona actually sells this feature on the Enterprise Solution http://www.anscamobile.com/corona/enterprise-solutions/?ref=nav and it costs about 2500 bucks requiring a minimum purchase of 3 seats

[import]uid: 64483 topic_id: 25635 reply_id: 109799[/import]

It would be fantastic to be able to code plugins in native code, I won’t hold my breath though. [import]uid: 126161 topic_id: 25635 reply_id: 109805[/import]

Yes, Enterprise is a new feature in currently in alpha/beta stage which allows native extensions.
http://www.anscamobile.com/corona/enterprise-solutions/

Please use the contact link on that page if you would like more information.
[import]uid: 7563 topic_id: 25635 reply_id: 109820[/import]

Thanks for heads up.
I was thinking that was the case, although wasn’t sure what the pricing model is.
Ewing, will this information be ever made public , or the pricing of “Enterprise” solution will be something we need to contact the company directly and therefore possible subject to change on project to project basis?
I hope once it comes out of beta, the Enterprise solution will no longer be such a secret.
Also hope that it will offer for that much money something MORE than only lua bridge to use native extensions, because, frankly, this alone can hardly be worth calling “enterprise”:
Using native extensions is most basic of “features” any Lua engine can have, because it is inherently part of a Lua implementation itself. And it is something that competitors are giving away for free.
The only reason that using native extensions have been such an “issue” in Corona, and presented as some super-service that’s worth thousands of dollars, is in the business model behind Ansca itself, which is based on build process that is made to be remote, therefore not allowing us the access to the code that compiles into Lua host.

So for example, if I need to implement a camera overlay (which I’ve seen repeatedly as a request on a forum), coding this using a bit of ObjectiveC and another view is a trivial matter, that would take a da y or two at most (and I almost never used ObjectiveC before). I can hardly call a camera overlay requirement “Enterprise solution” - it’s a very basic thing, and if I have to pay thousands of dollars to be able to implement it, at least I hope for that money ANSCA will code everything for me and give me turnkey solution.

Finally, I think that by not allowing native extensions as a part of regular Corona subscription, Corona developers as a community are at a great loss.
Every day I see feature requests on forums that Ansca will hardly ever have time to implement, however if we were allowed to use native extensions, many other developers would raise to occasion and write down the features themselves.

And when you’re customers are at loss, it’s only matter of time when this “Enterprise” strategy will start to backfire on Ansca.

Anyway, I looking forward to see if Enterprise will ever be made public, and if it will be worth the asking price - which is likely to be high otherwise it wouldn’t have such a pompous name. :slight_smile:
[import]uid: 80100 topic_id: 25635 reply_id: 109842[/import]

+1. I would be willing to pay a little extra for native extensions but seeing as how I’m more hobbyist then anything else the Enterprise solution will never make sense. That also means if enough features that are missing from Corona that I need(and can be solved via native extension) my only choice is to jump ship to another system that offers this solution within my price point. [import]uid: 147305 topic_id: 25635 reply_id: 109851[/import]

+1

I think ansca desperately needs native libraries from 3rd party vendors.
There are a lot of capable plugin writers like x-pressive that release fine lua plugins but the performance boast that native libraries will add can be crucial.

Personally I would like corona to stay closed and closely managed but I feel corona is falling behind feature wise compared to open projects like cocos2d which just became cross platform and can host a lua interpreter.

Having said that I would prefer having ansca deal with the core functionality (more platforms for example) and have 3rd party contributors do stuff like add new ad networks and such.

Regarding the financial side maybe they can sell it in their own store and take a percentage of sales like the app markets do. That way they can review the plugin and earn money if it’s a success hopefully converting these earnings resources that may accelerate core dev work. That sounds like a win-win situation to me.

I love corona but lately I have a feeling the competition is becoming tough, especially free ones. I myself considered trying to write a simple lua to cocos2d bridge that will implement the same API as corona so I can release our apps on more platforms. I wish I wouldn’t need to consider it because corona saves me the huge headache of dealing with this low level platform specific implementation… [import]uid: 80469 topic_id: 25635 reply_id: 109915[/import]

+1. All developers should be allowed to have access to this functionality, at least for the standard subscription prices anyway (or slightly higher as others above me are suggesting). Adding the ability to include native code or C code will allow developers to add their own features and still help those who are new to programming. The code exchange is a brilliant setup and could be more fully utilised by developers, essentially allowing them to write APIs for you. This could mean saved work hours, the ability to catch up to competitors, less feature requests, an immediate fix to any API deprecation by Apple or Google and more business opportunities. This all means more $$ for you and a happier Corona community.

There would be many developers steering clear of Corona just because they cannot include XXX (insert one of many hundreds of missing features here (a small fraction of which are on the preliminary roadmap)) feature which is essential for their app. Including native libraries for the wider community means you could focus more heavily on bug fixes, occasionally integrating a 1st Party feature, fixing the forum, fixing customer service (been along time since I last tried so it may be fixed), integrating 3rd party services or supporting new platforms. New developers can be supported by the existing APIs and features along with the code exchange, forums, and video tutorials.

When this is out of alpha/beta for enterprise, the majority of the Corona community would love to see it available to them including myself. [import]uid: 75643 topic_id: 25635 reply_id: 109927[/import]

This is one thing that I would definitely like to see as well. It is a feature that has left me considering if I should jump to a new platform.

However, I did notice that it was listed as part of the roadmap here: http://developer.anscamobile.com/forum/2012/05/25/prelim-roadmap

Although it did not make it to the roadmap that they posted in the blog. If it is truly available as part of the Enterprise package then I see no reason as to why it couldn’t be added to the regular package. I think it would benefit everyone if Ansca could step in and clarify this situation. [import]uid: 94248 topic_id: 25635 reply_id: 110646[/import]