Hi,
I’m trying unreal for my project I’m developing now in unity to find how it goes. As first I want to describe how I’ve setup my project in unity, my workflow there and then how it is done in unreal. I’ve tried to search the forums but haven’t found some detail post about the implementation. Also I want to note that I’m C++ developer (as my day job) and using C# only in unity.
Now, in unity I have my custom .DLLs where I have code for the whole game (classes, struct, MonoBehavior derived classes, some helper classes for the unity editor plugins). All the code I use is in one of the many .DLLs. The raw .cs files (as in the “Asset” folder) I’m only using for the testing. The only instance when I’m using the .cs files are for my editor extension/plugins.
Here is one example. I have editor plugin (which is “ran” from some menu item) where I create custom terrain (It creates GameObject which had some mesh component, some custom MonoBehavior derived class, TerrainComponent, which holds some data describing the terrain (which are serialized), and some methods which could be called on this particular terrain). The process of the terrain creation is like this: I read some prepared file, parse it, create the main game object (GO) for the terrain. To this GO I attach my MonoBehavor derived component (which has some other plain C# class instances as fields), TerrainComponent, from my .DLL. Then I create the mesh, save it as the assets and add the mesh component to the GO which will used the newly created asset as mesh. Then I do some other stuff and add some other components but I would rather not discuss it for the simplicity). Then when the scene is saved then the terrain GO is saved as usual with TerrainComponent fields etc.
Now for the unreal. Whats the workflow there? As first, could I have some custom .DLL which will use the unreal SDK and then use it in unreal project? That is, in unity I can create the c# assembly with some custom classes etc. and then use it without any hassle in the unity. I do think that this could not be as straightforward in unreal. From what I’ve read the one solution is to maybe make some runtime plugins and then used those. But what about dependencies? If I recall correctly, the plugins should not have any dependencies on the another plugins. So have can I then make some editor plugin, which would encapsulate the logic of the terrain creation as described above, using some other plugins classes? Maybe I’m misunderstanding something, I don’t know:) So what’s the recommended work flow for my situation?
Thank you,
Trigve