Guesses based on what hasn't been done before and what other modern engines are doing:
Real-time global illumination
No more loading screens in-between levels
Euphoria style interactive animation
Cloth simulation, maybe something like SpeedTree... just your average package of AAA engine tools
A better terrain engine and generally less antiquated geometry handling in the level editor
Destructible environments (Red Faction 1 style... great for gameplay, could be the new "gravity gun")
Some AI wizardry. TBH, I don't expect too much from this, AI didn't get much more interesting since HL1, basically.
Really good sound.
Fluid simulation? Literally the last thing not being done yet in terms game physics yet. But a bit of a stretch.
Interesting sidenote: Speedtree middleware logo used to appear on one of the game's old box art. Speedtree is a middleware focused on generating trees and forests that appear in a lot of games today.
The trees in NMS today aren't Speedtree trees - they're trees HG created on their own. HG's trees are still entirely procedural but not as procedural as the ones generated by Speedtree middleware. The differences are not so important though but let's just say - Speedtree relies more on algorithm so it can be stretched to create way more variations of trees than humanly possible. HG's trees uses the game's reference system and heavily relies on an artist's discretion for it to create diversity.
For most part, the trees in NMS are generally diverse enough - people just have to "stop by and smell the flowers" to actually see and appreciate the differences.
Cool stuff. I really, really like the idea. Forests looked kinda sterile so far (until you inevitably set them on fire) .
I wonder if the Wube guys consider having a look at this. Those Speedtree folks are working for ages on a lightweight, easy-to-use system to have waving forests in games with little impact on performance. Iirc the Total War series used it since Rome back then.
Might be worth a look instead of reinventing the wheel.
I'd give SpeedTree a second look, I think it's what you are looking for... http://www.speedtree.com/
PS: Just so you know - they do have a library of trees and bushes...
> Creating trees/buildings/rocks/vegetation from algorithms
Speed tree is actually pretty popular: http://www.speedtree.com/
There's a human creator one out there too, but I haven't seen it used a ton: http://www.makehuman.org/
I'm sure there is a building one somewhere too.
Let's use Saint's Row 3 as an example, as it's one of their highest profile recent titles. They already use OpenSSL and libcurl, presumably for various online features. The engine seems to be in-house, at as middleware it uses at the very least Wwise, SpeedTree, and Havok. Havok is supposedly available for Linux (http://www.havok.com/products/physics), SpeedTree claims the same (http://www.speedtree.com/video-game-development.php), and Wwise does NOT claim Linux support (but does support Android). Because SR3 has a PS3 port, it should have a reasonably modular graphics back end, so in theory it should be an "easy" Linux port, of a similar scale to UT3.
But WINE would probably be cheaper.
I recommend this guy (works with some former SOE devs now):
https://www.youtube.com/user/TeslaUE4
and this one:
https://www.youtube.com/user/MetalGameStudios
For trees and grass I'd take a look around on http://www.speedtree.com/ . Aside from that you can get Blender (free) or Maya/3Dsmax (not free unless you have a .edu email adress) to create your own objects, character models,... But that's more or less advanced stuff.
I don't think it's so much a cost issue, but a time issue. We know how to hire and distribute work across hundreds of artists and crunch out releases every year. On the other side distributing work across hundreds of programmers is a far less well understood problem. You probably could hire 20 programmers, let them work for five years and produce something interesting, but you couldn't hire 100 to get the same work done in a year.
That said, there are a few niches where (offline-)procedural generation is being used heavily in the industry, Speed Tree is probably the best known example.
This is a category known as "cutting edge technology." Which means you have to build the technology, because it isn't a commodity. The techniques involved are still only haltingly understood, and not commonplace. Most of the demos you see are rough-and-ready implementations of a basic algorithm like Perlin Noise, and need further customization to be turned into a really nice implementation for your game.
(That said, if you look for very specialized usages of procedural techniques, there are products like Speedtree out there.)
I am setting it up correctly. This is actually a known issue with Forward Rendering + SSAO
The way that you described browsing through a forest made me think of game dev programs like Unity or Unreal, where I fly around using the keyboard and mouse. From a UI perspective, that could work, but you would need really good filtering tools, so I can easily filter my forest down to just oak trees, or trees with a height of less than 20 feet, or christmas trees, or whatever. Maybe have a general search bar, from which I could type in "oak" or "height<20ft", but hide most of the more complex filtering options in Advanced Search?
I also think you should consider how you're going to differentiate yourself from existing programs. I'm not an expert in tree generation, but it looks like SnappyTree and SpeedTree do a lot of what you described, with SnappyTree being the free option and SpeedTree being the professional one. Is the big difference between your program and theirs the more intuitive Forest UI? If so, I suggest putting a lot of energy into making your UI really clean and user friendly, so users aren't put off by your UI just because its not what they are used to. I also suggest examining the UI of both the programs I mentioned to see what they do right, and more importantly where you could do better.
Oh, and one more thing: No matter how intuitive your program is, you still need good tutorials and documentation!
Edit: I forgot to mention price. If you can deliver something high quality without the expensive subscription of SpeedTree, I think that people will be interested, regardless of your UI.
You could create a game without any external programs. But in the end you might want to create your own assets. But there are some free animation packs on the market place as well as some textures and all that kind of stuff.
If you don't want to create all the art by yourself you can take a look around at:
And the UE4 market place.
>Yeah, but why would you want your graphics engine to be running your physics processing? That's what physics engines are for (and there are several good ones out there).
if you watch the video, it mentions UE3 uses the APEX (Nvidia's) physics engine.
people seem to forget that unreal engine is not simply a "graphics engine" it is a complete toolkit for sound, AI, visuals, physics, editor, and many other things. it has lots of middle-ware integrated (under license ) such as "Spreedtree" and Nvidia's "Apex", etc to give dev's everything they need to realise their potential.
Over time software libraries were created/improved to optimize various graphics effects and some would take advantage of the specific hardware used in the ps3/xbox360.
For example, SpeedTree creates plants with algorithms for procedural generation. To oversimplify it, you can make 1000 bushes for only slightly more computing power than 1000 copies of the same bush but they will all look different and more real.
>The trees on starkiller base weren't even that big, it takes maybe 10 years for a tree to grow to that size here on earth. Throw in the fact that these are alien trees on an alien world growing under alien conditions and nothing seems particularly out of the ordinary.
They were pretty tall and dense though. Those kinds of forests don't just spring up in a couple decades.
Plus, you're completely ignoring that Ilum was being mined to all hell and had several chunks taken out of it in places. Typically, areas that are being mined don't just bounce back quickly.
>You seem to be assuming that just because the immediate area surrounding the only location we saw on a planet was covered in ice and snow implies that the entire planet was covered in ice and snow, to the extent that there was no vegetation what-so-ever.
I'm wrong to assume that a planet follows the typical one-biome rule that most Star Wars planets follow? Especially when the parts we see from space indicate snow, ice, and glaciers?
Space Colonization is a really cool algorithm, but has its limitations.
My guess is that Treemagik and Forester use a specialized L-System. Definitely a ton of work to create convincing procedural generations of various trees.
You should also check out SpeedTree.
> there are no reasons to take procedural generation to a higher degree
Yes there is. It is still a perfectly valid way to generates things artist can't make fast enought.
Trees are the obvious example. Check out http://www.speedtree.com/.
There are currently software companies out there that license out specific computer programs that do nothing but render realistic, non-repeated crowds for just such scenes.
The same way companies like Speedtree exist only by making the best algorithms for beautiful tree generation, M.A.S.S.I.V.E is a program that makes crowds.
Outsourcing PCG directly would be even riskier, however someone like a PCG consultant/contracter would be seen as less risky but still a bit dangerous. There's quite inconsistent use of outsourcing in the games industry at the AAA end QA might be partially outsourced by the publisher but art is sparingly outsourced. At the indie end it's a lot more flexible and open to the idea of outsourcing but there's less money to pay for it.
I think middleware would be an excellent way to get more PCG into games. Speedtree is really quite commonly used for example. Inverse Procedural Generation (which still uses PCG techniques really) might also be a lot easier to sell to risk averse devs and artists or designers with high standards.
Generalised PCG might be tough to pull off though. I could imagine a library with lots of different facilities you could plug together but it would be orders of magnitude harder to actually develop than a specialised PCG tool like Speedtree.
For generating trees and foliage you want Speedtree. Many games and movies use it such as Witcher 3, Farcry Primal, Star Wars Force Awakens, The jungle book, Batman V Superman, etc.
SpeedTree for example is a software for making trees and it is used in a lot of games. There is in principle nothing to stop somebody from doing the same thing for 3D characters and software like Makehuman or Poser exists, but it's mostly used for offline rendering, not in games.
I guess at this point in time the effort that goes into modeling a 3D human is relatively small compared to all the rigging, animation, clothing and motion capture work that needs to be done to integrate it into the game. So it's easier to just start from scratch, then reusing an already existing model and hoping that it will fit the requirements.
Some exceptions do exist, Miis and Xbox Avatars have been reused in many different games, but those are obviously much more cartoony then the realistic models seen here.
Yes, there is a thread on Speedtree forum abou UE4 integration http://www.speedtree.com/forum/showthread.php?3401-Leaves-rotating-and-disappearing-on-UE4-with-Oculus-Rift-when-I-move-my-head. I will try to follow their guides and add mesh on the outer layer of foliage to see if it makes any difference.
This youtube playlist is a pretty detailed official tutorial on materials in the engine all the way from basics which should be helpful. 4 and 5 in particular goes over masks and how to use them to have 2 different sets of material parameters show up within the same material.
As for those textures in particular, a cursory look over them seems like they would be fine, except their dimensions seem to not be power of 2 which can outright break some realtime engines and cause performance or texture filtering problems on others so they might need cropping (and you'd have to ensure that they still tile afterwards if that's also needed).
For trees I have no specific recommendation, on the high end there's things like Speed Tree which is a library and authoring tool that specializes in vegetation and has tradtionally had good integration with unreal. After that any FBX either from the marketplace or Turbosquid should be okay.
You won't get free ones most of them you have to purchase. There's also Blender another free powerful 3D software and learning modelling is a pain. Mixamo's Fuse is only $19 or pay $30 a month on Maya LT and watch this tutorial video. Maya LT.
Also you can get the full version of Maya LT for $795 either physical or digital no subscription.
EDIT: SpeedTree is also a good software. LINK HERE there's a free version for Unreal Engine 4 users as well when 4.3.0 was launched.
Simple example: Speedtree was used in Oblivion and probably also in Skyrim to make trees. Much cheaper and faster to buy that technology than make it in-house, but buying it doesn't mean you can let other people use it.
Half-Life 2 got lots of praise for the physics engine, but Valve licensed the Havoc physics engine as the basis for this.
>They used speed trees.
SpeedTree is software API for procedurally generating foliage on trees. It allows games to have different looking trees and changing leaves + performs animation. See a picture here:
http://www.speedtree.com/gallery/images/img460bd5edb0d68.jpg
Without it you end up with lots of similar, static looking trees (like Morrowind). They used the software in Skyrim too.
I think this is your third or fourth response attempt to my comment. I imagine you took off the earlier height map response when you found it was used in Morrowind too and the other comment about there being a way to select various items to be randomly placed automagically when you found there wasn't one. I won't argue that Oblivion was bland, but I will stand that the primary reason was the lack of unique assets.