Subject: General Tech | September 1, 2015 - 04:24 PM | Scott Michaud
Tagged: unreal engine 4, unreal engine, ue4.9, ue4, epic games, dx12
For an engine that was released in late-March, 2014, Epic has been updating it frequently. Unreal Engine 4.9 is, as the number suggests, the tenth release (including 4.0) in just 17 months, which is less than two months per release on average. Each release is fairly sizable, too. This one has about 232 pages of release notes, plus a page and a half of credits, and includes changes for basically every system that I can think of.
The two most interesting features, for me, are Area Shadows and Full Scene Particle Collision.
Area Shadows simulates lights that are physically big and relatively close. At the edges of a shadow, the object that casts the shadow are blocking part of the light. Wherever that shadow falls will be partially lit by the fraction of the light that can see it. As that shadow position gets further back from the shadow caster, it gets larger.
On paper, you can calculate this by drawing rays from either edge of each shadow-casting light to either edge of each shadow-casting object, continued to the objects that receive the shadows. If both sides of the light can see the receiver? No shadows. If both sides of the light cannot see the receiver? That light is blocked, which is a shadow. If some percent of a uniform light can see the receiver, then it will be shadowed by 100% minus that percentage. This is costly to do, unless neither the light nor any of the affected objects move. In that case, you can just store the result, which is how “static lighting” works.
Another interesting feature is Full Scene Particle Collision with Distance Fields. While GPU-computed particles, which is required for extremely high particle counts, collide already, distance fields allow them to collide with objects off screen. Since the user will likely be able to move the camera, this will allow for longer simulations as the user cannot cause it to glitch out by, well, playing the game. It requires SM 5.0 though, which limits it to higher end GPUs.
This is also the first release to support DirectX 12. That said, when I used a preview build, I noticed a net-negative performance with my 9000 draw call (which is a lot) map on my GeForce GTX 670. Epic calls it “experimental” for a reason, and I expect that a lot of work must be done to deliver tasks from an existing engine to the new, queue-based system. I will try it again just in case something changed from the preview builds. I mean, I know something did -- it had a different command line parameter before.
UPDATE (Sept 1st, 10pm ET): An interesting question was raised in the comments that we feel could be a good aside for the news post.
Anonymous asked: I don't have any experience with game engines. I am curious as to how much of a change there is for the game developer with the switch from DX11 to DX12. It seems like the engine would hide the underlying graphics APIs. If you are using one of these engines, do you actually have to work directly with DX, OpenGL, or whatever the game engine is based on? With moving to DX12 or Vulcan, how much is this going to change the actual game engine API?
Modern, cross-platform game engines are basically an API and a set of tools atop it.
For instance, I could want the current time in seconds to a very high precision. As an engine developer, I would make a function -- let's call it "GetTimeSeconds()". If the engine is running on Windows, this would likely be ((PerformanceCounter - Initial) / PerformanceFrequency) where PerformanceCounter is grabbed from QueryPerformanceCounter() and PerformanceFrequency is grabbed from QueryPerformanceFrequency(). If the engine is running on Web standards, this would be window.performance.now() * 1000, because it is provided in milliseconds.
Regardless of where GetTimeSeconds() pulls its data from, the engine's tools and the rest of its API would use GetTimeSeconds() -- unless the developer is low on performance or development time and made a block of platform-dependent junk in the middle of everything else.
The same is true for rendering. The engines should abstract all the graphics API stuff unless you need to do something specific. There is usually even a translation for the shader code, be it an intermediate language (or visual/flowchart representation) that's transpiled into HLSL and GLSL, or written in HLSL and transpiled into GLSL (eventually SPIR-V?).
One issue is that DX12 and Vulkan are very different from DX11 and OpenGL. Fundamentally. The latter says "here's the GPU, bind all the attributes you need and call draw" while the former says "make little command messages and put it in the appropriate pipe".
Now, for people who license an engine like Unity and Unreal, they probably won't need to touch that stuff. They'll just make objects and place them in the level using the engine developer's tools, and occasionally call various parts of the engine API that they need.
Devs with a larger budget might want to dive in and tweak stuff themselves, though.
Unreal Engine 4.9 is now available. It is free to use until your revenue falls under royalty clauses.
Subject: General Tech, Graphics Cards, Shows and Expos | March 4, 2015 - 05:52 PM | Scott Michaud
Tagged: GDC, gdc 15, nvidia, epic games, ue4, unreal engine 4, PhysX, apex
NVIDIA and Epic Games have just announced that Unreal Engine 4 developers can view and modify the source of PhysX. This also includes the source for APEX, which is NVIDIA's cloth and destruction library. It does not include any of the other libraries that are under the GameWorks banner, but Unreal Engine 4 does not use them anyway.
This might even mean that good developers can write their own support for third-party platforms, like OpenCL. That would probably be a painful process, but it should be possible now. Of course, that support would only extend to their personal title, and anyone who they share their branch with.
If you are having trouble finding it, you will need to switch to a branch that has been updated to PhysX 3.3.3 with source, which is currently just “Master”. “Promoted” and earlier seem to be back at PhysX 3.3.2, which is still binary-only. It will probably take a few months to trickle down to an official release. If you are still unable to find it, even though you are on the “Master” branch, the path to NVIDIA's source code is: “Unreal Engine/Engine/Source/ThirdParty/PhysX/”. From there you can check out the various subdirectories for PhysX and APEX.
NVIDIA will be monitoring pull requests sent to that area of Unreal Engine. Enhancements might make it back upstream to PhysX proper, which would then be included in future versions of Unreal Engine and anywhere else that PhysX is used.
In other news, Unreal Engine 4 is now free of its subscription. The only time Epic will ask for money is when you ship a game and royalties are due. This is currently 5% of gross revenue, with the first $3000 (per product, per calendar quarter) exempt. This means that you can make legitimately free (no price, no ads, no subscription, no microtransactions, no Skylander figurines, etc.) game in UE4 for free now!
Subject: General Tech | March 1, 2015 - 09:11 PM | Scott Michaud
Tagged: quixel, GDC, gdc 15, ue4, unreal engine 4, gdc 2015
You know that a week will be busy when companies start announcing a day or two early to beat the flood. While Game Developers Conference starts tomorrow, Quixel published their Jungle demo to YouTube today in promotion of their MEGASCANS material library. The video was rendered in Unreal Engine 4.
Their other material samples look quite convincing. The vines on a wall (column in this case) is particularly interesting because it even looks like two distinct layers, despite being a single mesh with displacement as far as I can tell. I don't know, maybe it is two or three layers. It would certainly make sense if it was, but the top and bottom suggests that it is single, and that is impressive. It even looks self-occluding.
Pricing and availability for the library is not yet disclosed, but it sounds like it will be a subscription service. The software ranges from $25 to $500, depending on what you get and what sort of license you need (Academic vs Commercial and so forth).
Subject: General Tech | October 26, 2014 - 11:15 PM | Scott Michaud
Tagged: square enix, kingdom hearts 3, unreal engine 4, ue4
I did not report on this the first time because it did not seem like a credible rumor. As it turns out, they were citing an interview with the game's director from Famitsu, the Japanese video game magazine. Basically, while Square likes to make their own engine to use with their RPG projects, their Luminous Engine did not satisfy their needs so they decided to shift production to Unreal Engine 4. While it is still not scheduled to come to the PC, we know that the engine feels at home on our platform.
Image Credit: Wikipedia
It seems pretty clear that Kingdom Hearts was not moved to Unreal Engine 4 for PC support. That would just be silly. More likely, their internal engine might have needed a little extra development work and, especially with the vastly different art styles of Kingdom Hearts and Final Fantasy, they moved the two release dates further apart. Maybe they will even release Kingdom Hearts 3 earlier than intended?
But, if it does come to the PC, it seems somewhat more likely that it will function better than Final Fantasy XIII does. That title was locked to 720p with a few odd quirks, like Esc being the equivalent of "/qq" despite even Alt+F4 giving a warning prompt, and that it seems to require a keyboard to close (I could not find a way to close the game with the gamepad or mouse alone). That said, while a tangent-to-a-tangent, I did like the option to have the original, Japanese dub. Yet again, I digress.
This was not the first time that Square has developed an RPG on Unreal Engine. The Last Remnant, for the Xbox 360 and PC, was developed on Unreal Engine 3. Kingdom Hearts 3 does not have a release date, but it might be sooner than we expect (and probably much earlier than Final Fantasy XV).
Subject: General Tech | May 4, 2014 - 04:14 AM | Scott Michaud
Tagged: Unreal Tournament, unreal engine 4, unreal, ue4
Unreal Tournament will make a comeback. This Thursday, on the official UnrealEngine Twitch.tv channel, Epic Games will make some announcement about the future of the franchise. The only other concrete information that we have is in the original tweet from Paul Meegan, their vice president of product development for about a year and a half.
— Paul Meegan (@PaulMeegan) May 2, 2014
So, Unreal Engine 4 dev community and Epic. That could mean any number of things but it sure seems to suggest that the community will have an active hand in its development. As our readers know, UE4's licensing structure has transitioned from an undisclosed, large fee upfront and a percentage of revenue to a small monthly subscription (and five percent of revenue). Full source code is provided to these licensees.
Perhaps the game is not, itself, the product?
Or maybe it is. Who knows. I just get an... off... feeling from the structure of this preannouncement (and that is not a bad thing). It is set to occur on the stream where they record Unreal Engine training videos. They explicitly mention "UE4 Dev Community + Epic". Why the community so front and center?
According to Edge, Epic is currently working on three titles: Fortnite, an unannounced mobile game, and an unannounced "high-end next generation title". The mobile title is currently in pre-production and will not be "formally announced for some time". This, of course, leaves one of two possibilities: it is the "high-end next generation title" or Epic is not counting it as an official title, for some reason.
Going a little further, Fortnite is said to be PC exclusive. If Unreal Tournament is their high-end next generation title, it will either be their only offering on the next generation consoles, or they do not have a planned offering on a next generation console.
As fun as it is to speculate, I should be clear that this is entirely speculation. We will know more when Epic makes their announcement, Thursday at 2PM EDT.
Subject: General Tech, Mobile | April 27, 2014 - 01:50 AM | Scott Michaud
Tagged: unreal engine 4, ue4, epic games
Epic Games has just incremented the minor version number of their popular engine by releasing Unreal Engine 4.1 to all subscribers. While the dot-zero was available privately for quite some time, it was made public barely a month ago. Its headlining feature is a few extra platforms: Linux, SteamOS, Xbox One, and Playstation 4. Each of these are included in the 19$ per month and 5-percent royalty agreement -- excluding outside fees, such as those required to become a registered developer with Sony and/or Microsoft, obviously.
You will also need a capable Windows PC to deploy a game to Playstation 4, Xbox One, Linux, or SteamOS... "for now". This implies that development on other platforms is being considered. Development from OSX seems likely, as does Linux, but creating games on an Xbox One or Playstation 4 seems a bit far-fetched. Who knows though? If any company has good enough relationships with Sony and Microsoft to make it happen, it would be Epic.
— Ray Davis (@EpicRayD) April 25, 2014
I am guessing... Dreamcast support is a "no". It was not that ahead-of-the-curve.
The actual update notes are just shy of 7000 words and about 20 pages long, so platforms are not everything. Epic has been adding a lot of content and templates to the engine and their marketplace, including the Elemental demo first seen at E3 2012. The editor was also updated with numerous improvements, such as better FBX importing (FBX is a cross-application 3d file format).
Also, it is available now.
Subject: General Tech, Graphics Cards | December 13, 2013 - 05:43 PM | Scott Michaud
Tagged: webgl, ue4, UE3, asm.js
Its shortcoming is the difficulty and annoyance when hand coding (without compiling it from another language). The browser is used more by encouraging the adoption of web standards through discouraging the usage of web standards. You can see where the politics can enter.
Still, it makes for great demos such as the cloth physics applet from James Long of Mozilla or, more amazingly, Unreal Engine 3. The upcoming UE4 is expected to be officially supported by Epic Games on asm.js (and obviously WebGL will be necessary too) but, of course, Epic will not prevent UE3 licensees from doing their own leg-work.
NomNom Games, a group within Trendy Entertainment (Trendy is known for Dungeon Defenders), became the first company to release a commercial 3D title on these standards. Monster Madness, powered by Unreal Engine 3, runs in web browsers like Mozilla Firefox and Google Chrome without plugins (although it will fail-down to Flash 11.6 if your browser is unsupported for the web-native version). Monster Madness is a top-down cell shaded shoot'em-up.
You can play, for free, with an anonymous token here. You can also visit their website to learn more about the closed beta for registered accounts. It is natively supported on Firefox, Chrome, and Opera. I am not entirely sure why IE11 is not supported, now that Microsoft supports WebGL, but there is probably a customer support or performance reason for it.
Subject: Editorial, General Tech, Shows and Expos | June 6, 2013 - 05:42 PM | Scott Michaud
Tagged: unreal engine 4, ue4, E3 13, E3, computex
We are bleeding through the overlap between Computex and E3 media windows; this news has a somewhat relevant fit for both. Unreal Engine 4 is coming and I expect we will see one or more demos and UE4-powered titles over the next week. In fact, I would be fairly shocked if we do not see the end of the Elemental Demo with the Xbox One E3 keynote. We may also potentially see Unreal Engine 4 running on mobile devices and maybe even HTML5 at some point throughout the tradeshow, either canonically through Epic or via a licensee product.
This morning, Epic opened the Unreal Engine 4 Integrated Partners Program (IPP). Of course they already have a couple of members, most of which were partners with Unreal Engine 3.
The founding IPP partners are:
Wwise from Audiokinetic
- Manages large databases of sound effects and voice-overs
- Manages subtitles and multiple dubbings of voice clips
Autodesk Gameware from Autodesk
- Contains multiple packages including Beast, Navigation, and Scaleform
- Scaleform is a Flash rendering engine for HUDs, menus, etc. developed using Flash Professional in 2D or 3D. It is what StarCraft II, Mass Effect, and Borderlands uses.
- Beast is a lighting toolkit for global illumination, radiosity, etc.
- Navigation is an AI solver, predominantly for pathfinding.
Simplygon from Donya Labs
- Reduces polygon count of models so they take up less processing resources especially as they get further away from the camera.
Enlighten from Geomerics
- Another Global Illumination solver, most popular usage being Battlefield 3.
SpeedTree for Games from IDV
- Makes a bunch of efficient trees so studios do not need to hire as many minimum wage peons.
Intel Threading Building Blocks (TBB) from Intel
- Helps developers manage C++ threading for multicore systems.
- Deals with memory management and scheduling tasks
morpheme from NaturalMotion
- Animation and physics software for designers to create animations
- Works with NVIDIA PhysX
euphoria from NaturalMotion
- Simulates animations based on driving conditions via the CPU, most popular usage being GTA IV.
PhysX and APEX from NVIDIA
- You probably know this one.
- GPU-based rigid body, soft body, fluid, and cloth solvers.
- Allows for destructible environments and other complex simulations.
Oculus Rift from Oculus VR
- You probably also know this one, especially if you keep up with our Video Perspectives.
- Head-mounted display with motion tracking for VR.
Bink Video from Rad Game Tools
- ... is not included! Just kidding, that stuff'll survive a nuclear apocalypse.
- Seriously, check in just about any DirectX or OpenGL game's credits if it includes pre-rendered video cutscenes or video-textures.
- I'll wait here.
- In all seriousness, Rad Game Tools has been licensed in over 15,500 titles. It's been a meme to some extent for game programmers. This should be no surprise.
Telemetry Performance Visualizer from Rad Game Tools
- Allows developers to see graphs of what their hardware is working on over time.
- Helps developers know what benefits the most from optimization.
RealD Developer Kit (RDK) from RealD
- Helps game developers create stereoscopic 3D games.
Umbra 3 from Umbra Software
- Determines what geometry can be seen by the player and what should be unloaded to increase performance.
- Sits between artists and programmers to the former does not need to think about optimization, and the latter does not need to claw their eyes out.
IncrediBuild-XGE from Xoreax
- Apparently farms out tasks to idle PCs on your network.
- I am not sure, but I think it is mostly useful for creating a pre-render farm at a game studio for light-baking and such.
We still have a little while until E3 and so we do not know how E3 will be, but I highly expect to see Unreal Engine 4 be a recurring theme over the next week. Keep coming back to PC Perspective, because you know we have a deep interest in where Epic is headed.
Subject: General Tech, Shows and Expos | May 18, 2012 - 04:24 AM | Scott Michaud
Tagged: E3, unreal engine 4, ue4
Epic Games has demonstrated Unreal Engine 4 behind closed doors at GDC a few months ago. First screenshots have been released from that demo although not much more has been made public about it. While not completely epic, it definitely is exciting. Unreal Engine 4 is expected to be further unveiled at or near E3 in June.
Epic has been quiet about the next generation of their game development platform. Only a handful of lucky individuals were shown the demo at the GDC and those who did could not share their experience. Epic has said that they would have liked to publicly demonstrate their product, but were unable to due to non-disclosure agreements that they themselves were placed under.
I think that guy needs some thixomolded magnesium alloy. He seems to be running a little hot.
Either he’ll cool down, or produce a beautiful white bloom.
(Screenshot Credit: PC Gamer)
Wired claims that Epic will unveil the rest of Unreal Engine 4 in June which likely means that it will occur on or around the E3 press conference.
It is thus easy to speculate that whatever gagged Epic will likely be unveiled at E3 too.
The major hook of the demo was that it was running in the editor and not in a baked game executable. This means that developers will have a much easier time creating their game and will also have to spend much less time preparing to work. About the only concrete tidbit in the article is that Unreal Engine 4 will not have baked lighting. Unreal Engine 4 will likely use a technology similar to Battlefield 3 where global illumination is calculated at runtime -- nearly a must for properly lit destructibility.