|
|

楼主 |
发表于 9-9-2009 03:08 PM
|
显示全部楼层
|
|
|
|
|
|
|
|
|
|
发表于 9-9-2009 03:10 PM
|
显示全部楼层
Nullable<Rectangle>的意思是说那个Argument可以是一个Rectangle,或者是NULL。如果你提供一个Rectangle,SpriteBatch.Draw() 会从texture上Rectangle所标示的区域copy那部分的图像到你的device(display card)去。
如果你把那个Rectangle设定为NULL,那么Draw()就会使用你的整个Texture的图像作为画面来源。 |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 9-9-2009 05:33 PM
|
显示全部楼层
|
虽然可以读取一连串的动作, 但是图像的 width 和 height 都不准,又时第一个图还没过完第二个图就来了,很难搞定。有什么方法可以让图像读取时象一般游戏那样准? |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 9-9-2009 05:50 PM
|
显示全部楼层
|
|
|
|
|
|
|
|
|
|
发表于 9-9-2009 08:38 PM
|
显示全部楼层
应该是吧。从画面上来看是看不出他原本的图是怎样子的。
做法就和一般的2D动画一样,只是对应不同的按键输入播放不同的动画段落罢了。 |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 10-9-2009 06:57 PM
|
显示全部楼层
要如何让动画移动?我做了一天,一连串的动作还是在原地读取  |
|
|
|
|
|
|
|
|
|
|
发表于 10-9-2009 07:31 PM
|
显示全部楼层
|
更改你的SpriteBatch.Draw()的目标区域的地点就可以了。 |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 10-9-2009 08:45 PM
|
显示全部楼层
|
|
|
|
|
|
|
|
|
|
发表于 10-9-2009 09:16 PM
|
显示全部楼层
destination rectangle 并不需要是固定的啊。
你可以使用:
SpriteBatch.Draw (Texture2D, Rectangle, new Rectangle(x, y, width, height), Color)
或者使用:
SpriteBatch.Draw (Texture2D, Vector2, Nullable<Rectangle>, Color)
Vector2 就是你的图像的目标地点(对准你的来源图像的Center)。
详情可以参考我的雪花粒子系统教学。SpriteBatch.Draw()有七种不同的应用方法,建议你去看看XNAGS的Help file.
[ 本帖最后由 geekman 于 10-9-2009 09:20 PM 编辑 ] |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 10-9-2009 09:44 PM
|
显示全部楼层
你应该是误解我的意思了。
我是说我要让我的物体在form里面移动,物体里面的一连串动作已经不是问题了。而你给的例子应该是读取图里的一连串动作吧? |
|
|
|
|
|
|
|
|
|
|
发表于 10-9-2009 10:18 PM
|
显示全部楼层
|
你误会我的意思了。我给你的方式就是你要的。请详细阅读XNA的Document并理解SpriteBatch.Draw()的运用。 |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 11-9-2009 06:09 PM
|
显示全部楼层
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 11-9-2009 11:02 PM
|
显示全部楼层
没有人会吗?
还是不知道我在问什么? |
|
|
|
|
|
|
|
|
| |
本周最热论坛帖子
|