Announcement

Collapse
No announcement yet.

Official C# Support?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    #16
    I wanted this when I started but I've gotten used to C++ combined with blueprints. I prefer this now. There was an unofficial project by someone at MS but I don't know the state of that.

    Comment


      #17
      Originally posted by Raildex_ View Post

      Lul. what about the other way round. Like what about Unreal Users coming to Unity? I DEMAND C++ IN UNITY.
      See how stupid it is to demand something like this?
      It will be stupid if you demand c++ in unity for gameplay logic code.
      For Unity users, Epic provides this document https://docs.unrealengine.com/en-us/...rted/FromUnity, this indicates that Epic wants to attract Unity users.
      The C++ in UE4 is coping delegate, event, property, attribute, module, GC and other features from C#, and the components concepts like Unity is doing. But most of these features are implemented using C++ macro and other hacks, it is hard for the C++ IDE to give a good intellisense for autocomplete and real-time syntax checking even the Visual Assist X is installed. Various compiling errors often happen in live streams and some tutorials on udemy. And the C++ style and API in UE4 is ugly like the 1990s e.g. still using Hungarian notation.
      Since Epic is comping features from C# and provides a guide for Unity users, why not do a more thorough?!

      Comment


        #18
        With C++ and UE4 even in the past i herd that its half baked and not as well done this is also why in the past i didnt even bother to even try C++ on UE4 so i stuck with
        the Blueprints to get things done.

        Adding another programming language to the Engine is a positive but if the C++ on the engine the way it is isnt even that good well C# is out of the question and is almost
        a impossibility.
        Originally posted by MarkcusD View Post
        I wanted this when I started but I've gotten used to C++ combined with blueprints. I prefer this now. There was an unofficial project by someone at MS but I don't know the state of that.
        Im not the biggest fan of this engine at all its a Ok engine Yeah there is a special unofficial C# supported
        UE4 thats pretty much modded but its unofficial and it does not get as updated fast enough or even at all theres even a F# version.

        Blueprints are fine but i dont know i tend to prefer to code in various cases, this also takes me back to when i made my own Hobby games in Blender with scripting in Python and Logic Bricking
        back years ago.

        Comment


          #19
          Proper C# integration would really help get a larger user base who may want to transition to Unreal if they could migrate their C# codebase. I assume this to be the case both with current Unity game developers and in other industries (eg Enterprise). Architecture field is used to a lot of tools being written in C# (eg Dynamo for Revit and Grasshopper for Rhino) therefore being able to re-use is critical cross software application - as you'd only need to build core functionality in C# to be able to port it into various design tools.

          There is currently an active github repo implementing a C# integration. It requires a little setup but gets you there. Would be great to have some Epic dev support with this:

          https://github.com/pixeltris/USharp
          David Gillespie
          Associate
          Foster + Partners

          Comment


            #20
            Just an update on USharp - it's really coming along nicely - It's great to be able to use our C# libraries (as well as other ones) within UE4. There are still a few rough edges however it's got blueprint integration support which is great. Compile times are WAY faster than C++ and it's speeding up our development times!
            David Gillespie
            Associate
            Foster + Partners

            Comment


              #21
              Originally posted by david.gillespie View Post
              Just an update on USharp - it's really coming along nicely - It's great to be able to use our C# libraries (as well as other ones) within UE4. There are still a few rough edges however it's got blueprint integration support which is great. Compile times are WAY faster than C++ and it's speeding up our development times!
              Are mobile platforms supported?

              Comment


                #22
                Wow, this is great! I didn't know something like USharp or mono-ue existed. I do worry about the impact of garbage collection though, which I hear about all the time when it comes to Unity performance.

                Comment


                  #23
                  I am sure most people know this, but the new Live Coding feature in 4.22 and above has _radically_ improved compilation time for c++.

                  Like I can change a few lines and see it in editor in 8 seconds.

                  There are some big caveats (like not adding new properties) but overall it is pretty much a game changer.
                  https://www.casualdistractiongames.com

                  Comment


                    #24
                    Unity's garbage collection is garbage (lol) just because they use an ancient one.
                    From Mono 2 or something. they refused to pay Xamarin licenses to update to a newer version.
                    | Savior | USQLite | FSM | Object Pool | Sound Occlusion | Property Transfer | Magic Nodes | MORE |

                    Comment


                      #25
                      push for real c# support in 2019.. i just don't get it why epic gets pimples using modern languages like c# or typescript/javascript i also like c++ for the aesthetics in code but there are so many advantages by using c#

                      Comment


                        #26
                        I see no advantages of using C# if you already have Unreal C++ with reflection and garbage collection, blueprints, Python.
                        It would be only overcomplicating engine development. Especially for editor tools and low-level systems, the only efficient choice is to use the same language as an original codebase.

                        What would actually interesting is a custom scripting language, a middle-man between C++ and blueprints. Simplified syntax, tailored for engine already allowing you to use C++ and source code. "Binary/asset" nature of blueprints can become problematic if team grows and starts to create a lot of systems/features in blueprints. It's becoming harder and harder to collaborate and refactor things.
                        Custom scripting language would be excellent for technical designers, but it shouldn't be seen as replacement of C++ for writing core tools/systems.

                        Comment


                          #27
                          ^^ This ^^

                          - Wholeheartedly agree with kjustynski / Just Krishna or whatever witness protection name doctor ergot is operating under these days.

                          Comment


                            #28
                            Only good thing about C# would be that I wouldn't have to write those god-awful-help-the-compiler-because-its-dumb-header files. When programming with C++ I find myself writing less small functions simply because keeping the implementation and header files synced is such a stupid chore, instead I just tend to write long functions that just do the stuff.

                            Comment


                              #29
                              Originally posted by jonimake View Post
                              Only good thing about C# would be that I wouldn't have to write those god-awful-help-the-compiler-because-its-dumb-header files. When programming with C++ I find myself writing less small functions simply because keeping the implementation and header files synced is such a stupid chore, instead I just tend to write long functions that just do the stuff.
                              Only? Are other things better in C++? Excuse me but very long compilations, lack of possibility to remove c++ class in editor and bad code readability (due to macros and type def and so on) aren't good things.

                              Comment


                                #30
                                I imagine most/all of the epic devs code in C++ so can't imagine there's much enthusiasm to add another language.

                                In all honestly the C++ in UE4 really isn't that hard to grasp if you can code already in a different language, just got to get your head round some differences like pointers and when to use :: instead of . .If you've got vax it usually corrects it for you anyway if you use wrong symbol. If you want an actual real programmer job at a big company in the gaming industry they usually want C++

                                This isn't me being a 'arn't I so clever' boast, quite the opposite, I'm not a professional programmer and I'm a bit of spanner and I can get my head round it. Nowhere near the level of someone like Mr Xavier but enough to make gameplay code and do what I need to. You can do it too if you just try

                                Try one of Tom Looman's C++ tutorials and you'll realise its not as scary as you thought it might be.

                                Comment

                                Working...
                                X