Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Dismiss Notice

Cryengine now has C# & more!

Discussion in 'General Discussion' started by N1warhead, Mar 19, 2016.

  1. Dheen Doha

    Dheen Doha

    Joined:
    Jan 1, 2015
    Posts:
    10
    Omg,
    He didnt derail anything if so then most of the people here done it for the discussion being c# support and other new features of cry engine .
    Most of the people are just busy comparing two engines.
    Irritation is a common aspect too.. especially in unity forums.

    I can give an n number of evidence if u asks for.

    I asked u to define troll just to understand if u thinks it means "criticizing unity"

    Shame.
     
  2. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    Well, yeah. It's the same for every studio that has available engine tech that develops games. id. Crytek. Epic. All of them make the engine specifically for their own games. Carmack was first to say that if your engine could do first person well, it can do any game well. He's right (if you're not talking about 2D). Hop to the present day, and you find that Epic only optimised it's engine for character rendering and so forth when Paragon required it.

    Unity doesn't operate like that so Unity is only driven to optimise something when it's users keep whining about it. Which isn't very practical for all of us working around said bottlenecks. Unity doesn't make it's own games and has received constant flack for this, as well as justifying it. I'm sure it's justifiable - anything is - but the fact remains for as long as Unity lags behind in performance, it'll get criticised.
     
    tatoforever likes this.
  3. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    Come back in a week. I did suggest you be cool, but you weren't.
     
    iamthwee, Ryiah and Farelle like this.
  4. Deleted User

    Deleted User

    Guest

    Well yes and no, Unity isn't "generic" it has specific tools to deal with 2D games. As CE and UE do for creating 3D games, a generic tool is notepad ++ in which you could create anything but it'd take you a silly amount of time to do so.

    In short it's very project specific really, Unity has ample amounts of "specific" 2D tools, UE has some 2D tools, CE has none. UE has 3D game frameworks which cover nearly all 3D game types, CE has a smaller subset and Unity has none.

    CE has limitations on size of terrain, UE's is much larger but they both have a map based boundary streaming system built in with a bunch of tools / engine side components for foliage etc. etc. They have specific rendering / lighting components like skylights and TOD systems etc. specialised physics integrations etc. AI systems etc. etc.

    So it always comes down to this, use the right tools for your project or you could find yourself in for a world of pain. It's worth doing a proper eval of Unity / CE / UE / Stingray to make sure they suit your needs as you'll be spending a long time in them..
     
  5. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    Unity is plenty generic. For example if you want all your foliage rendered quickly, then you do it the generic way, in 5.4 this means with generic instancing, and a generic culling scheme. Could it be improved a lot by having a specific vegetation system? Answer is yes of course. Will it? probably not. It'll probably just use the standard instancing Unity's come up with and fit in the standard culling pipeline.

    While performance probably won't change much from the dedicated version, when you push it hard, that's when the differences show.

    If someone at Unity wants to correct or chip in some thoughts, that would be really great. I'd hate to be talking about things that aren't correct.
     
  6. Deleted User

    Deleted User

    Guest

    Thing is, why do you need instancing for a top down or 2D game? You'd never render enough within the frustrum in a close camera top down to ever require that sort of stuff. So it's made to solve specific issues, hence forth not generic.

    Yeah, we're getting down to semantics here but the point is CE and Unreal use instancing, which you again can use for many things. So are they also generic? Not really.! Umbra / Enlighten etc. aren't "generic", but can be applied to many things.

    http://docs.cryengine.com/display/SDKDOC2/Automatic+Geometry+Instancing

    It comes down to this, how much work is it going to be to create my project? What is best suited to get me through it as quickly / efficiently as possible with the best results. They all have strengths / weaknesses, so spend time choosing the best one for your game.. It can make all the difference.
     
  7. Kev00

    Kev00

    Joined:
    Dec 6, 2016
    Posts:
    229
    Well... After several months of development in Unity, I thought I'd attempt to port my game to the CryEngine 5.3 using C#.

    For those who are interested. Here are my first impressions thus far.... .. I'm struggling.

    After two days of watching tutorial videos, reading documentation and forum posts, I'm left with questions and a sense of feeling overwhelmed, but I suppose that's to be expected.

    First off, I had a hard time just creating the sample app C# project. The launcher is nice and slick, but doesn't do enough to make your life easy. I had to right click on the .cryproject file to generate the solution file for VS, and then watch in horror as something called "CMake" error-ed out. After installing CMake I still couldn't create the project file. Sadly, I had to use a workaround and wait for the fix in version 5.4. But that's ok, I can forgive them for this injustice, but I can't say its a good sign for a AAA game engine.

    Here is what I've looked at so far.

    UI
    Creating a UI is very simple if you chose to do it in code. Otherwise you have to use flash action script and connect it to the cry-engine via xml. I personally hate flash, so I refuse to even touch it. With that said, creating a UI via code is simple enough for me so I'm not too worried about porting my game UI over.

    Terrains
    You get one per Level (scene) and that's it. They look amazing, but at this point I have no idea how I would even begin to manipulate them in code. ITerrain is apparently the interface I need to review. This is good because at least (unlike the Unreal 4 engine) they are editable at runtime.

    Animations
    At this point, the pipeline looks complicated and tedious. It has an FBX importer that allows you to import animations, skeletons, and meshes separately, but many of the FBX mocap animations I tried to import didn't work. Animation blending is complex and I have not idea how to do Animation Triggers or Retargeting. Thankfully there are two plugins for Blender that can help. Best pipeline I found was Fuse -> Mixamo -> Blender -> CryEngine.

    Code
    I'd say they are "Similar" for some odd reason. CryEngine implements an entity component model. So you won't miss GetComponent<> or Instantiate<>(), and exposing class members to the editor (SandBox) is just as easy.
    As a coder, I'm very happy with the class architecture of the CryEngine. It's intuitive and sensible, and in many cases I was able to use Intellisense alone.

    With the very narrow review I've done so far, I think they have a long way to go before they begin to capture a mainstream audience. The engine is fantastic, but the content pipeline and the lack of tutorials create a barrier to entry. They really do need a Unity to CryEngine transition guide (at least Unreal has one).

    For me, I think I'd rather push Unity to its rendering limits and spend time polishing my assets than deal with the learning curve and complexity of the CryEngine content pipeline.
     
    Last edited: Aug 23, 2017
    Alverik likes this.
  8. Meltdown

    Meltdown

    Joined:
    Oct 13, 2010
    Posts:
    5,797
    You know Lumberyard is probably a much more polished version of CryEngine right?
     
    Ryiah likes this.
  9. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    20,026
    It's definitely not a good sign for a company that is trying to attract the same general audience that Unity and Unreal have proven are good to attract, but from the standpoint of a AAA developer the problem isn't as bad as you make it out to be and the above quote is an excellent example of this.

    A AAA studio would have read the documentation that comes with CryEngine, or at least would have hired someone who was familiar with them, and would have known that CMake was required all along.

    Basically if you believe it isn't a good sign for a AAA engine, keep in mind that's because it's aimed at AAA developers.

    http://docs.cryengine.com/display/CEMANUAL/Project+Launcher+Tools
     
    Last edited: Aug 23, 2017
  10. SteveJ

    SteveJ

    Joined:
    Mar 26, 2010
    Posts:
    3,066
    Do you know what else "has C# & more!"? UNITY!

    Stop shopping engines and just make some goddamned games :)
     
  11. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    20,026
    Kiwasi likes this.
  12. elmar1028

    elmar1028

    Joined:
    Nov 21, 2013
    Posts:
    2,353
  13. FMark92

    FMark92

    Joined:
    May 18, 2017
    Posts:
    1,244
    Alverik, hippocoder and Meltdown like this.
  14. Kev00

    Kev00

    Joined:
    Dec 6, 2016
    Posts:
    229
    Well I think CryEngine's million dollar indie development fund is at least an indicator that they are trying to branch out to a different audience. And for that purpose alone, all these technical exceptions and gotcha's need to be streamlined. But sure, put words in my mouth and continue to exalt the virtues of the unity community.
     
  15. Kev00

    Kev00

    Joined:
    Dec 6, 2016
    Posts:
    229
    Yeah, I was just looking at the API and documentation for Lumberyard. The only problem is that it doesn't support C# yet, which would make porting my game much more time consuming. In addition, like CryEngine 5, I'm not seeing an Animation Re-targeting system. Mecanim is saving me a ton of time.
     
  16. Kev00

    Kev00

    Joined:
    Dec 6, 2016
    Posts:
    229
    Yes, well...I told myself this foray into madness would only last a week.
     
  17. neginfinity

    neginfinity

    Joined:
    Jan 27, 2013
    Posts:
    13,301
    It is interesting that they're using CMake, though - I didn't know that. It is a fairly popular tool, but it is a programmer's tool, and not a newbie tool. That would indicate that CryEngine is not really newbie friendly.
     
  18. Kev00

    Kev00

    Joined:
    Dec 6, 2016
    Posts:
    229
    Yeah, but keep in mind that indie development support is in beta right now. They have a ton of features in development, including Animation Re-targeting and Mono 5. At this point, I think it's best to hold off reviewing it until the launcher and the core features indie developers need are complete. The good news is that they are serious.
     
  19. LaneFox

    LaneFox

    Joined:
    Jun 29, 2011
    Posts:
    7,381
    What is this? Is it like dummy support? I'm not sure what this is supposed to mean.
     
    hippocoder likes this.
  20. neginfinity

    neginfinity

    Joined:
    Jan 27, 2013
    Posts:
    13,301
    Software is never finished.

    Someone (hippo?) mentioned Amazon Lumberyard, perhaps you might want to try that one? It is Cryengine based.

    Also, rather than calling that "indie" a better idea to use "beginner". Since they're using CMake and unfriendly import toolchain, it means they're more suitable for powerusers and people with traditional programmer training, and not beginner programmers.

    So to summarize it: it is "beginner-unfriendly".
     
  21. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    20,026
    I'm not putting words in your mouth. The quote comes directly from your own post. I'm simply pointing out that the difficulties you encountered with CryEngine exist as a result of the fact that the engine was not originally intended for developers who are not power users (thanks to @neginfinity for the term I couldn't think of last night).

    Like you suggested though, and I completely agree with you, this isn't a good thing from the perspective of a developer who is trying to attract a non-power user developer base like the one Unity and, to a lesser degree, Unreal have been attracting.

    Personally I wouldn't waste my time with CryEngine. They're a company that is struggling to the point they practically gave away an older release of their engine to a potential competitor for just enough funds to make one more go at it. I have no confidence in their ability to turn their situation around.

    The bad news is that they are on borrowed time. Part of my reason for having no confidence in them is that they completely lack a money-making strategy. There are no licensing fees nor royalties for CryEngine V. That's a doomed strategy.
     
    Last edited: Aug 23, 2017
    Alverik and Meltdown like this.
  22. Kev00

    Kev00

    Joined:
    Dec 6, 2016
    Posts:
    229
    Well, in this case the CryEngine didn't previously support C# solutions, so I'd argue that it has nothing to do with the CryEngine being a AAA engine or not.

    With that said, obtuse solution generation issues are painful reminders of programming in the early 90s.... so don't think that professional programmers are going to give them any degree of slack on that particular issue. Power user or not, I'm not looking for a trip down memory lane. :)

    That's a good point, but I'll bet amazon is giving them a ton of cash for Lumberyard. Last I read, it was a $50 to $70 million dollar deal.
     
  23. Kev00

    Kev00

    Joined:
    Dec 6, 2016
    Posts:
    229
    No, what I mean is that they are still working on the tools (like animation re targeting) that indie developers and small teams need to reduce workload.
     
  24. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    20,026
    CryTek has approximately 550 employees. Your average developer has a total cost (salary, insurance, retirement, etc) of approximately $100,000. What may seem like a lot of money is in reality only about one year for a company of their size.

    Of course that requires them to have been paid at all. Their employees have been claiming for a while now they're unpaid.

    https://www.polygon.com/2016/12/10/13908156/crytek-employees-not-paid
    https://www.pcgamesn.com/crytek-wage-crisis-black-sea-studio
     
  25. LaneFox

    LaneFox

    Joined:
    Jun 29, 2011
    Posts:
    7,381
    Thats not "indie support", thats a new feature that offers substantial value to any developer.
     
    hippocoder likes this.
  26. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    Well I hope they do better if they are struggling. It's never nice to see anyone in trouble, specially with so many jobs at risk.
     
    Kiwasi likes this.
  27. Kev00

    Kev00

    Joined:
    Dec 6, 2016
    Posts:
    229
    Of course it offers substantial value to everyone. But larger AAA teams typically have enough resources and/or their own custom tools to cope with the extra workload.
     
  28. Kev00

    Kev00

    Joined:
    Dec 6, 2016
    Posts:
    229
    I agree, the more the community grows and the more competition we have in the market the better.
     
  29. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    Yep except anyone who competes with me, they can eff off.
     
  30. Player7

    Player7

    Joined:
    Oct 21, 2015
    Posts:
    1,533
    I didn't know that about the terrain system, kinda sucks.. but hey at least you can still put holes in it :) I really wish they had kept the voxel terrain system they had back in the earlier CE versions.. that looked like something that was truly useful for making sweet terrain environments directly in editor.

    Still I have hopes that CryEngine will get better and become more 'beginner' friendly in its feature set... the C# entity component based is very promising. 5.4 was a little late and still not bringing all that 'beginner' friendly stuff.. they really need a better way to do GUI's that does not require external tools.. like UE and Unity have built in though somewhat naff on both sides.

    I see the move as particularly genius.. sell an old engine for a millions, then develop a better one afterwards ( I guess the plan doesn't suck if you still retain your core lead engineers who made it, it's got to be a little disheartening to see your tech used by another company.. no fking wonder they wanted redo it all, then again if you hire new developers they'd likely want to redo parts aswel.. plan negatives? I don't see any :D )

    Also I think they did end up spending a year helping Amazon with the one they sold to them. The only downside is that they sold it for millions to a company that rakes in billions lol. So of course Amazon are going to be able to throw money at developers to push forward on the old CE engine they got off Crytek. Still I don't have much interest in lumberyard I see it a bit like Stingrey engine.. both companies have large amount of money to throw at these areas of game development.. but do I really want to work with them? I mean just go look at there community forums.. they both suck. Look at Crytek's.. much nicer :) I just go there to check the site out and see if any of there developers have bothered to say anything usually not which is a problem though.

    ..still I do look at the engine for its better aspects.. maybe by CryEngine's 5.6 release they will have taken care of a lot of the current issues and it even better for smaller teams and individuals to do stuff with and I may actually make a game with it, then I can start off where Unity stopped at 5.6 lol :D because it headed to this silly year<point>release based versioning (that looks silly on a tshirt btw, still waiting on my bug tester tshirt to arrive, no I won't quit after I get it :p) ... jk I'm invested in Unity as long as I have unfinished games to finish.. then still invested in them if they are successful to further develop.
     
    MarkusGod likes this.
  31. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    20,026
    Except like I said the money at best only sustains a company of their size for one year and the purchase took place back in the beginning of 2015. Since then the company has shut down studios in five countries, sold off one of the studios they had previously acquired to Sega, and have failed to pay their employees.

    What may look like a genius move to some honestly looks like a desperate move by a desperate company to others. This is especially true if you think about how Unity and Unreal were already doing this. After all is it truly a genius move if everyone else has proven it to be successful and you're the last one to do it?
     
    Last edited: Aug 23, 2017
    Kiwasi likes this.
  32. snacktime

    snacktime

    Joined:
    Apr 15, 2013
    Posts:
    3,355
    Ya I think the writing is on the wall for Crytek. The amazon deal is actually a sign of how weak they are IMO. If they could have branded Unity or Unreal for a reasonable sum, I'm sure they would have preferred that.

    My gut is that Amazon like normal is thinking long term here, and if they pull it off it puts Crytek in a very weak position. Say Amazon has 80% or so of the cry engine user base. They can pretty much dictate their terms. They most likely could have already to some extent, but are waiting to see how it goes getting market share.

    Amazon doesn't need to actually get a lot of market share here they are just out to see what the numbers look like. If they look good, that's when the big push will come.

    That's all completely speculative but something like that is where my money is.
     
  33. Kev00

    Kev00

    Joined:
    Dec 6, 2016
    Posts:
    229
    I think that regardless of what happens to CryTek, the CryEngine will be around for several years in one form or another.

    IMO, learning CryEngine is not a fools errand since skills acquired are transferable to Lumberyard.
     
  34. Kev00

    Kev00

    Joined:
    Dec 6, 2016
    Posts:
    229
    Yeah, the terrain system is limited in that way, but at the same time it's very powerful and looks amazing. Terrains can be divided into sectors and each sector can have it's own resolution.

    The terrain system in CryEngine its not a good/perfect fit for my game since I'm generating several terrains at runtime, but at least it's editable at runtime, unlike the Unreal 4 engine.

    It's might be of benefit to note that CryEngine has some really great free terrain levels that are masterpieces. You can learn a lot by studying how they are constructed.

    They are certainly on their way to becoming more "beginner" friendly. In fact, I think their new component entity model is deliberately similar to Unity.

    With that said, I agree with you. In fact I think I'll wait for version 5.6 or so before I again attempt another port. The vast majority of my game logic is in separate class library anyway so porting it to another engine isn't all that difficult.
     
    Last edited: Aug 24, 2017
  35. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    20,026
    Learning new engines should be approached in the same manner as learning new programming languages. Only learn a new one when you have some need for it. Anything else is a complete waste of time. For an experienced game developer learning a new engine should be a short task since very few engines are wildly different in how they work.
     
    Last edited: Aug 24, 2017
  36. Kev00

    Kev00

    Joined:
    Dec 6, 2016
    Posts:
    229
    I can certainly respect that opinion. In fact, I dare not list the dead technologies I know that permanently occupy space in my mind rent free.
     
  37. zenGarden

    zenGarden

    Joined:
    Mar 30, 2013
    Posts:
    4,538
    They are not weak, it's a matter of very bad decision they made, it stays a popular fast and prooven AAA grade 3D engine.
    There is differences with Lumberyard that must be considered if you are publishing a game like licensing, new features or scripting language if you're not going C++ (C# is lot better in Cry Engine and it is less verbose than Lumberyard Lua).
    CryEngine keep getting interesting features and tools ( www.youtube.com/watch?v=1Npi_jYOqDc ), while you can still benefit from their very advanced and optimized character AI system for example.