Questions tagged «sprites»

对象在空间中的2D渲染。

2
在计划在Unity中着色精灵时,白色是开始的最佳基础颜色吗?
我正在研究Unity中的游戏原型,该游戏将由实心方形子画面/图块组成。我认为我可以为游戏中的每个图块代表具有不同颜色的不同类型的对象。 我认为我可以导入一个单一的正方形精灵,并在Unity中对其进行适当的着色,而不是导入许多不同颜色的正方形。 我在Photoshop中调整色相和饱和度的经验表明,白色不是容易更改的颜色,因为白色的东西通常保持白色。我在Unity中进行的测试表明,尽管我会根据我的Photoshop经验,可以将精灵的“颜色”更改为除白色以外的任何其他颜色,并且精灵似乎被适当地着色。 由于在Unity中进行更改时,白色对象似乎确实具有适当的颜色阴影,因此我的直觉告诉我这是最好的基础颜色,这意味着我可以导入单个白色方形精灵并简单地调整颜色以表示不同的对象和对象状态。 白色精灵实际上是最开始的最佳彩色精灵吗?为什么这样的事情在Unity中起作用而不是在Photoshop中调整色相和饱和度?
10 unity  sprites  color 

2
角色/对象交互动画在等距游戏中如何工作?
我正在计划一个等距的商业模拟游戏,玩家可以看到带有普通家具(例如书桌,白板等)的办公室。 游戏中的角色(工作人员/ NPC)应通过执行一些预定义的任务(例如,在办公桌上的键盘上打字或在白板上书写等)来与这些对象进行交互。 我特别感兴趣的是以下情况: 角色穿过办公室(1)移到他的办公桌(2),坐下并开始打字(3)。 据我了解,我会有一个用于角色移动的精灵表(1)和一个用于桌面的静态精灵(2),但是我不太了解如何处理第三步? 是否有同时包含桌子和角色的组合精灵?我假设没有,否则我将需要为每个桌子和角色组合使用一张精灵板。 通常如何处理? 编辑: 这是游戏主题医院的特定示例动画。您可以在此处观看视频。 据我所见,动画分为几个步骤。 步骤1-角色在桌子和椅子之间移动。 这表明椅子和桌子实际上是分开的精灵。 第2步-角色坐下动画 请注意,在最后一帧中椅子是如何离办公桌更近的。 第3步-桌面动画 第4步-站立动画 与坐下相同,但反向玩。 第5步-离开 使用普通的移动动画移开。 我的问题是如何最好地分离这些动画,图形艺术家通常将如何提供这些动画? 角色坐在桌子上打字实际上是三个不同的角色(桌子,角色和椅子)吗?有谁知道类似动画的示例精灵? 编辑2: 我想我最担心的是,我对精灵的实际外观有正确的期望。我不能自己绘制它们,所以我必须付钱给别人做,而且我认为有某种最佳实践可以制作这种动画?

1
如何手动绘制精灵表的一部分?
我在Unity中工作,发现在2D游戏中动画师没有为我要尝试的工作工作。我想使用Sprite表格构建特定的动画,并能够将相同的动画与按单元格具有相同大小和尺寸的其他Sprite重复使用。经过研究,我发现这是不可能的。 相反,我试图创建自己的动画脚本,但是我不明白如何告诉Unity只绘制精灵的一部分。类似于XNA,您可以使用开始和结束坐标仅渲染精灵的特定矩形。 如何手动绘制精灵表的一部分?


2
顺畅地走一条路
我目前正在制作2D塔防游戏,该游戏具有敌人预定的固定且预定的静态车道(即,塔无法阻挡路径,而寻找路径并不是我要解决的问题)。 我试图弄清楚如何使单位以一种顺畅的方式沿着这条车道行驶。对于如何执行此操作,我有两个粗略的想法,但我希望可以提供一些可能更容易实现/更标准的技术的意见。或者,当然,如果我有一种完全不同的方式,但我从未想到过,我也想学习一下。 航点: 我的第一个想法是将路径定义为一系列硬编码的航点。然后,部队将使用一种基本的“搜寻”操纵算法(例如该操纵算法)沿路径依次移动到每个航路点。但是,我想知道是否可能很难阻止这些单位偏离我希望他们遵循的车道。我想知道是否无法足够迅速地转弯会导致他们在期望的车道上出现某种“滑行”。我想虽然可以通过施加相对较大的转向力来防止这种情况发生? 贝塞尔曲线: 我考虑过的第二个解决方案是用贝塞尔曲线定义路径,并在每个时间步计算沿曲线的点的距离(dt *速度)远离设备当前位置。我怀疑这种技术会使精确定义单元将遵循的路径变得容易得多,但是我不知道如何确切地实现这一目标。有什么建议么? 另外,我不认为这会改变任何人的答案,但是单位也必须能够以恒定的速度沿路径行驶。另外,我正在使用pyglet框架在python中对该游戏进行编程。 如果不清楚这个问题,请告诉我。 编辑:同样,无论其价值如何,我都在尝试复制“ 王国拉什”中敌人的移动行为。

1
Xbox指拨杆用于旋转精灵,基本公式使其以90度的间隔“粘”或“粘”!您如何顺利旋转?
我正在使用一个非常基本的公式来计算我的精灵(例如太空船)应基于Xbox控制器指尖所面对的角度,即您使用指尖来旋转飞船。 在我的主要更新方法中: shuttleAngle = (float) Math.Atan2(newGamePadState.ThumbSticks.Right.X, newGamePadState.ThumbSticks.Right.Y); 在我的主要绘制方法中: spriteBatch.Draw(shuttle, shuttleCoords, sourceRectangle, Color.White, shuttleAngle, origin, 1.0f, SpriteEffects.None, 1); 如您所见,它非常简单,我从指尖获取当前弧度并将其存储在浮子中shuttleAngle,然后将其用作旋转角度参数(以弧度为单位)以绘制往复运动。 由于某些原因,当我旋转Sprint时,它在0、90、180和270度的角度感觉发粘。它想以这些角度解决。这并不能像在使用类似机制的游戏中那样给我流畅自然的旋转。PS:我的Xbox控制器很好!
9 xna  c#  sprites  rotation  gamepad 

3
如何分解精灵表
我有很多Spritesheets格式不佳,我想分解它们,或分解成许多小图像,每个Sprites一个。如果可以,我可以使用自定义纹理打包器工具来构建游戏资源。 我的开发工具是针对Windows的XNA和C#。如何分解图像?

4
openGL中的精灵动画
我在OpenGL ES中实施精灵动画时遇到问题。我已经用谷歌搜索了,唯一得到的是通过Canvas实现的教程。 我知道方法,但是在实施过程中遇到问题。 我需要的是有关碰撞检测的Sprite动画。 我的工作:碰撞检测功能正常运行。 PS:一切工作正常,但我只想在OPENGL中实现动画。在我的情况下,Canvas无法正常工作。 ------------------------编辑----------------------- 我现在有一张Sprite表,说下面的这张表有一些特定的坐标,但是(u,v)坐标从哪里开始?我应该从(0,0)还是从(0,5)考虑我的u,v坐标,并且应该以哪种模式将它们存储在列表中?---->从左到右或---->从上到下 我的sprites类中是否需要2D数组?这是一个更好理解的图像。 我假设我有一个NxN的精灵表,其中N = 3、4、5、6等。 。 。 class FragileSquare{ FloatBuffer fVertexBuffer, mTextureBuffer; ByteBuffer mColorBuff; ByteBuffer mIndexBuff; int[] textures = new int[1]; public boolean beingHitFromBall = false; int numberSprites = 49; int columnInt = 7; //number of columns as int float columnFloat = 7.0f; …

7
我可以使用受版权保护的精灵进行演示吗?
我有一个简短的问题,希望得到大家的意见。 我正在为自己的简历制作2D演示游戏,我想在网上发布该简历。我正在以程序员的身份申请,所以我真的没有自己的艺术。我正计划使用其他游戏中的精灵表和图块集,以便在演示中仅创建一个或两个关卡。我将在屏幕底部表示感谢,并声明这些精灵不是我自己的。 这是一个好主意,还是在非法意义上可能具有潜在的“危险”?

2
英雄/角色精灵大小与图块大小相比?
因此,我正在制作一个简单的平台游戏,其中Hero的大小为16x16,但tile的大小为16x16。听起来不错吧?但是我的游戏窗口/世界是800x416,与之相比,这使得Hero真的很小。这确实让我感到惊讶,但是鉴于Ive在成为新发现之前从未做过平台游戏。 在平台游戏中是否有规模规则? 我想让我的游戏窗口保持其大小(800x416),因为游戏涉及大关卡。但是我的英雄应该有多大? 我希望我对这个问题很清楚,也感谢任何见解。 谢谢

2
在设计或渲染时缩放像素艺术文件?
如果创建以后需要在屏幕上按比例放大的像素艺术文件,则单个像素将变成4像素的盒子。我应该使用2x2像素创建像素图还是应该使用1x1像素创建像素图,以便稍后可以在XNA中以1:2比例将其缩放到2x2像素? 我倾向于认为1:1会导致过多的细节而不是像素美工效果,因此我希望最终的结果采用2:1样式,其中我想要的精灵的1x1像素将在屏幕上占据2x2像素。
9 xna  c#  sprites 

2
精灵表或多种资源
在为Android平台制作动画时,更好的做法是在一张图片上为每个精灵创建具有多个状态的精灵表,还是应该为每个字符/状态/等导出单个图像?哪个选项可以为我提供较小的资源文件大小,哪个更容易让程序员制作动画?

4
如何提高配料性能
我正在为移动平台开发基于Sprite的2D游戏,并且正在使用OpenGL(实际上是Irrlicht)来渲染图形。首先,我以一种简单的方式实现了精灵渲染:将每个游戏对象渲染为具有自己的GPU绘制调用的四边形,这意味着如果我有200个游戏对象,则每帧进行200个绘制调用。当然,这是一个错误的选择,我的游戏完全受CPU限制,因为每个GPU绘制调用中都有少许CPU开销。GPU大多数时候都保持空闲状态。 现在,我认为我可以通过将对象分成大批并仅用几次绘制调用就可以渲染这些批处理来提高性能。我实施了批处理(以便共享相同纹理的每个游戏对象都以同一批进行渲染),并认为我的问题已经消失了……只是发现我的帧频比以前更低。 为什么?好吧,我有200个(或更多)游戏对象,并且每秒更新60次。我必须在每一帧中重新计算CPU中顶点的新位置(平移和旋转)(移动平台上的GPU不支持实例化,因此我无法在其中进行实例化),并每秒进行48000次计算(200 * 60 * 4,因为每个子图都有4个顶点)似乎太慢了。 我可以做些什么来提高性能?所有游戏对象都(几乎)每帧都在移动/旋转,所以我真的不得不重新计算顶点位置。我能想到的唯一优化是旋转的查找表,这样我就不必计算旋转。点精灵会有所帮助吗?有讨厌的骇客吗?还要别的吗? 谢谢。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.