[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)