最新评论

共2页: 1 2 下一页 
看看 2008-09-09 16:15
楼上的扯淡,
楼主更扯淡,

不要以为把别人的东西转载过来就有功劳了,照本宣科只会让别人认识到你的无能!

我没有下原码,看教程就是要入门一步一步熟悉,你自己转的东西你自己都不知道错在哪,能不能运行出来,你除了误导别人就没剩什么了!
看看 2008-09-09 15:42
不知道你是要翻译这本书增加你站点的点击呢,还是真学这玩意的,反正不管什么你都是个转载的白痴……

还有楼上的几个是黑牛党的吧,来来来,你按顺序把代码帖到你vs里运行一个我看看
看看 2008-09-08 17:25
按以下改改,你可能能把图象动起来:

// 只需要这4个变量
private GraphicsDeviceManager graphics;
private Texture2D backgroundTexture;
private SpriteBatch sprites;
private Vector2 position;

……

protected override void Initialize()
{
// TODO: Add your initialization logic here
this.backgroundTexture = this.Content.Load<Texture2D>("Figure1-12");
this.position = new Vector2(0, 0);
base.Initialize();
}

……

protected override void Update(GameTime gameTime)
{
……

// 中间省略的自己按下面的格式补齐
if (gamePad.DPad.Down == ButtonState.Pressed ||
keyboard.IsKeyDown(Keys.Down) ||
keyboard.IsKeyDown(Keys.S))
{
//this.scrollHeight += moveFactorPerSecond;
this.position.Y += 5;
}

if (gamePad.DPad.Left == ButtonState.Pressed ||
keyboard.IsKeyDown(Keys.Left) ||
keyboard.IsKeyDown(Keys.A))
{
//this.scrollWidth -= moveFactorPerSecond;
this.position.X -= 5;
}

……

base.Update(gameTime);
}

……

protected override void Draw(GameTime gameTime)
{
this.graphics.GraphicsDevice.Clear(Color.Green);

this.sprites.Begin();
this.sprites.Draw(this.backgroundTexture, position, Color.White);
this.sprites.End();

base.Draw(gameTime);
}
切 2008-09-08 11:28
for (int x = 0; x <= resolutionWidth / this.backgroundTexture.Width; x++)
{
for (int y = -1; y <= resolutionHeight / this.backgroundTexture.Height; y++)
{
Vector2 position = new Vector2(
x * this.backgroundTexture.Width,
y * this.backgroundTexture.Height +
((int)this.scrollPosition) % this.backgroundTexture.Height);
this.sprites.Draw(this.backgroundTexture, position, Color.White);
}
}


这画了N多图,我调试了下记的有{0,-460},{600,-460},{0,0},{0,460},{600,460}等等……图画的不少,自己去看

scrollPosition 是私有变量
你初始化了?没有的话自己去调调看数据的变化,几千万以上你觉的它能动?
网上的转载白痴还真多……
匿名 2008-09-08 11:23
你不快乐的根源,是因为你不知道要什么!你不知道要什么,所以你不知道去追求什么!你不知道追求什么,所以你什么也得不到!

我知道我要什么,我知道怎么追求,但我什么也不想要,我为什么不快乐?
匿名 2008-09-08 11:20
扯淡,你自己照着做一个移动下看看
zavayev 2008-09-02 14:17
PongSound.xgs 应该是PongSound.xap在项目里面编译出来得到的
ich 2008-09-01 07:56
建议使用在线代理服务器,可以登录http://abi.exdream.com/
累啊 2008-08-26 16:02
--引用--------------------------------------------------
liujn: @Aresthor
<br>图片放在Content下面,就会有了
--------------------------------------------------------

感动中
晕啊 2008-08-18 12:54
请问一下 为什么我在添加纹理时 编译器总是提示找不到文件夹呢
路径没错啊
yyyyy 2008-08-14 12:22
我用的XNA2.0,把图片拖进content后,图片属性里怎么没有XNA Framework content 啊???
JulioZou 2008-08-05 11:54
@Leo.Eastwood
多谢多谢!还请多多指教!!
Leo.Eastwood 2008-08-04 13:16
"It is generally a nice idea, but you can live without it because you have to create game components yourself anyway and you have to call Draw for them yourself too. Just for the Update method, it does not make much sense to use them。"

"总的来说这也是一个不错的想法(指XNA再GameComponent中并不直接支援Draw方法)。应为你完全可以使用自己创建的GameComponent中自己建立的Draw方法。当然,对于Update这个方法,其实很少用到,意义不大。"
Leo.Eastwood 2008-08-04 13:10
"but just because someone does not use a game component does not mean it is harder to copy over。"

这是一个倒装句:
直译:
但并不能认为由于很少有人写GameComponent就觉得复制、使用别人写好的GameComponent就很难
意译:
虽然GameComponent类很难写,但是复制参考使用别人写好的并不难。
thank_you 2008-07-30 14:01
感谢博主如此大公无私的奉献!
在下对博主您的景仰犹如滔滔江水连绵不绝,好似黄河泛滥一发而不可收拾。
human_baby 2008-07-04 14:56
加油啊,楼主!请问有英文原版的电子书吗?有就给我有一份呗!!!
我的邮箱是 QQ95762054
yty 2008-07-03 16:41
我下载作者的code/
看到在声音部分是这样调用的/
可是他先在并没有讲PongSound.xgs是如何来的呀/谁知道这个部分是怎么回事?

audioEngine = new AudioEngine("PongSound.xgs");
waveBank = new WaveBank(audioEngine, "Wave Bank.xwb");
if (waveBank != null)
soundBank = new SoundBank(audioEngine, "Sound Bank.xsb");
yty 2008-06-24 18:13
谁能说一下/为什么它调用RenderSprite时和它SpriteToRender时方式要不一样呢?/
如:调用RenderSprite时
public void RenderSprite(Texture2D texture, int x, int y,
Rectangle sourceRect, Color color)

testGame.RenderSprite(testGame.menuTexture, 512 - MenuSingleplayerRect.Width / 2, 300, MenuSingleplayerRect);

如:SpriteToRender和add时
public void RenderSprite(Texture2D texture, Rectangle rect,
Rectangle? sourceRect, Color color)
sprites.Add(new SpriteToRender(texture, pos, sourceRect, color));

如果直接用下面这种方式不就能统一了吗/这样做有什么弊端吗?/
public void RenderSprite(Texture2D texture, Vector2 pos, Rectangle? sourceRect, Color color)

testGame.RenderSprite(testGame.menuTexture, new Vector2( 512 - XnaPongLogoRect.Width /2, 150), XnaPongLogoRect,Color.White);

public SpriteToRender(Texture2D setTexture, Vector2 setPos, Rectangle? setSourceRect, Color setColor)

sprites.Add(new SpriteToRender(texture, pos, sourceRect, color));

spriteBatch.Draw(sprite.texture, new Vector2(sprite.pos.X,sprite.pos.Y), sprite.sourceRect, sprite.color);
JulioZou 2008-06-23 14:20
@yty

this是c#的关键字,用来访问该类中的成员,不加没有任何影响!
yty 2008-06-23 00:13
请问下为啥很多语句前语句前都加this.呢?这是代表它是当前函数的成员把?不加有什么影响吗?/
yty 2008-06-22 22:03
http://abi.exdream.com/
请问这上面说的作者的blog/你们都能上去吗?/
一点浩然气 2008-06-15 23:41
哦 错了,那个scrollPosition 是私有变量
Desmend 2008-06-11 15:45
楼主,加油啊
任我飞 2008-06-10 16:16
加油啊!天天来看看 ,不错!
空城计 2008-06-01 21:21
这本书写的很好很基础,单元测试可能是根据敏捷思想的一种表现,它只是一种思路,如果你看不懂可以完全不去管它,我觉得它应该是先测试一个提纲,然后再测试提纲里面的各项,这样逐一解决,到最后那一个测试的时候,把最后一个问题解决了,整个提纲就解决了。我表达的不好
JulioZou 2008-05-08 09:48
@袁黎
有的链接站点现在的确是打不开,有可能是已经不存在了吧!
袁黎 2008-05-07 11:55
你的站点这么打不开啊。。。
dota 2008-05-02 12:10
虽然还有很多不明白的东西,但真的受益匪浅,感谢楼主的辛苦劳动!
大天使 2008-04-30 00:28
又有更新了啊!
鼓励鼓励!
呵呵,一直关注你的博客,更新速度真快啊!
JulioZou 2008-04-25 14:41
@xiaoJ
很抱歉,XNA2.0还没时间去了解,您的问题暂时还不知道如何解答,如果有时间一定会去研究研究!
xiaoJ 2008-04-25 14:35
我感觉xna2.0对声音文件的调用和1.0有所不同
实在不会应用 网上也没找到个合适的
不知道楼主可有时间对此做个解答
xiaoJ 2008-04-24 22:48
呵呵 谢谢楼主 JulioZou
你翻译的这个版本是目前网上最长的
但是还是很快就看完了
加油加油
JulioZou 2008-04-19 11:09
@大天使
刚开始翻译的时候有的类图是自己做的,当然也是根据源代码并仿照原书的配图来做的,目的是让自己加深对它的了解!所以有的图是彩图,而原书的配图都是黑白的!后来觉得太麻烦了,所以都没再自己做了:-)
大天使 2008-04-18 20:43
呀?原书配的是彩图?
……
呵呵……
JulioZou 2008-04-18 13:08
@大天使
呵呵,不是的,是原书自带的图片,不过我也和源代码对比了一下,基本是一致的!
大天使 2008-04-18 12:25
呀!又翻译新的了啊!
想问下,这些配图是楼主自己实践之后截图的吗?
如果是那样,那真的就麻烦你了!
JulioZou 2008-04-16 22:57
谢谢鼓励!
因为最近有很多事情,耽误了翻译,估计得过一段时间才能继续更新下去,很抱歉,让大家失望了!
大天使 2008-04-16 11:54
最后再补一句,
翻译的太好了,很流畅啊!
比我看过的某些书翻译的质量好多了!
大天使 2008-04-16 11:23
太帅了!
我一口气把你的教程看完了,真是太有用了!顶一下楼主!
热切期待着后续的章节!
楼主你把这些翻译稿寄给出版社吧,一但发表,我立刻动员我们工作室的三十几个人人手一本的买正版!
查看者 2008-03-30 00:31
this.scrollPosition
是哪里来的 ?
自定义的么 还是只有1.0才有
RichardHu 2008-01-30 16:32
我转载了你的文章在www.cnxna.com。期待你的更多的努力结果,并支持你。
Yeeler 2008-01-19 09:37
对应文章中的代码顺序,一步一步自己添加代码 同时参看源码的书写方式,略有不同的。然后,自己标注中文的 #region 慢慢就明白了。
43332 2008-01-12 11:53
为什么不继续翻译下去?
liujn 2008-01-05 17:43
@Aresthor
图片放在Content下面,就会有了
JulioZou 2007-12-20 10:08
@Aresthor
XNA2.0还没有用过,不过您可以查看一下XNA2.0的使用文档,以及对应的入门教程!
翻译的这本书是基于XNA1.0版本的!
Aresthor 2007-12-20 09:34
xna2.0里添加图片的属性里没有Asset Name属性怎么办呀?
JulioZou 2007-12-17 09:59
这里的“ballSpeedVector = -ballSpeedVector”只是一个很简单的碰撞处理,实际的代码比这复杂多了:

// Bounce ball back, but first find out which side we hit.
// Start with left/right borders.
if (Math.Abs(blockBoxes[x, y].Max.X - ballBox.Min.X) <
moveFactorPerSecond)
{
ballSpeedVector.X = Math.Abs(ballSpeedVector.X);
// Also move back a little
ballPosition.X += (ballSpeedVector.X < 0 ? -1 : 1) *
moveFactorPerSecond;
} // else
else if (Math.Abs(blockBoxes[x, y].Min.X - ballBox.Max.X) < moveFactorPerSecond)
{
ballSpeedVector.X = -Math.Abs(ballSpeedVector.X);
// Also move back a little
ballPosition.X += (ballSpeedVector.X < 0 ? -1 : 1) *
moveFactorPerSecond;
} // else
// Now check top/bottom borders
else if (Math.Abs(blockBoxes[x, y].Max.Y - ballBox.Min.Y) <
moveFactorPerSecond)
{
ballSpeedVector.Y = Math.Abs(ballSpeedVector.Y);
// Also move back a little
ballPosition.Y += (ballSpeedVector.Y < 0 ? -1 : 1) *
moveFactorPerSecond;
} // if
else if (Math.Abs(blockBoxes[x, y].Min.Y - ballBox.Max.Y) <
moveFactorPerSecond)
{
ballSpeedVector.Y = -Math.Abs(ballSpeedVector.Y);
// Also move back a little
ballPosition.Y += (ballSpeedVector.Y < 0 ? -1 : 1) *
moveFactorPerSecond;
} // else
else
ballSpeedVector *= -1;
冻结 2007-12-14 19:44
支持,
冻结 2007-12-14 19:27
ballSpeedVector = -ballSpeedVector;
这一句有问题啊,从哪里来的,碰撞后,回哪里去,显然不对,

代码里没有检测是横向碰撞还是纵向碰撞
KAG 2007-12-08 10:22
源代码的碰撞检测非常的有问题,不知道大家怎么看的。
共2页: 1 2 下一页