Hi, thought I'd chip in to address some of what you guys have raised here.
Firstly,
this is an expensive feature! If your machine struggles with large parks as it is, adding the decoding cost of 6 videos to it
will tank your framerate. It's very easy to shoot yourself in the foot here, so use videos sparingly if your machine's not too powerful. Fortunately images are much much cheaper, so (with the obvious caveat that all images consume memory, and high-resolution images devour it) go nuts with those!
When you do use videos, we've imposed pretty much no limits on what you can do with them. If you want to decode 8K video, we aren't going to stop you. If you want to add 60 different videos all playing simultaneously, we're still not going to stop you. We won't even stop you if you want all those 60 videos to be 8K (although we won't accept liability if this melts your CPU). These are obviously extreme examples, but they lead into a couple of suggestions to keep your game performing a little better.
- Firstly (and this is the obvious one), lower resolution, lower framerate videos are much cheaper to decode. If you're only running the game in 1080p/30, there's no point whatsoever adding a video encoded at 4K/60 - and given that at any one time the videos probably occupy a pretty small area of the screen, I'd suggest you probably don't realistically need to go above about 360/480.
- Secondly, for duplicate videos that aren't attached to sequencers, we share decoders. So it should be very nearly free to add more billboards showing the same video, as long as they're not triggered as part of a sequence (in which case they get their own decoders, because we thought it best to start the video from the beginning when it gets triggered). It's adding more different videos that starts to get expensive.
All of the video decoding is done CPU-side for now (if async compute were available to us we'd grab it with both hands, but sadly it's not). So to the one saying about how the 1060 couldn't handle all the videos, unless your CPU is a many-threaded monster (a thydra? sorry, bad pun) you could put two 1080Tis with it and it wouldn't make a difference
For people who need to convert videos, try to take your chances with the online converters - there are more of them than I'm going to go through testing but from looking on here it seems people have found some that work.
The choice to support WebM was driven mostly by licensing concerns, rather than technical ones. WebM is a completely open container, and the spec only allows open codices for playback, so by choosing this we know nobody can suddenly burn us with an unexpected royalty bill. By the same token, I'm afraid you shouldn't expect MP4 support round the corner.
Rest assured we thought of making use of an alpha channel! That's something that's very much sitting in the "might be nice if" category rather than being a feature we're committed to adding though, so no promises. It's something with which you could do some pretty cool stuff, but it isn't something that would slot in terribly nicely with the implementation we have, so there will probably be lower-hanging cool feature fruit elsewhere!
There's better news on the rotation front - a portrait/landscape switch is very much on the cards. No timeline or firm promise, but it's on my to-do list.
For people who had videos that won't play, I don't know exactly what your problems will be, but there a couple of things that might have gone wrong.
- Firstly, just changing the extension to ".webm" is not enough. You actually have to convert the file contents - there are various posts around the forum about tools people have found to do this.
- Secondly, don't use VLC to transcode them! I'm fairly sure VLC doesn't set all of the timecodes properly in the file, so a lot of the files it produces won't play well.
- Thirdly, if you try one encoder and it doesn't work, that
might be a problem with the encoder. It's definitely worth trying another tool to encode the video.
Hope at least some of that helps at least some of you!