Is there any other language I could develop roku channels in?
I have a lot more experience developing in c# javascript etc, but not so much with brightscript
Could unity3D Game engine be used develop channels? I saw some stuff on that but it seems like that just was a fluke.
I've heard that Netflix etc can use a NDK so presumably that's C/C++ - but it isn't available to us ordinary folk.
Someone did a cool trick with Webassembly:
https://community.roku.com/t5/Roku-Developer-Program/Running-C-C-Rust-on-Roku-It-works/m-p/628984
I saw a commercial product a couple of years ago which offered some sort of complete cross-platform dev experience but on further examination their Roku client was effectively remote-controlling a server which ran the actual app code and returned the UI as a bunch of images - probably very slow and it would have got pretty expensive with lots of users!
I'm not sure that any non-brightscript/scenegraph solution would get through Roku QA, so unless the approach is agreed with them up-front any non-standard strategy seems a bit risky.
Unless you are a major player (like a Netflix, Youtube, Amazon, etc.) the NDK isn't even worth asking about, they are extremely restrictive about it.
Many of the major channels just use Brightscript, the major developers with lots of channels (TheEndless for example) use Brightscript, and the rest of us of course also use Brightscript.
To say Brightscript is quirky language is an understatement, bit it works and works well for what it's intended for, once you get use to it, it's limits, rules, and various quirks and cliffs.
There are other options like BrighterScript and some of the channel generators, but in the end for the ability to totally customize a channel you will still be using Brightscript.
It has a serious learning curve, the documentation is there but doesn't go in much depth, and the forums will be your best friend for a while, but once you get the hang of it it starts to make sense and is more than useable. Just remember it's essentially an interpreted language (the compile is only cursory), and it runs on a $5-$10 CPU chip. If you trying to code like you would in VB/PHP/C#/etc. for a multi core CPU and expecting that level of power or performance from the language or channel you need to taper your expectations.
The NDK uses C (I believe) but they provide restricted access to it. They do provide an email address for inquiries about using it - my experience is that you won't even get a response.