MonoGame Feature Wishlist

I need to correct myself; There are just Sprite Based Additions (Lines, Circles made out of Lines of Sprites, Rectangle(filled and empty)) but no Polygons or other kinds of filled geometric shapes.

I have implemented it myself by now; probably not the best way i could do it but it is fast enough atm.

(I used a class named Poly which contains Vertices;
this class is contained in different Lists (one for Lines, one for Vertices etc);
These Lists are then Emptied at the beginning (Begin():function)
and drawn at the end(End():function) <- pretty simple eh?
the Lists can then contain all different kinds of polygonal forms even those i didnā€™t prepare beforehand)

Source: http://pastebin.com/PHBuS2We | Needs Monogame.Extended for the SetBF:function()! Remove the Function and the usage Reference then you should be able to use it w/o Monogame Ex

This ^ uses Lists and not just Arrays otherwise it would not be dynamically enough to work this way;
The Problem is that Resizing the Array would take really a massive amount of time wich is wastet in each Draw-Call.

If somebody has a neat Idea to improve this(There are many Shapes not implemented as of right now for example also the speed is not the best it could be so); Please feel free to do so and maybe share it with us.

Have you considered using something like vertexcolorpositions to draw simple geometry? I used it for shadows recently, on top of all the standard 2d imageryā€¦
wish I would have done so earlierā€¦ its pretty sweet. :candy:

Iā€™ve just assigned solid colors, but you can draw textures on them as wellā€¦

I dont understand the ā€œdynamically enoughā€ part. Arrays are faster than lists. Internally a list uses an array.
And if the list needs to be emptied each frame to support different sizes i would allocate an array that is large enough for all cases (as you certainly canā€™t have an infinite List)
Lists are easier but at best as faster as arrays.

There is one thing that I would really like to see in MonoGame, and thatā€™s full support for skinned, animated 3D models. Iā€™ve seen some people make attempts at using skinned models from Blender in MonoGame over the last couple of months, and there are some workarounds to make things work, but I believe there still isnā€™t one out-of-the-box solution for importing and using skinned models.

I think that if we could use animations with Blender curves and everything, this would really take 3D game development with MonoGame to the next level.

3 Likes

I need just 1 simple thing
Controls support (buttons, listviewā€¦etc)

Or even better, just add UserControl container and i am set.

I have tried some extensions, most of them dont work with monogame 3.5, and others if they manage to draw something, their own handlers are not fired at all (except emptykeys, which i hope that could be simplified a bit). :slight_smile:

1 Like

I think that would take it to an somewhat acceptable level, I agree - very important.

1 Like

Yeah, if you look at the MonoGame showcase, animated 3D models are really the no.1 thing that is painfully missing.

There is a lot of things that can be achieved in MonoGame when it comes to 3D game dev - I still havenā€™t gotten to the bottom of what MonoGame has to offer in that field, but what Iā€™ve seen so far is rather impressive. The problems with animation support are really the first barrier I came across so far. Other than that, I think there is no reason why MonoGame should remain primarily a 2D game dev framework.

I think you could clone Skyrim in this thing.

1 Like

Well, there is the obstacle of increased dev. time and asset creation for 3dā€¦
-The difficulty of using 3d programs relative to something like gimpā€¦

I think its pretty natural that people (especially the hobbyist crowd) would gravitate primarily towards 2dā€¦

Just comparing some 2d and 3d threads on here, 3d can escalate to whole Einstein projectsā€¦

That aside, I agree that 3d animation would be cool, so you wouldnā€™t have to program all the movement of models or verticesā€¦ I actually thought that sort of functionality was ā€˜built intoā€™ the 3d files.

Maybe they gravitate around 2d because 3d skinned animation is too painfull to make it work :slight_smile:
If monogame is to replace monogame, 3d must not be placed as the last wagon just because there are mainly 2d devs.
Maybe many 3d devs have not moved to monogame because it was communicating very much on 2d support.
I know a lot of devs that made 3d with xna on xbox and when it died they moved to unity as monogame did not offer all the xna stuff (for ex setting a custom effect at build time which has been fixed only around may this year)

2 Likes

Yeah, though that goes not only for MonoGame, but for all frameworks and engines out there, right?

Even if the majority of devs here are interested mainly in 2D development, since MonoGame has potential to be both a 2D and 3D game development framework (and I am certain it does), then why not use this potential?

Preciselyā€¦

I would not be here if MonoGame did not do 3Dā€¦ :pineapple:

1 Like

Absolutely, except monogame comes without a price-tag, and therefore without the all the advantages of ā€˜possiblyā€™ better documented alternatives for 3dā€¦ If you are going to spend that extra dev. time, spend those extra resources on education, assets etc, you might be bumping up to another framework anywayā€¦

So I think even if you had the 3d functionality, it might STILL be hard to compete for the 3d crowdā€¦ Not to mention marketing, and the lack of a monogame budgetā€¦?!

Not saying no to 3d, that is still great, I just donā€™t know if its realistic to expect to dominate 3d game development with a network of volunteersā€¦
-Monogame would rarely be peoples TOP priority, without offering wages I presumeā€¦

I agree with pretty much everything you said, but I am not looking to start a revolution here and take over the game dev market ;D And I doubt that this is the purpose of this framework or this community anyway.

Iā€™m not looking at this as a way to make MonoGame development more marketable (although it probably would), but as a way to push the framework along and make it possible to make fully fleshed out 3D indie games in it for hobbyists like me.

1 Like

Yeah :slight_smile: its just nice to talk about these things, Iā€™m so happy to be on this forum and just listen at the pipes, and talk about stuff, even if it isnā€™t all ground-breaking problem-solvingā€¦ People in my ā€˜realā€™ life have zero opinions and zero interest in any of this ā€œcomputerā€ stuff.

Welcome to life :stuck_out_tongue:

But yep, I really hope that MonoGame will take a more 3D focusā€¦

Youā€™re a bit late, Iā€™m about half-way through alreadyā€¦ But thanks:-)

ā€¦ I really should hang out more in the general discussion threadā€¦

1 Like

Maybe support for WiiMotes + Nunchuk?!
There is a library called WiimoteLib which can be used for reference.
But idk if that is Cross Platform able.

Looks like you can do that through SDL. In the SDL game controller file where controller bindings are defined: https://github.com/MonoGame/MonoGame/blob/develop/MonoGame.Framework/SDL/gamecontrollerdb.txt
thereā€™s a ā€œWii Remoteā€ entry for OSX and a ā€œMayflash Wiimote PC Adapterā€ entry for Windows (not sure if you can manage with just a bluetooth dongle and if mappings would be the same). In the place those mappings originally come from there is now also a Wiimote mapping for Linux. That file is here: https://github.com/gabomdq/SDL_GameControllerDB/blob/master/gamecontrollerdb.txt

A 3D Geometric Primitives class.

A official samples search and download showcase page for samples that have been tested to work that demonstrate how to do a specific thing.

This was one of the best things about the old xna site, i miss it.

1 Like

hmmmā€¦ You mean like vertexPositions that form 3d shapes, like

new 3dSphere(pos, radius, subdivision);
new 3dBox(pos, length, width, height);

And they would have some built in methods for scaling, rotation, even collision detection, or deformation, adding textures, etc?