57.10 Acceptable Use; Safety-Critical Systems. Your use of the Lumberyard Materials must comply with the AWS Acceptable Use Policy. The Lumberyard Materials are not intended for use with life-critical or safety-critical systems, such as use in operation of medical equipment, automated transportation systems, autonomous vehicles, aircraft or air traffic control, nuclear facilities, manned spacecraft, or military use in connection with live combat. However, this restriction will not apply in the event of the occurrence (certified by the United States Centers for Disease Control or successor body) of a widespread viral infection transmitted via bites or contact with bodily fluids that causes human corpses to reanimate and seek to consume living human flesh, blood, brain or nerve tissue and is likely to result in the fall of organized civilization.
Example companies doing that stuff:
Hmm. So, original part might be serious with a joke after or entirely some BS. Who knows.
As I said about Autodesk's offering, Stingray, I think that even a giant like Amazon is going to have an uphill battle bringing a new game engine into mass use. Having been testing game engines just this week, I'm reminded just how much of an ecosystem has built up around Unity in particular - displacing an engine with that is like displacing Wordpress as the dominant blogging engine.
It's early days yet but they've got some serious catching up to do. For example, it appears that 3D assets can only currently be created in Max and Maya (no Blender, no Cinema4d), as rather than using FBX or similar as an interchange format they're using their own custom formats with an exporter. Most other game engines stopped doing that a while ago, for good reason.
Likewise, the level editor is either underdocumented or feature-light. The docs currently just cover creating terrain and vegetation. I assume that the engine has the capability to handle non-outdoor scenes too, but it's not explicitly documented anywhere I can find in a quick look.
There's also no documentation on non-sky lighting, lighting builds, light types, or similar that I can find. There's one mention that the engine supports Global Illumination, but no details as to whether it's realtime or requires a bake process. Searching for "lighting", "lights", or "light" in the documentation returns no results!
Interestingly, there's a full-featured cinematics system, which means it's of considerable interest to me, but that's very much a minority thing.
I wish them luck and I'll certainly be checking it out, having said all that. Another fully open-source 3D engine is no bad thing.
Small correction; it is not open source: https://aws.amazon.com/lumberyard/faq/#Licensing
> Q. Is Lumberyard “open source”?
> No. We make the source code available to enable you to fully customize your game, but your rights are limited by the Lumberyard Service Terms. For example, you may not publicly release the Lumberyard engine source code, or use it to release your own game engine.
So according to them it's not even "open source".
If it is open source software (which this is emphatically and expressly not), it is FOSS.
You can charge as much as you like for FOSS.
Open Source is not the same as Source Available.
They've hired several ex-Crytek engineers at the Foundry 42 office in Frankfurt, and among other changes have modified the engine to support a 64 bit data in coordinate system and rendering, multithreaded physics, and independent physics grids for inside the larger ships while they're moving around. Probably other things, but those are the main ones.
Nearly every AAA game is going to fit into that pattern, it's just that the 64 bit coordinates overhaul in Star Citizen is probably a larger and lower level architectural change than what most things bother with.
Well, this is Amazon we are talking about - they like dancing to the beat of their own drum. They also forked Android.
More competition is good. It means Unity won't be able to stand still and we'll get to see more features and interesting ideas. Cloud + Twitch integration? Pretty cool!
There might be a lot of competing blogging engines, but there's only really about 3 that have any significant market share, and you can explain why each of them are has at least one radically superior feature to Wordpress in about a sentence and a half.
Alembic is an open 3D file format supported by pretty much all the major 3D modellers these days - including Blender, Modo, Houdini, Cinema4D and plenty of others besides the Autodesk tools.
Neither Unity nor Unreal currently support Alembic - this is the first indication I've had that the Amazon engine might have some features the others don't.
Speaking of which, Maya LT is not that badly priced for what you get - I have no animation ability but I've seen my friends do some incredible things with it. If you're artistically inclined, have a play. Regardless, the lack of Blender support makes me sad.
As a side note, Maya added Python as a scripting language a while back. You can also write plugins in C++, which can be a nice way to write custom exporter code sharing engine code files for file formats and such.
Q. Can my game use an alternate web service instead of AWS?
No. If your game servers use a non-AWS alternate web service,
we obviously don’t make any money, and it’s more difficult for
us to support future development of Lumberyard. By “alternate
web service” we mean any non-AWS web service that is similar
to or can act as a replacement for Amazon EC2, Amazon Lambda,
Amazon DynamoDB, Amazon RDS, Amazon S3, Amazon EBS, Amazon EC2
Container Service, or Amazon GameLift. You can use hardware you
own and operate for your game servers.
Q. Is it okay for me to use my own servers?
Yes. You can use hardware you own and operate for your game.
That's a LOT of money to spend up front on a gamble that something which has never happened before occurs with so little notice that you wouldn't be able migrate away first. It's hard to see anyone but the major players having enough economy of scale to see positive returns on that investment, much less having enough budget room to where that makes sense rather than spending the same amount of money on something which users actually see.
That gets to the other reason why this is so unlikely: raising prices in a predatory manner would be a loud message to every AWS customer to find alternatives. Since AWS generates something like 7-8 billion dollars a year that's an enormous amount of money to risk — far greater than any short-term return they'd see.
Actually, AWS does this all the time: for new or growing large scale users they offer a discount on the list price. Once the user is firmly embedded in AWS, they stop offering the discount. This can lead to an effective doubling of the cost of using AWS.
I know of one business where it took 4 years for Amazon to start dropping that hammer. A real killer for any maturing startup.
Yes, you could simply budget for the full price and set aside that money, but any smart executive will tell you that money is better invested in the company. Would you be willing to fire 10-20 employees with 1-4 years of tenure because Amazon decided you were tied enough to them to drop your discount?
The detail which I think techies are particularly prone to forget is that businesses deal with “lock-in” (i.e. contracts) all the time; it has downsides but managing those is routine. In particular, many businesses love to defer up-front costs into a structure where they only need to pay for actual usage.
This is about bundling decisions together that do not need to be bundled. Changing the game engine after the fact is about the hardest thing you can do, virtually impossible after a certain stage. The decision for the engine is necessarily a very very early one.
But you can easily and very likely need to improve your backend many many times, even far into the games development or after release. Limiting your options for that so early is very risky.
And your are right, that risk could be offset by some large enough benefit you only get with that engine. I just fail to see where that would be. I can still use all of AWS if I choose an independent game engine.
Q. Is Lumberyard “open source”?
No. We make the source code available to enable
you to fully customize your game, but your rights
are limited by the Lumberyard Service Terms. For
example, you may not publicly release the
Lumberyard engine source code, or use it to
release your own game engine.
57.6 Registration; Release. Before distributing your
Lumberyard Project to End Users, you must register it at
aws.amazon.com/lumberyard/registration. You must obtain our
prior written consent if the initial public or commercial
release of your Lumberyard Project is based on a version of
the Lumberyard Materials more than 5 years old.
That clause does not require any existing games to be updated.
It's about the first version, you just can't sit on your project forever and still use an old version of the engine when you finally go public. I see no harm in that clause.
>free AAA game engine
Doesn't being called that require that there are AAA games developed with it? According to wikipedia,
"In the video game industry, AAA (pronounced "triple A") or Triple-A is a classification term used for games with the highest development budgets and levels of promotion or the highest ratings by a consensus of professional reviewers."
So if it's an engine for games with highest development budgets, why would they care about the engine being free? Clearly choosing a free engine is a cost-saving measure, at which point you're no longer making an AAA game by definition.
Lumberyard looks like it's mostly CryEngine plus extras, and CryEngine has been used for a number of "triple A" games for a decade now. (including recent titles like Crysis 3, Ryse: Son of Rome, Star Citizen, Evolve, Homefront, State of Decay, etc).
Not necessarily. 2 of the most popular game engines, Unreal Engine and Unity3d, have very good free offerings now and many AAA games have been made with them.
You can have multi-million dollar development budgets and only be using "free" engines without issue nowadays.
So, if the point of your analogy is that this use of the AAA label is empty fluff, then, mission accomplished.
If they were just interested in getting developers, to use their cloud services. Wouldn't they simply release plugins for all major engines? And wouldn't Unreal and Unity be much more interesting targets (based on their usage in the industry), than CryEngine?
Got a little bleak when I saw CryEngine and C++. As someone who uses C# and Java it's becoming pretty clear I need to start learning C++ if I want to explore game dev.
I realize Unity uses C# but when I compare UE, Unity and CryEngine it really feels like Unity still has a long way to go. The features you get out the box with UE for example are far superior to Unity.
Anyway, I just went off topic. It looks like an interesting option for developing multiplayer focused games.
Depending on the graphical fidelity you're chasing Unity is probably the most polished of the 3 majors.
UE4 is a great tool but has a slower development cycle.
CryEngine is almost broken unless you're willing to do a deep dive in the source.
If by "explore game dev" you mean, "make games" Unity or UE4 will serve you well. UE4 has a nexus of great artists using the tool so recruiting artists that are familiar with the toolset is easier. Unity is some multiple of more productive, pending your skill level with C#.
I've evaluated all 3, am a proficient programmer in C++ and C#(among others), and have shipped several games with Unity. I've also worked on a couple of shipped titles with UE4.(nothing major)
On the other hand, Blueprints and the node-based material editor are really nice for quickly snapping content together.
Yea I think it is about time I gave Unity another go, and will set aside some time to go over some tutorials.
I just recall doing things like setting up path finding and AI was much easier in UE and setting up player characters etc was all already built into UE templates.
The whole UE IDE or workflow also just made more sense to me, and was more polished. Maybe I just didn't give Unity enough of a chance.
edit: I am a Java guy myself, and would like to do some amateur gamedev in that direction (online FPS), but im worried about above mentioned point.
There are plenty of production games that can live with < 10ms pauses.
I'm also not sure about the new c# -> to native compilers coming out.
For example GC.TryStartNoGCRegion
Or using array segments
Unity has made a lot to spread C# love among game devs, but it also gave a bad reputation to those unaware how .NET really is.
Not really. If you look to the future, I'd recommend Rust for making game engines. They by nature should be latency sensitive, and any kind of non deterministic behavior caused by garbage collector is really unacceptable.
Rust is a nice language, but Unity already uses C++ outside of the user-facing scripting layer.
Not everywhere. Phones, tablets and older or low end laptops are very popular.
In every other case, you're better off using a language whose resource management model doesn't fight you.
Swift is the best of both worlds in this regard.
Besides, it is not guaranteed that you'll succeed with a manual strategy for dealing with garbage. Naive strategies have a really low throughput. They may not stop the world, but will be slow.
Apparently we need to go through this cycle every few decades.
Garbage-collection has a bad name for some reason in game-dev circles, which maybe makes sense if you're developing a fast-twitch action game or shooter - a GC pause might drop enough frames to matter there, but for most games, Java or C# should be fine.
Are most games adventure, puzzle solving, or turn-based?
certainly "fast-twitch action games" and "fast twitch shooters" are a minority of all games.
The best selling console games are sports simulators and first person shooters. The next popular are open world RPG/action (Skyrim, Fallout), then we have fighting and racing games. 2.5D platformsrs are also popular now. All of these games need the deterministic guarantees of "fast twitched action games".
It's not so much performance as much as control. Objective-C is a lot slower than C++, but making action games in pure Objective-C is viable because you are still in control of a system that allows for deterministic resource cleanup and stable frame rate.
In the US, I'd say turn based RPGs and puzzle games are by far the least popular genre on consoles across the board. They may be most widely produced games, they are hardly the most widely consumed (
outside of Mobile).
I specified "fast twitch action", not just action. For instance, both of the open-world action games you mentioned are single-player only, so issues like lag and slowdown are less critical. Also, enemies in those games are almost always slow-moving- definitely no fast-twitch required.
For fast twitch action (not shooter), I might include things like street fighter, where button timing and reflexes are critical. Most 2.5d platformers I've seen would not suffer that much for the occasional dozen-millisecond GC pause. In fact, many of them have worse pauses than that for less prosaic reasons. ;-)
Swift's ARC is basically automatic boilerplate for resource management that's applied at compile time. It's extremely flexible in that you can also use raw pointers and manage memory manually if you want to. A native language with ARC as a passive option is a way better tool for making games than a garbage collected one on the VM, IMO.
I'll never understand why people think winking online is a socially competent thing to do.
You surely need it if you plan to work on high performance engines. Hopefully Rust will find its place there as well.
If you are coding with others, be prepared to deal with some kind of C with classes.
I mean, the closest thing to a title for this linked page would be the subheading:
> Amazon Lumberyard is a free AAA game engine deeply integrated with AWS and Twitch – with full source.
Not to mention the free to try and mature tools that developers already have (Unity, Unreal Engine, etc.)
Isn't that kind of Amazon's thing?
Basically, use it for whatever, free of charge, but not with any other cloud services that mimic amazon's services(2).
Except cloud services for some things, which are fine:
Your game may read and write data to platform services and public
third-party game services for player save state, identity, social
graph, matchmaking, chat, notifications, achievements, leaderboards,
advertising, player acquisition, in-game purchasing, analytics,
and crash reporting.
Hard to say, but like they say, you can't beat free.
If nothing else, a lot of people are going to download this and have a look at it and mess around with it.
Pretty exciting stuff. :)
So, it's a fair deal. You can use your own servers and not AWS for anything, but you can't use other web services which are competing with AWS. You can also modify source code as you see fit, but not distribute it. That's about it. Can't complain.
Still cool, but not as much as I'd thought.
From the FAQ: "Mobile support for iOS and Android devices is coming soon, along with additional support for Mac and Linux."
I'm unable to connect there from mobile and desktop Firefox.
Other than that, what value does it offer on top of Cry Engine that it uses?
If they're to add 2D support, it'll probably be a while. And it'll likely be something built using the 3D technology, unless they want to put in a lot of work to optimize for a 2D use.