[SOLVED] Is offline reference for XNA4/Monogame existing ?

Hello,

I’m completly new with Monogame, and i need to browse the API a lot for getting something working.
That’s not a problem, but the Monogame API’s documentation itself is rather dry.

I’ve followed links and landed on official XNA4 documentation, on the Microsoft website.
If i understand well, i can rely on it, because Monogame is pure reimplementation of XNA4 (so i can follow XNA4 tutorials about 3D, right ?)

But the navigation on MS website is quite slow, and i wonder if i could find an online reference of XNA/Monogame (pdf, chm, maybe a book ?).

Thank you :slight_smile:

There are plenty of books, the question is, are you only looking for free resources if not do a simple Amazon search and you can find a few books on XNA/MonoGame… as well as C# Game Programming which use SharpDX and earlier MonoGame relatable content…

And Welcome to the forums.

Thank you for your answer.

In fact, i’m searching of a good reference of Monogame. It seems that XNA4 has been fully re-implemented in Monogame, so a good reference to XNA4 would do. Doing an amazon search led me to «Learning XNA 4.0: Game Development» by Aaron Reed, which has very good ratings. But it seems to be rather a tutorial than a reference.

For example, let’s say i want to load a 3d file converted by the pipeline-tool.
Reading some documentation, i saw that i had to use Content.Load<Model>("ModelName") for loading it.
So i quick-jump to monogame api documentation, for knowing more about Model class :

Content class : monogame.net/documentation/?page=N_Microsoft_Xna_Framework_Content

Problem! No mention on Load method.

Searching more, i think that maybe it’s here:
monogame.net/documentation/?page=M_Microsoft_Xna_Framework_Content_ContentManager_Load__1

(sorry for the links, but as a new user, i’m limited to 2 links per post)

Well, given the syntax it seems to be what i was searching:

public T Load(
string assetName
)

But still, no mention of what the template T can be :confused:

Then, I search on MSDN.
well, it seems that it’s ContentManager after all

So it was my fault of course (confusion between Content and ContentManager, still i don’t understand why writing Content.Load instead of ContentManager.Load ). But the MSDN contains more (for example, i can know what templates i can use with load method).
So i’m searching the same kind of reference, but offline if possible.

Thank you for reading :slight_smile:

Whether this is true or not depends on what your goals are. Certainly, if your interest is limited to 2D, the advice is probably true. If you’re interested in 3D, prepare for the worst.

I started learning “dreaded 3D math” in the late 1960s, turned to supporting a now obsure language, APL, with OpenGL graphics in the 1990s. Until a few years ago, I put in about five years on the Open Rails Development Team, which uses C#/XNA. For my personal 3D projects, I wanted to get beyond XNA. So, recently, I undertook to learn MonoGame.

I started with Beginning C# Programming with MonoGame by Chamillard. That got me started with setting up Visual Studio with MonoGame and its prerequisites. Although it was published relatively recently (2015 – it references MonoGame 3.4), the author’s primary goal was to teach C#, and the content is limited to 2D. But, it did get me started.

Because I had prior 3D experience, I was able to break ground into 3D with MonoGame. Initially, I decided to stick with XNA until I was comfortable with XNA. Learning XNA 4.0 by Reed was a big help. It does not employ MonoGame, so be prepared to fill in the gaps. As soon as I read that XNA will import FBX content, I chose to display a Blender model that I had developed. I immediately ran into MonoGame content pipeline problems, yet to be resolved.

Stymied, I decided to revert to my primary goal – moving beyond XNA. I decided to go for DirectX. At the beginning of the summer, I bought Frank Luna’s new book, Introduction to 3D Game Programming with DirectX 12. Luna mentions in the introduction that the SharpDX team was working hard to support DX12. Knowing that MonoGame now uses SharpDX, I was anxious to get started. Of course, I could find no MonoGame documentation for DX use that wasn’t totally out of date. (Not even auto-generated API documentation.)

I searched on Amazon for “directx +c#” and stumbled into Direct3D Rendering Cookbook by Stenning. It looked great in terms of content. But, the minute I got beyond basic project setup, I found I needed SharpDX documentation. Well, if any project is worse off with documentation than MonoGame, it’s SharpDX.

Totally disgusted, I decided to bite the bullet and revert to C++ and Luna’s new book.

Let’s face it, your typical programmer would just as soon NOT do any documentation (actually, NOT do anything but code). The problem is that, when they don’t create instructional materials, they shoot themselves in the foot. (The project doesn’t grow the way it could.) I’ve seen this up close in Open Rails. Your typical programmer will typically want “somebody else” to document. Now, they’ve got a chicken and egg problem; the person interested in writing doesn’t know and understand the program. If he does write about it, it’s crap.

I’m not happy about my new direction, and I hope that someone will have a better idea. But I doubt it.

Walt

Have you seen Game Programming Algorithms and Techniques: A Platform-Agnostic Approach (Game Design) by Sanjay Madhav?

Sanjay Madhav takes a unique platform- and framework-agnostic approach that will help develop virtually any game, in any genre, with any language or framework. He presents the fundamental techniques for working with 2D and 3D graphics, physics, artificial intelligence, cameras, and much more.

Madhav concludes with a detailed analysis of two complete games: a 2D iOS side-scroller (written in Objective-Cusing cocos2d) and a 3D PC/Mac/Linux tower defense game (written in C# using XNA/ MonoGame). These games illustrate many of the algorithms and techniques covered in the earlier chapters, and the full source code is available at gamealgorithms.net.

1 Like

Well, thank you to all of you, it gave me food for thought.

The book of Sanjay Madhav seems interesting. I think i will stick to Microsoft documentation as XNA/Monogame reference.
I’ve tried to search for chm/pdf conversion of it, but with no luck. At least they didn’t remove entries and samples on their website.

I have now. In terms of MonoGame coverage, I think a 2013 publication date is out of date. Also, the amount of content coverage divided into the total pages indicates kind of thin coverage to me.

Look up @AdamDawes575 's book, Windows 8 and Windows Phone 8 Game Development, I am currently working my way through it, you can hit me up for help as you might need it, it does do 3D by the way. I believe his Twitter handle is the same.

Hi,

Here’s the official offline reference for XNA 4.

1 Like

thank you @vcRobe!
chm is my favorite doc format

Thank you @vcRobe ! Exactly what i was searching!

Remember to add [RESOLVED] in the subject of the post.

I’ll do it next time, i promise. Thank you again!