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:

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:

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.

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?