User Tag List

Results 1 to 3 of 3

Thread: A theory and (yet another) question: MMF2 Stereoscopic 3D with 2 Subapps?

  1. #1
    Clicker Fusion 2.5 DeveloperAndroid Export ModuleHTML5 Export ModuleiOS Export ModuleInstall Creator Pro
    Fusion 2.5 (Steam)Fusion 2.5 Developer (Steam)Android Export Module (Steam)HTML5 Export Module (Steam)iOS Export Module (Steam)Universal Windows Platform Export Module (Steam)

    Join Date
    Nov 2010
    Posts
    75
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    Lightbulb A theory and (yet another) question: MMF2 Stereoscopic 3D with 2 Subapps?

    Last night when I was laying down I came up with an idea. I've seen a few people try to pull off 3D in Multimedia Fusion 2 with anaglyph 3D shader effects and the like, but I've always assumed that it would be impossible to make a proper 3D game in MMF2, like "Nintendo 3DS" 3D, "3D TV" 3D or Oculus Rift 3D, the types that tend to have the two images stored side by side internally. One could probably make a basic game like this but things like scrolling and the like would surely be difficult, right?

    I then realized a possible and perhaps not as difficult solution, using two SubApps. One would be the main frame, containing all the code and the like, while the second SubApp would lead to a frame for the other eye. This one would have all the same graphics and would copy the X/Y positions and animation data from the first frame's objects, offset by a certain amount to apply the 3D effect. Being two different frames, certain images could have alternate right eye versions to assist in the effect.

    However, there's a few hurdles I've already noticed. First is that, if your game is any complex at all, how do you transfer the X, Y, Animation Number, Animation Frame, Direction and possibly rotation of what could be dozens or even hundreds of objects once per frame, along with other things that may be needed as well such as if an object has been created/deleted/etc? It wouldn't be difficult to use Global Values for a small few set of objects as I'm toying with for a tech demo of the idea, since they're shared... is there any way to have an array that can go from one subapp to another?

    Another issue, the game runs awful if you run it with HWA on, if you have one app with two subapps run from a CCN file. Meanwhile, if you have it access the frames internally, HWA works fine but each sub-app's own internal window size is the size of the frame that houses both windows. Would MMF2 be invisibly processing the extra window space, say, to the right if it was twice as wide, even if the subapp cuts it off? Would the game lag to high hell if you had two subapps floating stretched and resized to replicate full screen? I'd think that if one Subapp lagged behind the other at all visually, the 3D effect would give you a headache instead.

    On a related note, if HWA works reasonably in that way, is there a way to use it to rotate the screen without weird effects or the like? I'm pretty sure zooming in works but I don't know about stuff displayed outside of the window... I feel like one could support the Oculus Rift head tilting/tracking/zooming effect that's usually seen in 3D games with HWA and some shaders applied to the layers/frame and make some 2D 3D games for it, though I'd be happy with just 3D TV style support.

  2. #2
    Clickteam Clickteam
    Danny's Avatar
    Join Date
    Aug 2007
    Location
    United Kingdom
    Posts
    3,016
    Mentioned
    21 Post(s)
    Tagged
    2 Thread(s)
    Interesting concept.

    First is that, if your game is any complex at all, how do you transfer the X, Y, Animation Number, Animation Frame, Direction and possibly rotation of what could be dozens or even hundreds of objects once per frame, along with other things that may be needed as well such as if an object has been created/deleted/etc?
    This could be achieved using delimited strings for global strings. I do this when developing a sub-app window to run alongside my main engine code for debugging (kind of like an output console). This can be achieved with lightning speeds, for example I will do ID#XPos#YPos#Direction#Speed#AnyOtherValue#Trigger

    Usage: 1#43#244#180#34#0#7

    ID: Referencing the object to apply the string too
    Trigger: To Trigger an update

    There's a few possibilities, not sure how it would pan out in the long run when I develop a huge engine with a debug output I make sure I keep me eye on it but the principal should be the same.

  3. #3
    Clicker Fusion 2.5 DeveloperAndroid Export ModuleHTML5 Export ModuleiOS Export ModuleInstall Creator Pro
    Fusion 2.5 (Steam)Fusion 2.5 Developer (Steam)Android Export Module (Steam)HTML5 Export Module (Steam)iOS Export Module (Steam)Universal Windows Platform Export Module (Steam)

    Join Date
    Nov 2010
    Posts
    75
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    Hmm, is there any kind of maximum length to a Global String, then? I could see this being useful elsewhere too, and it'd definitely make, say, a minigame or tech demo of sorts of this idea much more reasonable. Also, what would be the best(and/or fastest) way to work with the strings/delimiters? It's a trick I've never really dealt with before.

    How many Global Strings can you have anyway, I wonder. I know you can have "Unlimited" Global Values according to this technical doc, but does it apply to the Strings, and would MMF2 have issue if I were to set up an automatic thing to read and write to a hundred or so Global Strings per frame to sync every active object?

Similar Threads

  1. Technical Question - Subapps
    By Dines in forum Multimedia Fusion 2 - Technical Support
    Replies: 3
    Last Post: 16th February 2012, 07:42 PM
  2. A Theory About New Extensions
    By Dines in forum Extension Development
    Replies: 0
    Last Post: 28th October 2009, 06:15 AM
  3. Need help making 3D anaglyphs/stereoscopic sprites
    By Krim in forum Multimedia Fusion 2 - Technical Support
    Replies: 7
    Last Post: 11th September 2008, 05:26 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •