pjforde1978
Visitor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-25-2019
06:58 PM
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.
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.
1 Solution
Accepted Solutions


Community Moderator
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-21-2021
04:05 PM
You can take a look at Roku's screensaver documentation for how to build a screen saver. There is also a set of sample channels on GitHub that demonstrate how to do this.
12 REPLIES 12
NB_
Roku Guru
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-26-2019
01:24 PM
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)
it's NDK app and avail on the models with OpenGL (... which i think is all current ones)
pjforde1978
Visitor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-26-2019
10:42 PM
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... 🙂
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... 🙂
pjforde1978
Visitor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-30-2019
01:42 PM
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...
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...
2dguy
Visitor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-03-2019
03:14 AM
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?
Jerel2u
Reel Rookie
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-27-2019
03:48 PM
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.
destruk
Streaming Star
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-28-2019
10:54 AM
Re: How is Aquatic Life implemented?
Roku is Android? That is news to me.


Roku Employee
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-30-2019
01:26 PM
Re: How is Aquatic Life implemented?
No, Roku OS is not Android. 🙂


Community Moderator
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-21-2021
04:05 PM
You can take a look at Roku's screensaver documentation for how to build a screen saver. There is also a set of sample channels on GitHub that demonstrate how to do this.
ArtP
Newbie
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-22-2021
11:41 AM
Re: How is Aquatic Life implemented?
I don't know how it's implemented, but I do know one thing ... I keep waiting for the moray eel to jump out a grab one of those tasty reef fish!