Porting to Monogame

Discussion in 'Development News' started by Afr0, Apr 28, 2013.

Thread Status:
Not open for further replies.
  1. Afr0

    Afr0 Well-Known Member

    The Project Dollhouse team is currently looking for a skilled C# developer who can port the codebase to Monogame. The latest branch can be found here.
    To ensure we only get capable applicants, the first requirements will be to compile the Monogame library on your own (requires VS2010 or later on Windows).
    Apply for the position by posting in this topic or adding me on Skype: mats.vederhus
    Please do not add me to Skype only to ask me how you compile Monogame, or I will remove you from my contact list immediately.
    The ideal applicant has access to a Mac or Linux machine and is well-versed in developing for these systems.
  2. RHY3756547

    RHY3756547 FreeSO Developer Staff Member Moderator

    XNA4 port is almost functional, but they've replaced the FromFile method with "FromStream"... Which normally wouldn't be a problem but this new method no longer supports reading tga or bmp files.

    I'll see what our options are here. We'll need to detect if certain streams are of TGA or BMP format and read them with external libs.
  3. RHY3756547

    RHY3756547 FreeSO Developer Staff Member Moderator

    Not looking too great right now. Here's CAS with no working images:

    upload_2014-5-15_17-33-8.png

    Fonts appear to have roughly doubled in size (no idea why) and Z sort has been disabled on the sim view for whatever reason.
  4. francot514

    francot514 Well-Known Member

    Be careful with xna 4, it loses some features and functionaly from the xna 3.1 compatibility with some external libraries, for me i was forced to use the xnb pipelines to read some bitmaps...
  5. RHY3756547

    RHY3756547 FreeSO Developer Staff Member Moderator

    Yes, I know.
  6. RHY3756547

    RHY3756547 FreeSO Developer Staff Member Moderator

    World rendering hacked into XNA 4. As you can see some things aren't quite working right now!

    upload_2014-5-16_2-17-19.png

    upload_2014-5-16_2-17-50.png

    Text is way too low for some reason, and it won't let me use the single surface format for depth. (can't alpha blend with it... even though the alpha blending should ONLY OCCUR ON THE FIRST RENDER TARGET (COLOR)!)
    Tori Sim likes this.
  7. RHY3756547

    RHY3756547 FreeSO Developer Staff Member Moderator

    I'm probably going to have to change depth to a 24-bit encoded integer ("fixed point") instead of a 32 bit float.
  8. aidancheddar

    aidancheddar Active Member

    One hell of a start, that's for sure. :D
  9. francot514

    francot514 Well-Known Member

    Porting to monogame is your main objective right now??? is not better to have world redering and sims antics finished firts, after that some networking and porting could be better...
  10. RHY3756547

    RHY3756547 FreeSO Developer Staff Member Moderator

    I'm too busy for that stuff right now. This is just basically all janitorial work anyways.

    upload_2014-5-16_18-46-21.png

    Here is the client in monogame, which at least supports .bmp with FromStream. We will only need to write a custom loader for TGA.

    I have successfully recompiled the shaders to MonoGame's special glsl format, but right now I don't know how to link them in to be .xnb... (can't use monogame content manager either because they didn't include it! trying to import manually results in interesting bugs)
    Tori Sim likes this.
  11. RHY3756547

    RHY3756547 FreeSO Developer Staff Member Moderator

    Updates to build requirements - you now need:

    MonoGame 3.1,
    XNA4,
    Windows Phone SDK 7.1, (monogame content converter breaks otherwise)
    Visual Studio 2010 C# Express Service Pack 1
  12. RHY3756547

    RHY3756547 FreeSO Developer Staff Member Moderator

    Not quite working correctly yet:

    upload_2014-5-16_20-21-57.png

    There's some unusual grain in the z buffer (and generated images) and the object id buffer is drawing all objects with object id 1 (???)

    upload_2014-5-16_20-23-16.png
  13. RHY3756547

    RHY3756547 FreeSO Developer Staff Member Moderator

    It appears the depth buffers seem to be drawing from completely random sections of video memory, which is completely safe and totally what it should be doing.

    upload_2014-5-16_20-36-15.png

    EDIT: Turns out buffer wasn't clearing. Now to see why z buffer is messed up...
    Looks like the BMP support discludes indexed bmps too, so we'll still have to roll our own bmp reader.
    Last edited: May 16, 2014
  14. francot514

    francot514 Well-Known Member

    Fun weird results, monogame conversion does not include xamarin monodevelopment???
  15. RHY3756547

    RHY3756547 FreeSO Developer Staff Member Moderator

    You can use both visual studio and mono develop. (though monodevelop does not have an implementation of the xna content pipeline, so you will not be able to compile content projects like the one all of our shaders are stored in.)
  16. aidancheddar

    aidancheddar Active Member

    That explains a hell of a lot...
  17. aidancheddar

    aidancheddar Active Member

  18. SoraTSO

    SoraTSO Active Member

    Is this what we will need when running the project dollhouse client?
  19. RHY3756547

    RHY3756547 FreeSO Developer Staff Member Moderator

    Nope, just compiling. You will probably need to install the monogame framework though.
  20. Afr0

    Afr0 Well-Known Member

    francot: Be very wary of telling us what is appropriate to do. This project is all about having fun for us as much as it is for you. We do whatever interests us most at any given time.
    Awesome work Rhys! :D
    Tori Sim and aidancheddar like this.
Thread Status:
Not open for further replies.

Share This Page