I've made split screen using sub application but I came up against a wall when it comes to laying out the levels. Am I supposed to duplicate the level tiles for both screens or is there something I'm not understanding?
So yeah I don't want to do that. So what is the best/efficient way of making split screens? Is there some fancy shader way of pulling off by using MMF HWA?
I haven't tried any new methods since HWA however the best way I know to do split screen is using the Sub-application object. It basically lets you run frames within levels. So you could basically have two frames running at the same time, of the same level, interacting with each other to send player information to each other and place a object representing the players location, animations, actions, etc. Seems inefficient by todays standards but then again, this is how I did it back when MMF 1.5 was still king.
However I'm sure theres a far better way now and the first extension that comes to mind would be the viewport object. However I have never experimented with this yet so I don't quite know. Anyone else?
There was a way of doing it with the Viewport extension. I think you'd need to render the whole frame as the screen and on top of it upscale the viewport "screens". This is probably very inefficient. Perhaps you could try working with Looki's Surface object. Instead of rendering the level through MMF, you could do it through this object (and it's very fast). I'm sure I've seen examples in the clickteam fora.
Advanced users can achieve a split screen with OpenGL, as you can have a real viewport by re-rendering the scene in a different perspective. I have suggested in the past that clickteam add this feature to the HWA version of MMF, but I am yet to see any developments. You really have to know what you are doing though, and all of your sprites would have to be rendered in OpenGL.