Articles of xamarin

将WP8移植到IOS GraphicsDevice错误(Monogame / Xamarin)

我似乎有一个问题移植到IOS。 我有我的游戏在WP8和Android的任何重大问题上工作,但当试图在iPhone上运行时,我似乎得到一个错误,当初始化GraphicsDevice 下面是该问题的截图。 有其他人有这个问题,是否有解决方法/修复? 提前致谢! 🙂 http://img.ufgame.com/xna/6Kwk6D6.png

在使用Monogame时,有没有办法在Android上强制parsing?

我想我到处都是,但是我找不到方法。 我的手机的原始分辨率为1920×1080,我想以1280×720运行我的游戏。 我尝试通过更改PreferredBackBufferWidth和PreferredBackBufferHeight,但它似乎没有任何效果。 这可能吗?

使用MonoGame在iOS和Android设备上保存得分

快速的问题是,使用MonoGame在移动设备(iOS和Android)中保存游戏得分的最佳方式是什么(例如Flappy Bird得分)。 您还可以列出在移动设备上保存成绩的方式和方法,并讨论每个scheme的优缺点。 就像在使用Java的Android中一样,可以使用诸如使用SQLite,Shared Preferences,外部和内部存储等选项。

Monogame 3.3 SoundEffect播放冻结

使用Xamarin Android使用Monogame 3.3后,SoundEffect.Play方法冻结了游戏。 我尝试转换WAV文件8位单声道,16位单声道没有变化。 这个错误在三星T101的Android 4.0.3,但SoundEffects与另一个Android设备有4.2.2。 我没有Monogame 3.2的这个问题。 任何建议? 谢谢! Android下面的debugging日志。 The thread 'Unknown' (0x4) has exited with code 0 (0x0). Failed to generate OpenAL data buffer: 04-22 23:34:04.380 I/mono-stdout(10068): Failed to generate OpenAL data buffer: Failed to get buffer bits: , format=Stereo16, size=73632, sampleRate=44100 04-22 23:34:04.380 I/mono-stdout(10068): Failed to get buffer bits: , format=Stereo16, […]

手机游戏没有游戏引擎

我正在计划为iOS和Android制作2D手机游戏。 它会有animation(包括一些简单的闪光/光线和粒子效果,就像糖果粉碎一样),但是游戏需要的唯一物理是在两个圆圈之间进行命中检测,并在屏幕上拖动一个精灵。 而且游戏不是很复杂。 由于这些将很容易实现我自己,我正在考虑使用原生的iOS / Android SDK(在Xamarin上),没有游戏引擎。 这是一个好主意还是坏主意? 会避免使用游戏引擎,并使用原生SDK(在Xamarin)提高我的游戏性能? 由于两个平台被分成不同的版本/代码,不会修复错误变得更容易(在一些奇怪的情况下)? 看着糖果粉碎这样的游戏,我没有看到任何物理参与,所以相信游戏引擎甚至不需要这样的游戏。 任何意见/建议,将不胜感激。

使用Xamarin + CocosSharp的iOS中的模拟/视口的黑色边框

我刚刚开始使用Xamarin和CocosSharp,所以有可能我错过了一些基本的东西,但是无论如何,我似乎无法弄清楚。 我试图让我的应用程序/游戏成为全屏(我宁愿看到连接,电池和时间的状态栏..但现在我只会满足于全屏。 我在编辑这一行: CCScene.SetDefaultDesignResolution(1080, 1920, CCSceneResolutionPolicy.ShowAll); 而且我尝试了一堆不同的解决scheme,但不管我做什么,我都无法使用整个屏幕。 正如你在下面的图片中看到的那样,即使我为高度input了一个非常大的值,它仍然不会占用可用空间。 我怎样才能让游戏使用整个屏幕,如果可能的话显示状态栏? 如果有任何区别,程序只能设置为纵向。

在没有ContentManager的Android MonoGame上加载stream/资源

在我正在开发的游戏中,我创建了一个可序列化的类,用于生成用于保存和加载级别的.map文件。 在XNA中,使用以下代码可以很好地工作: FileStream fileStream = new FileStream(filePath, FileMode.OpenOrCreate); BinaryFormatter formatter = new BinaryFormatter(); MapInfo data = (MapInfo)formatter.Deserialize(fileStream); 不幸的是,在Android中,似乎filePath最终在设备的根(参数被作为“Content / maps”传入)。 经过一番研究,我从xamarin中看到了这个页面 ,它解释了如何从资产文件夹中正确加载资源。 然而,这个动作发生在与我的主要活动不同的命名空间中,到目前为止还没有find访问Assets.Open()函数的方法。 任何其他方式来加载资产? 更新:在玩了更多之后,我最终试图通过函数调用向下传递主要活动的Assets属性,以这种方式加载文件: Stream fileStream = androidGame.Assets.Open(filePath); BinaryFormatter formatter = new BinaryFormatter(); MapInfo data = (MapInfo)formatter.Deserialize(fileStream); SADLY,该文件仍然无法加载。 查看debugging中的variables显示variablesandroidGame中包含的活动的正确地址,但是打开是“未知成员” 更新工作解决scheme: 如果任何人遇到Monogame Android中的文件加载问题,这就是我最终做的事情: 首先,确保你在你的android版本的正确目录中复制/引用你的文件。 这应该显示在Assets / Content / yourfile.file或子文件夹下的某处。 然后,检查文件的属性,select“AndroidAsset”作为构建选项,select“Copy if newer”作为输出。 最后,使用主要活动的Assets属性打开stream。 这可以通过以下方式使用Microsoft.Xna.Framework.Game类访问: Stream […]

顶点蒙皮看起来在真正的Android设备上使用Monodroid杂乱

我做三维animation的“顶点蒙皮”没有问题。 使用模拟器 (和genymotion)时一切顺利。 但是,在真实设备上运行(如三星和联想)看起来很乱 。 Screenshoot(模拟器) 屏幕截图(实际设备) 传递皮肤变换matrix int location = …; int arrayCount = …; float[] skinTransform = …; GL.UniformMatrix4(location, arrayCount, false, skinTransform); GLSL顶点 uniform mat4 World; uniform mat4 View; uniform mat4 Projection; uniform mat4 Bones[20]; attribute vec4 Position; attribute vec4 BoneIndices; attribute vec4 BoneWeights; attribute vec2 UV; varying vec4 v_Position; varying vec2 v_UV; […]