Some questions for getting started

So I want to dive right in and add some modules to cascade, but I’m a little bit stuck as to how to add and test my changes quickly, and I’m also having major issues with the GitHub client.

First of all, I can’t keep up-to-date with the latest engine source, as my GitHub client constantly crashes when fetching changes. It sits there for a while thinking about it, but I guess the scope of this project is so huge that it struggles with it. I’m not on a low-spec machine by any means and have a good connection, but maybe there is a better way to keep my repository up-to-date with the latest changes?

Question #2, I now want to start adding some modules to cascade, ideally some of the ones that are missing in UE4 vs UE3 and that I quite miss. I have little understanding of the Engine API, but is it reasonable to assume that by looking at the source code for the current modules (which I THINK I’ve found), I could piece together my own? I believe the files are in Source > Runtime > Engine > Classes > Particles (or Private > Particles for the .cpp files). I’m using VS Express 2013, if I simply add a .h file and a .cpp file from within Visual Studio by right-clicking on their folders, will the engine pickup my new modules’ source code when compiling or do I need to reference them elsewhere in the code?

Question #3: Is there a way I can test these changes/new modules without waiting 15+mins for the editor to compile after each change? Obviously to use them I would have to do that, but can I at least ask VS to check if the project will compile? I’m far from experienced in C++ so I’m likely to make a lot of mistakes to begin with and compiler errors aren’t the easiest thing to navigate through.

More importantly I guess, am I wasting my time bringing back some of my favourite modules because Epic is already working on it? Thanks :slight_smile:

Okay so some info after searching around and starting with a ‘Size By Velocity’ module, it looks like you have to add the reference to your modules’ .h file in “EngineParticleClasses.h” for them to be included, and the actual .cpp code is executed in the “ParticleModules_Size.cpp” file. That I guess makes it quite easy for modules to grab all the information they need, very cool.

Obviously for best practice I guess you keep your files categorised the way they are now. This could get rather interesting, I want to try and create a few other modules too that are brand new, like rotation based on screen position, noise velocity etc. How do I go about submitting my changes to Epic for possible inclusion in the next official updates? Thanks all.

51 views and no replies :O? Help me people pls :smiley: