Updating to latest development build breaks everything

Hi guys,

I guess I should have posted this in the Git Issues, but oh well.

I am a noob, so let’s go.

I used 3.6.183 for a while, wasn’t sure if the MSAA worked already in that one (since it didn’t for me) so I decided to upgrade to the current version (read: load the development build installer from the downloads page) - as i did many times before. I am using the DirectX branch for my project.

Well now basically everything that has to do with graphics fails. I cannot load FX files, even the ones that are basically empty.

_lightingEffect = content.Load<Effect>("FX/LightShader");

->

An unhandled exception of type 'SharpDX.SharpDXException' occurred in SharpDX.dll

Additional information: HRESULT: [0x80070057], Module: [General], ApiCode: [E_INVALIDARG/Invalid Arguments], Message: The parameter is incorrect.

When I comment them out, just to see what happens it throws another error where I can’t assign an indexBuffer and I get a NotSupportedException.

_indexBuffer = new IndexBuffer(graphicsDevice, typeof(int), terrainManager.Indices.Length, BufferUsage.WriteOnly);

->

NotSupportedException
A first chance exception of type 'System.NotSupportedException' occurred in MonoGame.Framework.dll

Additional information: The profile does not support an elementSize of IndexElementSize.ThirtyTwoBits; use IndexElementSize.SixteenBits or a type that has a size of two bytes.

Which is really stupid, since I need int instead of short in cases of very large models. It worked before, why does it not work any more?

Well it doesn’t stop there.

If I comment that out again, just to see what happens -> All my rendertargets are incorrect now. Can’t load them.

_bloomRenderTarget2DMip0 = new RenderTarget2D(_graphicsDevice, (int) (width * GameSettings.SuperSample), (int) (height*GameSettings.SuperSample), false, SurfaceFormat.Rgba1010102, DepthFormat.None, 0, RenderTargetUsage.DiscardContents);

->

`An unhandled exception of type ‘SharpDX.SharpDXException’ occurred in SharpDX.dll

Additional information: HRESULT: [0x80070057], Module: [General], ApiCode: [E_INVALIDARG/Invalid Arguments], Message: The parameter is incorrect.`

it continues from there…

What did I do wrong?

I basically just installed the current version of MonoGame with the provided installer, like i did before (aka overwrite the old files)

So now I rolled back to MG 3.5.1 and everything is working again, but yeah, doesn’t fix the issue.

Second Question:

Can someone provide a link with a how-to to build the MonoGame Framework manually for Windows? I thought it to be trivial, but I failed due to so many different things, I’d rather just start with a clean description.

Did you tried to rebuild your assets manually? Changing versions sometimes doesn’t trigger effects rebuilding and may be required. It may sound like a generic reply but it may resolve parts of the problem.

Fork/download the develop branch (with its submodules), run protobuild.exe (which generates .sln & .csproj files), open the .sln of your desired platform, build. Or alternatively add MonoGame.Framework.Windows.csproj to your project solution and set the references accordingly (but be sure to build your assets with the pipeline tool from the same source).

Thanks, I’ll try again.

EDIT:
Yeah, well. Doesn’t work again. I rebuild all assets, same errors. Guess I’ll have to reinstall 3.5 again.

Today is endlessly frustrating, whatever I touch doesn’t work :frowning:

Yeah… the develop branch is going thru some bigger changes, so it is more unstable than usual.

If you need to get back to a specific old build you can grab older installers from the “Artifacts” column here:

http://teamcity.monogame.net/viewType.html?buildTypeId=MonoGame_PackagingWindows&tab=buildTypeHistoryList&branch_MonoGame=<default>&guest=1

I’ll let you know as soon as the final MSAA fixes are in… still working on part of it.

1 Like

that link is exactly what I have been looking for in that case.

It would maybe be a good idea to add this to the download page, so people can load specific releases if they want to directly as an installer.