Articles of 字符

多部分字符精灵和透明度

在我的二维平台游戏中,我的角色由多个独立的部分组成,可以在层次结构中独立移动,以便移动肢体和头部,改变面部表情等等,或者增加他们携带的设备或武器。 问题是,当我通过使整个层次透明时,使角色变成半透明的(如幽灵,或“隐形术”),他们的层次开始变得可见,隐藏在其他人身后的部分突然开始变成通过其他身体部位看到:P(例如它的身体隐藏在衣服后面,或身体内部的腿部分)。 我宁愿让整个角色的形象变得透明。 (角色从不同的精灵构建的方式是一个“实现细节”,不应该是玩家可见的,尤其是如果它看起来很丑陋的话:P) 任何想法如何能够实现? 我有一个想法,我可以先把整个角色渲染成纹理,然后显示一个应用了纹理的简单矩形,但是这可能会使渲染管线复杂化,因为在角色最终出现在纹理之前需要多个阶段屏幕以及所有需要透明渲染的角色。 所以虽然它可能会起作用,但我不认为这是最好的主意。 有没有更好的方法来做到这一点? 附注:我希望我的角色可以由玩家定制,以便他们可以select肤色,衣服,武器和东西。 所以我认为我可以在灰度级上制作一个基本模型,然后通过改变底层网格的颜色(有点像旧时代的便宜照明效果)或纹理混合来对它进行着色。 但是,这当然需要对角色的所有组成部分进行一些分层(例如,轮廓和填充是分开的,并且为四肢和身体交错,以使轮廓总是在所有填充层的下面)。 但是这会导致透明度的问题,因为这样可以通过填充来看到轮廓。 但是我猜如果透明度问题解决了,这个问题也就消失了。

如何使一个可定制的3D角色与maya的Flash游戏

我正在用alternativa 3d引擎进行3D flash角色扮演游戏。 我的游戏需要主角是可定制的,例如,玩家必须能够为角色添加小胡子,帽子,领带,改变角色,服装等的颜色。 我怎么能做到这一点? (我正在使用maya进行建模。) 提前致谢。

如何将Daz3D字符导出为XNA格式?

如何将Daz3D studio中创建的3Danimation角色导出为适合XNAvideo游戏的格式? 我正在寻找如何确保重量,骨骼,顶点和材料被正确翻译成XNA可用格式的说明。

投影的纹理不会出现在网格的“背面”上?

我想通过使用投影纹理在我的角色身上创造血液伤口。 我曾经看过一些有关Left 4 Dead这类游戏的评论,他们说他们使用投影纹理来performance血液。 但是投射纹理的方式是,如果你把一个纹理贴在一个装有角色的角色上,说出他的胸部,那么纹理也会出现在他的背上。 那么有什么窍门? 如何获得投影纹理只出现在网格的一面? 如果有帮助,我使用Panda3D游戏引擎。

你们如何召集一个class级来实例化NPC和玩家?

我的想法是有一个类来实例化NPC和玩家。 我曾经想过一些像Entity这样的名字,但是这个名字太宽泛了,因为它可以指代从块到事件的任何事情。 我也想到了角色,但是这个名字似乎只涉及到故事中的重要角色,而不是你可能在世界上遇到的任何NPC。 这是一个相当直接的问题,但我已经把我的脑子花了一个小时左右,似乎没有得到任何有用的想法。 谢谢你们,和平。

如何在浮点数组C#Unity中查找最小数量

我有一个for循环,检测列表中的每个游戏对象的位置,并获取该对象和锚定在中心的对象之间的差异,然后将所有值存储在一个浮点数组中。 接下来应该发生的是find该数组中的最小距离,并使该对象(距离最小的对象)移向锚定的中心。 问题是不管我做什么,它总是得到最大的数量(这是最远的游戏对象)。 这是我到目前为止: public RectTransform panal; public GameObject[] characters; public RectTransform center; private float[] distance; private float minDistance; private bool isDragging = false; private int distanceBetweenCharacters; private int minCharNum; private void Start() { int charLength = characters.Length; center = GameObject.Find("CenterCompare").GetComponent<RectTransform>(); distanceBetweenCharacters = 200; } private void Update() { for (int i = 0; i […]

文件path字符

我有一个简单的问题,我找不到答案: 使用.NET Framework在文件目录中说"folder1/folder2/file"和"folder1\\folder2\\file"有什么区别? 有什么区别吗? 还有什么“@”字符呢? 我不确定这是XNA特定还是.NET特定的,但是这里是一个例子: ContentManager.Load<Texture2D>(@"SpriteSheets/Tile"); 谢谢。

角色模型:单个网格与个别部分

我正在研究各种游戏的3D角色模型(具体而言,“战地3”和“DMC”),就像研究工作和将模型导入Blender3D一样,我发现模型的每个部分都是一个单独的网格物体(头部,盔甲背心,双腿,手等)。 这让我想到:艺术家为什么不把它们塑造成一个单一的对象呢? 我认为这会更好,因为: 你可以在模型中保存几个多边形[*]。 由于一个网格可能不会与相邻网格同步变形,因此不会将单独的部分animation化(**)会导致剪裁问题? [*]所有的部分重叠在一起=盔甲背心是重叠的胸部多边形,这是不可见的,从而浪费。 [**]所有多边形和边相互连接。

在游戏过程中,不能使用标准的FPSController

在玩一个简单的脚本时,我正在养育标准资产FPS控制器。 控制器得到父对象,但也会立即inheritance父对象的旋转。 这在编辑器模式下不会发生。 无论我用脚本移动播放器还是用鼠标光标对其进行父母操作,都会发生这种不正确的行为。 我怀疑错误来自字符控制器脚本的设置方式。 在FPS控制器脚本中,玩家通过鼠标在“更新”function中的旋转按以下方式进行旋转: private void Update() { RotateView(); } private void RotateView() { m_MouseLook.LookRotation (transform, m_Camera.transform); } m_MouseLook从m_Camera.transform中获得它的旋转。 它反过来使用transform.localPosition 。 我认为这是使用本地化导致奇怪的行为。 我如何解决它? 我添加了我用来重新保存下面的fps控制器的脚本: public Transform ParentTarget; public GameObject player; void OnTriggerEnter(Collider other) { player.transform.SetParent(ParentTarget, true); } void OnTriggerExit(Collider other) { player.transform.parent = null; } 正如我所说的,脚本非常简单,当我在播放过程中用鼠标拖动控制器来重新控制控制器时,会发生同样的错误。 如果我将worldPositionStays设置为false,那么玩家是偏移的,并且不会inheritance父旋转。 这不是我想要的。 玩家步入触发器之前,这是我的场景。 红色框是触发器。 蓝色框是新的父母(父母旋转45度) 这是原来的不正确的行为。 当他走向触发器时,玩家立即旋转45度。 […]

角色实现和体系结构

我和一个朋友正在尝试在Java中制作RPG,而我们正在学习这门语言,而且我们一直在讨论这个角色的实现。 我们想知道哪个是计算和扩展标准的最佳解决scheme。 游戏将会像“最终幻想6”一样。我们会有很多不同的角色,每个角色都有自己的属性和3种不同的能力。 统计信息会经常变化,并保存以供将来参考。 它不应该有两个相同的字符。 scheme1:我的想法是辩护说会有一个“英雄”级别,每个角色都会扩展英雄。 例如,如果我有10个字符,则会有10个类扩展“英雄”。 这个角色类将包含所有有关统计的variables和每种能力的方法。 我们将实施一个单例模式,以确保只有一个例子。 选项2:对于我的朋友的想法,对象“英雄”将有几个属性,更重要的是名称,统计和字符类。 虽然名字和统计可以被概括为简单的variables,但是角色类别被performance为与特定英雄绑定的对象。 总之,一个角色类的实例只能绑定到一个“英雄”,但是很多英雄可以拥有一个共同的角色类。 例如,乔希和约翰都可以是“战士”,但是他们不共享同一个角色类对象的实例; 它们在function上是相似的。 一个“英雄” 必须有一个角色阶级才能正常工作,因此他的创造力要求他自己的名字和一个角色阶级的名字。 这个方法在创建英雄方面保证了更高的灵活性,因为使用通用字符类(例如在派对上有许多“战士”)变得可能; 实际上,这个角色类的概念可以扩展用于敌方单位。 但是,这需要更多的处理能力。