Roku Developer Program

Developers and content creators—a complete solution for growing an audience directly.
cancel
Showing results for 
Search instead for 
Did you mean: 
pjforde1978
Level 7

How is Aquatic Life implemented?

Forgive me if this is a taboo question, but how does the Aquatic Life screensaver actually work behind the scenes?

I'm trying to figure out if it's just a video loop or a slick combination of animated models and shaders... given that I haven't seen anything that suggests 3D engine support, I figure that it's a pre-rendered video. I'd be thrilled to be wrong.
0 Kudos
7 Replies
Highlighted
Roku Employee
Roku Employee

Re: How is Aquatic Life implemented?

the latter, it's not a video.
it's NDK app and avail on the models with OpenGL (... which i think is all current ones)
0 Kudos
pjforde1978
Level 7

Re: How is Aquatic Life implemented?

Thanks for the reply.

Is there a meaningful path for a mortal to work with the lower-level SDKs at this point? I would love to be able to work in a 3D rendering context, even if the environmental constraints are harsh.

CreateObject("roScreen3D")

Come on, you know you want to... Smiley Happy
0 Kudos
pjforde1978
Level 7

Re: How is Aquatic Life implemented?

@RokuNB let's try this again...

I take from the silence that we're a long ways off being able to access the GL rendering layer. Sad, but we can move on.

When I look at the Roku opening sequence, I see a combination of perspective flips and reflections. Coming from the HTML world, we got some pretty powerful tools in the form of the transform and perspective CSS directives:

https://3dtransforms.desandro.com/

box-shadow, scale, rotate, duration, easing and a capable gradient function that could be applied to SG nodes would open up extraordinary creative possibilities for Roku apps: carousels are just the most obvious and immediate example.

I don't know how your engineering team decides what features to bring to the platform, nor do I pretend to understand what's hard vs impossible inside of the black box. However, if there's a conversation to be had...
0 Kudos
2dguy
Level 7

Re: How is Aquatic Life implemented?

"RokuNB" wrote:
the latter, it's not a video.
it's NDK app avail on the models with OpenGL (... which i think is all current ones)

What's an "NDK app"? Sounds like this is perhaps a native app which gives you more power/features than using BrightScript?
0 Kudos
Jerel2u
Level 7

Re: How is Aquatic Life implemented?

FWIW this is the Marine Aquarium application written by the guy over at www.serenescreen.com. It’s available for Windows, Mac, and of course Android since Roku is Android. There is an iOS version but not for recent versions of iOS. There are a ton of options, but I can’t figure out if any are available on the Roku version. You can control the number and type of fish, bubbles, lighting, etc. It is by far the best such app I have ever encountered. Being a screensaver is not the author’s primary intention, though that is how most people use it. He just lowered the price to $14.95 late last year and it is well worth it, IMHO.
0 Kudos
destruk
Level 10

Re: How is Aquatic Life implemented?

Roku is Android?  That is news to me.
0 Kudos
Roku Employee
Roku Employee

Re: How is Aquatic Life implemented?

No, Roku OS is not Android.  Smiley Happy
0 Kudos