xna

    1热度

    2回答

    我目前正在尝试克隆我称为“Component”的XNA项目中的自定义类型,让它看起来像这样。 public static TComponent CloneComponent<TComponent>(this TComponent source) where TComponent : Component, new() { TComponent clone = new TComponent

    -3热度

    1回答

    我在c#XNA中做了一个“简单游戏”。我有一个按钮和两个球员。 我想要发生的是每当你按下那个滚动按钮时,产生的数字等于6,同一个玩家能够再次滚动。我已经尝试了所有形式的循环和if-else语句。 public void DiceCheck() { if (randomNum == 6) { if (playerTurn) //Intial value

    0热度

    1回答

    哦,孩子有我花了很多时间在这个问题... 我试图做的是克隆GameObject类型的对象也包含一列Component。克隆GameObject类型没有任何问题,但似乎这个列表是一个问题,因为它被克隆而不是它的内容;内容不会被复制,只会被存储。 就像我想用克隆这些组件的方式克隆这些组件一样,因为我的系统,这是不可能的。 组件连接到GameObject,基本上定义了GameObject。例如,如果我想

    0热度

    1回答

    我遇到了使用monogame框架应用3D声音的问题。 我目前使用最新版本(3.6),似乎无法从不同的方向播放声音。无论我设置听者和发射器的位置如何,播放的声音都是一样的。这是我的代码,任何帮助都会很棒。 SoundEffectInstance instance enemy.WarCry.CreateInstance(); AudioEmitter emitter = new AudioEmitt

    1热度

    1回答

    如果我在Content文件夹中将我的图像设置为始终复制,那么我可以在内容管道中使用它们。我只是从这样的代码打电话给他们: testImage = Content.Load<Texture2D>("MyImage"); 而且它没有编译为xnb格式。我注意到编译后的46kb图像文件有204kb,我不知道为什么。 编译它有一些好处吗?或者为什么我应该这样做?

    1热度

    2回答

    目前,在那个MonoGame遍历它以相同的速度我精灵循环代码。我想通过使用GameTime创建延迟来减慢这个过程。然而,它从来没有工作,所以我决定,我会使用debug.WriteLine()来检查GameTime是否更新。它没有,永远。 abstract class Entity { protected GameTime _gameTime; public TimeSpan

    0热度

    1回答

    我在C#XNA代码绘制梅托德。 spriteBatch.Begin(SpriteSortMode.Deferred, null, null, null, null, null, CameraMatrix()); spriteBatch.Draw... (1) spriteBatch.Draw... (2) spriteBatch.End(); base.Draw(gameTime);

    0热度

    1回答

    试图在Xna中创建游戏,但我偶然发现了一个我似乎无法弄清楚的问题。 我想要做的是在屏幕顶部绘制一个菜单,并显示出来。但我有一个奇怪的问题。 所有的菜单项都是阿尔法,即使我指定的东西是阿尔法的唯一的地方是菜单的背景,有什么明显的,我在这里失踪? public static void draw(SpriteBatch sb,SpriteFont font,GraphicsDevice gd)

    0热度

    1回答

    我用瓷砖和玩家创建了一个小型游戏,我试图在碰撞检测中编程。所以,当角色向左('A')工作时,我设法发生了碰撞,但在向右('D')时它不起作用。这是我的代码: public bool ColX(Texture2D sprite, Vector2 pos, float speed) { float PosLeftX = pos.X; float PosUpY = po

    1热度

    1回答

    我一直尝试使用monogame和c#实现事件。目前,当调整我的窗口,我调用事件: this.Window.ClientSizeChanged += new EventHandler<EventArgs>(Window_ClientSizeChanged); void Window_ClientSizeChanged(object sender, EventArgs e)