Can I write software using Unreal Engine 4 without compiling Unreal Engine 4 from source? - unreal-engine4

I just watched a video on YouTube: Introduction to UE4 on GitHub
Basically explaining how to get the Unreal Engine 4 source code from GitHub and how to build it in VS2013.
Now I understand the need for this if people want to make modifications to the engine itself, but if I want to use the engine as is and just program games with it, do I need to do all this?
I'm building it right now (75 minutes and counting), because I watched a UE4 programming tutorial and noticed that I was missing a few things that the programmer in the tutorial had (thought maybe because I didn't compile the Engine). I figured I needed to build the Engine because another UE4 programming tutorial said "I assume you have already downloaded the engine source from GitHub and compiled it in VS2013", nobody says why, nobody clearly states whether or not this is required to make a game in C++ using Unreal Engine 4.

No you dont need the whole engine. There is a difference between the code which builds the editor and the code which builds your game. If you only want to program your game you should create a new "code project" and modify the code you're getting after creating the new project.

Related

Can you turn a Unreal Project .EXE into .uproject?

I have a .exe file, called Sonic Infinity Engine Plus, that was built in UE4.
This was released public without source code download, so I am unable to modify it.
However, this game was released with an Unreal terminal (accessed by the `/~ key). I'm wondering if there is any way I could retrieve the source code.
Image of terminal in-game
If anybody knows such command, like build source, it would be helpful to know.
If you need more information I couldn't think of off the top of my head, please let me know!
Thanks, Omega207
As user Rotem replied, there is no known way to retrieve the "source code" as I thought it could. This is due to complications with decompiling UE4 source code.
This is due to the fact that Unreal tends to hide source to most who use it, and is therefor up to the creators to distribute source code (which is all the files creating the .exe file).
Since the source was never distributed public, there is officially no possible way to modify this engine as the creators meant it to be.

How to install chaos physics

I am really interested in chaos physics and went to plugins to see if it was enabled and it is: I have looked up tutorials on it and everything and none say how to install it so I assume it is basic. They select on the modes panel but for some reason for there isn't one. Modes is a drop down panel on the same bar as the play button and stuff. The chaos physics engine isnt one of the options it only has the default. I am on Unreal 4.25.3 windows 10 and this project is blueprints but I prefer to work in c++ blueprints is just better and faster for tests. I have looked at multiple forums and videos and noone seems to have the issue I do which is it just doesn't show up. Could I please get some help on this as it looks amazing and fun. Also if there is an easy way to get the modes selector back where it used to be and not as a dropdown. Thank you.
From what I understand, the Chaos Physics Beta is out since Unreal 4.3 but until its out of beta a source build is required to play around with it. You have to get the demo from the epic games launcher. You will also have to request to join the epic games github and download the unreal engine files, move the ChaosDestructionDemo folder to the same folder that you have your GitHub build in. You then run the GenerateProjectFiles.bat, open the created UE4.sln and then build the ChasoDestructionDemo for Development editor.
This will rebuild the whole engine with the Chaos plugin installed and then you can launch the uproject from the epic games launcher.
There are a lot of details on this forum and a couple of videos that you can have a look at too.
https://forums.unrealengine.com/unreal-engine/announcements-and-releases/1641765-how-to-enable-chaos
If you have any more questions, let me know and ill try my best to help you out.
Hope you have a good time destroying stuff :)

TypeLoadException after loading .NET 4.5 C# DLL into Unity 2018.2.5

I want to be able to feed the camera frames from a webcam into Unity. I made a .NET 4.5 C# DLL using MediaFrameReader and event listeners. Here is some other user's implementation for accessing the Hololens camera frames: Hololens - Access Camera Frames.
When I import the DLL into my 2018.2.5 Unity project, it gives me the following error:
Unloading broken assembly "....", this assembly can cause crashes in the runtime
TypeLoadException: Could not find method due to a type load error
The C# plugin built successfully many times on Visual Studio. Also, I have properly set the Api Compatibility Level (in player settings) to .NET 4.x. What could be the fix to this?
All the other SO answers related to this I have already taken a look, but does not seem to help the problem. Thanks for all the help.
EDIT: https://issuetracker.unity3d.com/issues/unity-fails-to-load-net-4-dot-6-assemblies-with-typeloadexception is the most relatable post, but had no solution.
I have few possible solutions for you to explore.
DLLs issues:
Workaround:
Comment your UWP code (the part that uses the DLL), then build it in UNITY without the DLL. In the generated UWP solution, install the package from nuget or manually import the dll, then uncomment your code and finish your development. This is a short-term solution.It is going to be annoying as you re-build your solution many times and have to comment/uncomment then re-add dlls and so on.
Other possible solutions:
Failed to run reference rewriter with command error with unity error when adding a DLL to the assets folder
Your exact need
From your description, you really do not need everything in the link you referenced (Hololens - Access Camera Frames). You need much simpler version. I recently created MediaCapture solution for HoloLens as a workaround because PhotoCapture in Unity is not working in the HoloLens and everything is working without any additional DLLs. I will post for you few links to see if it may help you:
MediaCapture Unity & HoloLens: https://github.com/MSAlshair/HoloLensMediaCapture
This maybe a good start for you. You can combine it with your original reference. Use this project as starting point to make sure your project is building correct, then use the necessary code from the other resource that you posted to accomplish the task that you desire. You may need to download Unity 2018.2.12f1 because I didn't test it in 2018.2.5
MediaCapture & PhotoCapture: Hololens font camera
Good Luck!

Is it possible to use Unity3D NavMesh in a server application?

Unity3D contains a core dll that called UnityEngine.dll. That library contains all logic for the engine, like NavMesh.
Is it possible to use that dll in other applications, for example console applications, feed NavMesh with baked NavMesh from scene and perform navigation?
In other words, I want to create a game server that will navigate all agents and send to clients new positions of them.
No it is not possible.
This question was asked by a Unity user few years ago and he got the no answer from a Unity engineer. He tried that and failed. Unfortunate I am not able to find that question again but the answer the user got made sense.
According to the post as I remember, he said that all the UnityEngine.dll file contains all the classes you see while programming and those are for reference and complier only. He also said that the UnityEngine.dll file does not include the run-time file required to make it work alone in other application.
The Unity compiler generates the required dlls or files needed to run a Unity game.

Programming Xbox games with Scala

I asked this on the XNA forums but I guess since most people there would specialize in C# I didn't get much help with this
I have some code for a game written in Scala. I compile everything into Java Bytecode at the moment but the Scala compiler has a .Net version. With that in mind, and because modular design is good practice in general, I've written a Graphics interface and right now I use a OpenGLGraphics class implementing this interface which contains every line of OpenGL code in my program. In my perfect world I would be able to swap my OpenGLGraphics class out for an XNAGraphics class and run my game on an Xbox with no further porting, well, maybe some modifying, but I imagine it's not this simple.
I've done some googling and I've failed to find an example of anyone trying this. I do have experience with XNA programming and the first problem that comes to mind is that there is no scala plugin for Visual Studio and XNA programming seems to be very Visual Studio centric, can I at least get visual studio to compile non C# code in an XNA project or setup an XNA project and content pipeline without Visual Studio?
You can configure arbitrary pre- and post-build events in the IDE by creating a C# project, right-clicking the project to open up the properties pages and selecting "Build Events". There should be a "Pre-build event command line" and "Post-build event command line" where you specify arbitrary commands to run as part of the build. However, possibly a better option would be to create MSBuild build files by hand and using the Exec task to run arbitrary commands.
There is some discussion about Scala integration into VS here which also discusses custom MSBuild tasks.
as long as you can point the compiler to the correct version of the XNA assemblies, and it produces a proper CLR assembly, then your best bet would be to refactor all of your game code into a .dll/assembly. Then just make a regular XNA project as normal, reference your scala assembly, and just reference the code from the scala assembly to start up the XNA game.
to be sure, it would take some refactoring, but it sounds like you've already done most of the work by having an abstracted renderer and all that