问题标签 [sprite]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2105 浏览

c# - Direct3d/C# - 在精灵上绘制的矩形下模糊区域

知道怎么做吗?我正在绘制一个应该是半透明窗口的矩形。我设法通过绘制半透明纹理来实现透明度,但我也想模糊窗口下方的任何内容。

通常(例如使用 GDI)我会创建该区域的位图,将其模糊并将其绘制为窗口的背景。使用 Direct3D,我什至不知道如何使用已经渲染的任何内容来获取该区域。或者甚至可以有不同的方法,不是吗。请帮忙。

0 投票
2 回答
4278 浏览

c# - xna:在 3d 对象后面显示 2d 精灵

我是 3D 图形的初学者,学习 xna 和 csharp。

我有 3d 对象,我想在 2d 背景前绘制,3d 对象很简单,它只是一条线。我是从二维 VertexPositionColor[] 制作的。

然后我用 PrimitiveType.LineStrip 画了它。

我还有一个用 Spritebatch.draw 显示的 Texture2D。

发生的事情是线条显示在背景的后面,所以我看不到任何线条。

但如果我评论了 spritebatch.draw,我可以在那里看到这条线。

请帮忙..

0 投票
4 回答
13934 浏览

xcode - 替换sprite中的图片——iPhone的cocos2d游戏开发

我想更改精灵图像。

比如说:

在这里,Sprite 已经添加到图层中。我有可以访问它的 mainSprite (指针)。

如果我改变

它完美地工作。但在这里我想改变精灵图像而不是不透明度。

但我不知道怎么做。

0 投票
2 回答
1670 浏览

actionscript-3 - 在某个位置定义精灵的 x、y 坐标和绘制对象之间的区别

我有一个任务:

我需要在一张画布上放置大约 100 个精灵(上面有准备好的网格)。我需要将它们作为不可见的(圆形)石头放在板上,并且仅在鼠标悬停时才可见。

我遇到的问题是,我无法将这些对象准确地放入网格上的节点中。

例如

如果我这样定义石头(它只是一个精灵,正如我之前所说的):

他们不坐在节点上......见图片:http: //img.skitch.com/20091014-kuhfyjeg1g5qmrbyxbcerp4aya.png

如果我这样做:

石头在网格节点中正确显示...参见图 2:http: //img.skitch.com/20091014-f595tksjxramt98s7yfye591bh.png

所以我想知道这两种方法有什么区别。

另外,我认为我需要将正确的坐标传递给石头类......如果我想更改石头对象的某些属性。例如能见度或半径。

  1. 您能否建议,将坐标定义为stone.x,stone.y有什么问题
  2. 如何解决定位不正确的问题。

真的很感激关于这个问题的想法,我试图解决这么长时间:(

0 投票
4 回答
14985 浏览

opengl - 使用OpenGL从spritesheet渲染精灵?

想象以下场景:您有一组 PNG 格式的 RPG 角色精灵表,并且您想在 OpenGL 应用程序中使用它们。

单独的字符(通常)大小为 16 x 24 像素(即 24 像素高),并且可以是任何宽度和高度而不会留下填充。有点像这样:

Terra,来自最终幻想VI
(来源:kafuka.org

在给定帧索引和大小的情况下,我已经有了确定基于整数的剪切矩形的代码:

运行此代码frameIndex = 11, cellWidth = 16, cellHeight = 24将返回一个剪贴画(32, 24)-(48, 48),假设它是右/下而不是宽度/高度。

实际问题

现在,给定一个剪切矩形和一个 X/Y 坐标来放置精灵,我如何在 OpenGL 中绘制它?左上角的零坐标是首选。

0 投票
1 回答
1341 浏览

flash - AS3/FP9 - 调整 Sprite 的大小

我已经将尺寸为 3264x2448 的 JPG 加载到 Sprite 中。如何按比例调整它的大小以允许将 Sprite 绘制到 BitmapData 对象中(在 CS3/Flash Player 9 中限制为 2880 高度或宽度)。我的目标是使用 Soulwire [DisplayUtils][1] 创建缩略图。这是与其他较小的 Sprite 一起正常工作的代码:

谢谢你的建议。

0 投票
4 回答
5517 浏览

performance - XNA - 合并精灵以获得更好的绘图性能?

我在某处读到,当渲染大量 3D 对象时,可以将它们合并形成一个巨大的网格,这样就只会进行一次绘制调用。因此,请引用:“GPU 发挥其魔力”,而CPU 可用于除绘图之外的其他调用。

所以对于我的问题,在考虑性能的2D 环境中这样做是否可行?

例如,假设我们有一个简单的图块系统,而不是为视图中的每个图块进行绘制调用,而是将所有图块合并成一个大精灵,然后在其上调用绘制。

由于我之前没有图形性能方面的经验,因此非常感谢您对此事的任何见解 - 无论是提示、链接还是诸如此类的东西。

编辑:对不起,我的解释很糟糕。我正在创建一个供个人使用的 tileengine,并希望它尽可能多才多艺。因此,我想进行优化,以防我在不久的将来必须绘制大量图块。

确实使用了一个 tilesheet,但我的意思是,如果将要从工作表中绘制的所有图块合并到一个新的 Texture2D 中是否会获得性能。例如:

我们在屏幕上绘制了 128x72 的图块。我们不是循环遍历所有图块并为要绘制的每个图块调用 draw,而是将所有图块合并为一个 1280x720 大小的新精灵并绘制它。这样,draw() 方法每帧只会被调用一次。我的问题是这是否会提高性能,因为它会在进行 3D 时将 3d 对象合并到单个网格中。

因为我收集到的信息是调用 draw() 是一种性能消耗,应该尽可能少地调用。有人确认或否认吗?:)

0 投票
1 回答
703 浏览

animation - cocos2d 中重定向动画精灵的最佳实践是什么?

我正在制作一个游戏,其中“防御”精灵需要为“攻击”精灵设置动画。但是例如攻击者可能会改变路线以攻击其他东西,中间动画。管理动画和目的地的最佳方式是什么?我相信我必须在添加一个新的之前删除一个精灵上的任何动作。也许我需要使用共享操作管理器或其他东西?

0 投票
1 回答
798 浏览

actionscript-3 - 带有 Sprite 图形的 Tweenlight Fade

我有一个精灵,我在(下图)上绘制了一个白色矩形,并想用它TweenLite来淡入和淡出精灵,但它要么显示要么隐藏精灵。对大小进行动画处理,例如scaleX在 alpha 上效果很好。有任何想法吗?

0 投票
2 回答
2743 浏览

graphics - 使用 GFX rotozoomSurface 和 SDL 绘制透明精灵的正确方法是什么?

我在 Fedora 10 上使用最新的 SDL/GFX 库,并尝试将 PNG 或 GIF 图像渲染到屏幕表面。我根本无法显示透明的 PNG,所以我用全白色替换了透明部分或我的精灵(并尝试了洋红色 255,0,255)。使用以下代码可以很好地显示白色透明 PNG:

但是当我尝试旋转精灵时,它不会丢弃所有的白色像素。我用这个替换上面的代码来旋转:

我最终在一些好的像素周围出现了一个白色轮廓。GIF 图像给出相同的结果。

尝试使用透明 PNG/GIF 文件时,代码是相同的,只是我没有调用 SDL_SetColorKey。然后PNG根本没有正确显示。我发现的一件奇怪的事情是透明 PNG 在 MS Paint 中看起来与在 SDL 中相同,但 GIMP/Photoshop 程序正确打开了它。

我在设置目标表面时缺少什么吗?

谷歌没有出现太多,一个可行的例子会很棒。