[HN Gopher] Epic acquires RAD Game Tools ___________________________________________________________________ Epic acquires RAD Game Tools Author : jsheard Score : 111 points Date : 2021-01-07 18:38 UTC (4 hours ago) (HTM) web link (www.epicgames.com) (TXT) w3m dump (www.epicgames.com) | gman83 wrote: | If Epic wanted to make a video game streaming service like | Stadia, the video compression knowledge these guys have could | come in very handy I imagine. So maybe it's not just about Unreal | Engine, but about making the Epic store in to a streaming | service. | shmerl wrote: | What is the point of making custom codecs for Bink, instead of | using state of the art free codecs? | azornathogron wrote: | (I don't work in the industry, but am an interested amateur) | | [Edit- I may have misunderstood your question, but I'll leave | my reply anyway.] | | Here are some possible reasons you might use Bink instead of a | free codec: | | - Bink video has been around for a long time as a product, even | though the _codec_ has been updated (probably multiple times, I | don 't know). There weren't always good-enough free codecs, and | if you have prior experience integrating Bink with your stuff | then you may prefer to stick to something you know is good even | if it costs money. | | - RAD focuses on producing libraries that are very easy to drop | in, specifically in the context of games. They know how game | code is written and structured. They know game developers want | to be able to integrate video in a way that works -- and | performs reliably -- within an existing game engine that does a | lot of custom management of textures/buffers/graphics memory. | State of the art free codecs don't necessarily have free | libraries that are actually high performance and easy to | integrate within a game context. | | - Your state of the art free codec might work great on a modern | smartphone or PC, but good luck getting it to work on a | Nintendo Switch or whatever weird console you're targeting. | Bink is available for whatever game-specific platform hardware | you're targeting. | megameter wrote: | It's a combination of patents, features, target devices, and | marketing proposition. There are many devices with hardware | decoders that work great for watching a TV show, but if you're | using video for interactive assets as games do, you probably | have latency targets to hit, you might want seek-through | performance, you may want transparencies, and so on. And RAD | has long had a lock on really supporting the platforms game | devs are using, so if you use their stack instead of bodging | together a video solution, you're saving time overall. | nothis wrote: | It always seemed like RAD makes the kinds of tools you want as a | developer who likes to run its own core systems and license | powerful components for key issues. To think these tools will now | be locked into the bloated Unreal Engine makes me feel a bit sad. | It's like a lot of game companies get bought up by giants in a | "just because we can" fashion, recently, and I can't help but | wonder how this de-prioritizes quality and diversity in the | industry. | zerocrates wrote: | It certainly could happen down the road, but the post says the | opposite for the time being, that they'll continue to support | usage outside Unreal Engine. | jcalabro wrote: | That's awesome! Congrats to the RAD team and Epic! Epic certainly | has acquired a world-class team. Also, I've been a long time fan | of Jeff's podcast, it is irreverent and hilarious if you haven't | checked it out! | | https://jeffandcaseyshow.com/ | bexsella wrote: | There's a lot of focus here on Bink, but Oodle has a fascinating | history as well. From world-class compression | ratios/decompression speeds to being implemented in hardware by | Sony in all PS5s. RAD have a great history of getting exactly the | right people that are interested in their fields and are great at | what they do. | | I echo the sentiments of many when saying I am surprised no one | had scooped them up earlier (although I doubt it wasn't for lack | of offers). | [deleted] | [deleted] | mappu wrote: | The history of RAD is a history of media read speeds - playing | back full-motion video from a CD on a PS2 with its near-zero | available CPU resources was a superhuman effort. | | So low-overhead (fast) decompression is essential for AAA titles. | But recently I guess developers think disks are fast enough now, | because PC games have been using more uncompressed assets to free | up CPU time, massively bloating install size. Current-gen | consoles also all have NVMe SSDs. | | Given this trend, RAD's heyday was definitely in the days before | consoles had NVMe disks (Bink in particular let games punch far | above their weight) so this might be a nice forever-home. | | Blame Intel for not making faster CPUs, and consumers for | tolerating massive install sizes, i guess. | | The other angle to this story is that the PS5 has a hardware | decode unit for RAD Kraken. To get the best use out of the PS5 | hardware, it's essential that the encoder is still made | available. This is a huge competitive moat. (PCs probably won't | get a comparable decompression accelerator card and such a card | wouldn't get enough market penetration anyway.) | manfredo wrote: | I heard that the main issue with decompressed assets was audio, | not video (granted, video is image and audio so one is a strict | superset of the other). One game - Titanfall or a CoD game, | IIRC - had something like 20 GB of uncompressed audio in a 35GB | installation footprint. Rationale was saving CPU cycles. | | Meanwhile here I am with a sound card in my desktop PC for no | real reason anymore :\ | gameswithgo wrote: | every aaa game still uses rad tools. compression is still a | thing for various reasons: fitting more textures in the | gpu/ram/etc. for instace, with decode happening on gpu | tomc1985 wrote: | It seems weird to use specialized video decode hardware when | videos are almost always played in a full-screen exclusive | fashion. Like, other than loading, what is the CPU doing during | those times? | kevingadd wrote: | Videos have been used frequently for all sorts of other stuff | in games since the playstation, if not earlier. In StarCraft | the portrait of your selected unit was a movie file (RAD | smacker, I think? But I don't have a copy of starcraft lying | around to double check). | | Supergiant Games' titles since Bastion all use RAD's Bink | codec to store offline renders of their character models (as | movies) instead of traditional sprite sheets or realtime | rendered 3d models, so they're playing back dozens of movies | at all times. | | As another reply mentioned, it's also standard at this point | for loading screens to be movies. | incrudible wrote: | To be clear, Kraken is for general compression, not video. | | Of course you can do video decoding in software, that's what | Bink is. It can do 4K60 on a PS4 CPU. | Impossible wrote: | I worked on COD:AW and we used video in game often. The lead | UI artist would have used it significantly more if | performance was better. Might be an exception but it's not | uncommon, I've worked on multiple titles with full 3D and | video playback at the same time | neurostimulant wrote: | Aren't bink videos can be rendered as textures? A lot of | games use such effects on in-game objects (e.g. tv playing | real videos). | jan_Inkepa wrote: | Video game loading screens, for instance. | megameter wrote: | While the codecs have been central to RAD nearly from the | start(Miles was the first product, closely followed by | Smacker), the talent pool they have is exceptional across many | other categories relevant to Epic - so there is an element of | aquihire here, even considering the IP. It's probably a good | time to exit since the alternative would mean coming up with a | sufficiently awesome next-gen thing again, and even with | experienced hands, that can be a moonshot. | cma wrote: | I'm sure Sony didn't burn kraken decompression into hardware | without a license saying all their third party devs can use the | compressor for Sony's PlayStation console (and future ones for | backwards compatibility at least) in perpetuity. | xienze wrote: | Man, Epic is absolutely flush with cash. They're moving their HQ | down the road a mile or so by buying a dying mall for $100M and | hiring 2k more employees. | ineedasername wrote: | Well, they're a bit company right now, still riding the revenue | success of Fortnite and the potential of their launcher/store. | So investors are interested, including Chinese investors that | own a decent swathe of shares. I just hope they don't become | such huge industry giants that they stomp on anything with a | faint smell of competition. | ameen wrote: | Sony recently infused Epic with $250M for 1.4% | | Source: https://www.sportspromedia.com/news/sony-epic-games- | minority... | xienze wrote: | I'm just amazed with what Fortnite has done for them. I pass | by their current HQ regularly and it's pretty modest. You'd | never suspect that's the HQ of such a successful company. I | was surprised to learn they're still taking funding. I | figured they were pulling down absurd profit. | ameen wrote: | Their legal challenges with Apple might've put a dampener | hertzrat wrote: | I've been using unreal for the past 6 months to make a game. It's | not as easy to get started with as unity is, but if you are good | at figuring stuff out then it's just a powerhouse. The renderer | is incredible, the workflows are modular, you can work in a data | driven way, you can modify skeletal animations in-engine, | performance is amazing, etc etc etc. It's also stable, and non- | production ready features are clearly identified as beta or | experimental. | | I wish this was next week so I could post a link to my alpha | build at the bottom of this post | mikepurvis wrote: | Lots of love for Bink, but Bink's predecessor is an earlier video | codec/format called Smacker, which was especially for 8-bit | colour palettes, where the palette (or part of it) might be fixed | due to being needed by UI elements outside the video, but some or | all of it may be allowed to vary/rotate as the video played. | | I first encountered Smacker videos in Caesar II (which even | shipped smkplay.exe on the disc so you could play them from | outside the game), but they were used for a lot of games of that | era, including a bunch of early Blizzard titles like Warcraft 2 | and StarCraft. | anthk wrote: | RAD had an amazing software renderer on par on the Unreal one. | eutectic wrote: | RAD's Charles Bloom has a blog (https://cbloomrants.blogspot.com) | which is excellent for anyone interested in high-performance | programming. Especially compression. | jo032 wrote: | fabien giesen, also at RAD, has a very informative blog as | well. https://fgiesen.wordpress.com/ | | they have a seriously impressive group of developers | duskwuff wrote: | _Especially_ compression. The compression provided by RAD Tools | is nothing short of otherworldly -- it can provide compression | ratios comparable to XZ, but with decompression speeds more | along the lines of what you 'd expect from gzip (or even | better). | | I hope that Epic does something interesting with what RAD has | built here. Taking it more proprietary (e.g, halting new | licensing) would be a huge blow for the industry. | caeril wrote: | Everyone who works there is extremely talented. Fabien, Sean, | Allen, etc. Jeff has a very keen eye for it. | | He's funny, too. Highly recommend The Jeff and Casey Show for | podcast content. | mrec wrote: | Not just high-performance, his "Library Writing Realizations" | post is also well worth a read whatever domain you're working | in. | | http://cbloomrants.blogspot.com/2015/09/library-writing-real... | astlouis44 wrote: | As far as I know, they are one of the few video game compression | companies out there. Undoubtedly this is amazing news for Unreal | Engine 4 devs, but for those not using the engine this is going | to be a bit of a blow. | | On the plus side, this opens the doors for a "Pied Piper, but for | games" style startup to come out of nowhere and take big market | share. | scrollaway wrote: | Pied piper did have a whole subplot about compression in the | context of reducing VR video game bandwidth latency. You might | be more spot on than you think :) | astlouis44 wrote: | Yup! Shameless plug btw - but my startup is working on a | suite of tools for gaming on the web, that includes advanced | compression libraries. | egypturnash wrote: | "RAD will continue supporting their game industry, film, and | television partners, with their sales and business development | team maintaining and selling licenses for their products to | companies across industries - including those that do not | utilize Unreal Engine." - the article | | How long this will last is anybody's guess, of course. | randtrain34 wrote: | For those interested in what RAD Game Tools actually makes, as | far as I understood from their website | (http://www.radgametools.com/): | | Bink 2 - video codec Oodle - data compression suite Telemetry - | profiling toolkit Granny 3D - toolkit for building 3d games Miles | Sound System 10 - sound authoring toolset in 2D and 3D | bluedino wrote: | What's amazing is they have made these same products for | like...25 years? | manfredo wrote: | Pretty much. Though they've periodically updated them to use | new techniques like animation blending. I think there's also | a lot of work in optimizing for different platforms. And | perhaps more importantly, there's a lot of work in making the | middle ware easy to integrate. Ease of integration is often | more important than performance for a lot of middleware. | | I've seen their logo on tons of games. I never knew they were | a local company (Kirkland, WA near Seattle). | scrollaway wrote: | Really hoping epic takes the opportunity to give Bink a more | open license, to be honest. Much as I appreciate how advanced | Bink was at the time, i don't know any dev that still use it | given that av1 and such are just Good Enough. | Jasper_ wrote: | Bink isn't the codec, though that's good too, it's the | software stack. How do you render AV1 on a PS4 or a Nintendo | Switch, synchronize it with the audio stream? No, seriously, | tell me. | | GStreamer with its ridiculous threading architecture and | lock-heavy approach? You think that's going to run on a | console CPU? ffmpeg / libavcodec? Yes, we can hook that up, | have it crank out YUV buffers and display those on the GPU, | or we can just use Bink. Yes, it costs a ton of money, but | based on when I evaluated it last, it was almost twice as | fast as libvpx on our target platforms, it was well-suited | for games (worked well with custom allocation strategies, | didn't start a bunch of threads by itself, integrated well | into our renderer), was easy to integrate, the toolchain was | lovely, and when we needed help with a bug, we got an email | back the same day from Jeff. RAD's support is top-notch. | | Multimedia is not too big of a problem that a company like | Epic can probably spend a few days integrating libvpx and | opus to make a custom video solution, but big enough that | most smaller studios with custom engines don't have time to | spend on that, and those are the sort of problems that RAD | likes to tackle. | scrollaway wrote: | SDL has always been the stack of reference when | implementing your own engine, as far as I've seen in game | dev. Now that is probably not the case for AAA games like | cyberpunk etc, I don't follow as much tech there. But yeah, | I've never seen gstreamer used for that. Curious if you can | elaborate bout your experience especially wrt. the switch | like you were mentioning downthread, I'm super curious. | zamadatix wrote: | PS4 and Switch both have hardware decoders (though neither | would be using AV1 in particular due to age). I'm not sure | about how it works on PS4 but on Switch games just use | NVDEC like a PC with Nvidia hardware would and the | functionality is exposed in the SDK. You can use h.264, | h.265, VP8, and VP9 (the hardware supports more but it's | not exposed). | | When Bink was released and the PS2 and Gamecube were on the | horizon this kind of thinking was needed. When you get to | PS4/Switch you're just running consumer PCs. The exact same | Nvidia SoC used in the Switch is actually used by Nvidia | for their Shield Android TV boxes whose literal purpose is | to play audio/video streams - it's quite capable of doing | so. | Jasper_ wrote: | I can't go into more detail because these platforms do | not have any public documentation, but this is not true, | you cannot use NVDEC. And it doesn't cover audio or | synchronization. | zamadatix wrote: | Without referencing non-public documentation | https://yuzu-emu.org/entry/yuzu-nvdec-emulation/ | | "The Switch uses NVDEC along with VIC (Video Image | Composer) in the GPU for video decoding. Games are | exposed to higher level APIs by Nintendo which abstract | the configuration of these modules." | | If you're using a custom engine which does not want to | use these APIs you're of course free to do it yourself | (and deal with how you're going to syncronize it and the | higher resource utilization) but most major titles use | the built in hardware decoder provided via the API. | sudosysgen wrote: | Gstreamer and FFMpeg would certainly run on a Switch, a | PS4, or whatever else. We know this because it runs on | devices with the same processor. | | That said, yes, Bink certainly is a more turnkey solution, | which can definitely make business sense to use. This is a | byproduct of consoles being closed platforms. | Jasper_ wrote: | When I say "run", I mean "runs at target performance". | Yes, sure, Turing completeness technically means that | software raytracing "runs" on the Switch, we all know | that, but it's not a viable solution for a shipping | product. | | This is not a biproduct of consoles being closed | platforms, multimedia is a challenge everywhere; cross- | platform, usable multimedia playback lacks a high quality | product even on open PC platforms. | sudosysgen wrote: | FFMpeg and Gstreamer both run on both Nvidia Tegra | hardware and AMD Jaguar/Bulldozer at 4K 60fps. | gameswithgo wrote: | doom uses bink cyberpunk uses bink | medecau wrote: | shows up on cyberpunk 2077 splash screen | jsheard wrote: | It doesn't appear to be mentioned on the site, but they also | collaborated with Sony to develop the hardware decompression | unit in the Playstation 5 | azornathogron wrote: | Basically any game you've played that has any pre-rendered | video (for cutscenes, logos, whatever) most likely uses Bink | video for it. | | Their stuff is very well regarded and widely used. | | At least that is the impression I have got, watching from | outside the industry. It's always possible that I've got a | distorted view as an outsider. | koala_man wrote: | > Basically any game you've played that has any pre-rendered | video (for cutscenes, logos, whatever) most likely uses Bink | video for it. | | Unless it was a DOS game from the 90s, in which case it may | have used its 256 color predecessor Smacker. | | It's amazing how this tiny company has managed to stay | relevant through decades of huge technological shifts. | libraryatnight wrote: | Almost all of these logos show up at the beginnings of my | games. Cyberpunk most recently comes to mind. | moonchild wrote: | You need extra newlines. Reformatted: | | Bink 2 - video codec | | Oodle - data compression suite | | Telemetry - profiling toolkit | | Granny 3D - toolkit for building 3d games | | Miles Sound System 10 - sound authoring toolset in 2D and 3D | mrkramer wrote: | These guys are my heroes! ___________________________________________________________________ (page generated 2021-01-07 23:00 UTC)