游戏开发

专业和独立游戏开发人员的问答

14
如何处理多账户创建和作弊?
我正在开发一个可以作为Web应用程序运行的游戏。事实是,如果一个玩家创建多个帐户,游戏就会失去意义。想象一下这是一个回合制策略游戏,如果您与另一个人对战(使用另一个帐户),则可以轻松获得大量积分。 首先,我考虑过记录每个用户的操作,然后比较用户的IP以检测是否存在任何作弊线索。但是后来我注意到,不同的用户可能在相同的IP下运行,例如,如果他们在学校中并且他们所有的人都使用代理共享相同的IP。使用这种方式,无辜的人可能会被禁止。 有什么更好的方法我想念吗?
20 web  anti-cheat 

2
如何将3D点投影到3D线上?
假设我有一条由两个点A和定义的线B,都以形式(x, y, z)。这些点代表3D空间中的一条线。 我也有一点 P,用相同的格式定义,不在线上。 我将如何计算该点在直线上的投影?我知道如何在2D中执行此操作,但是3D似乎在上面浪费了所有资源。


9
如何完成游戏?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 5年前关闭。 我的问题是,每当我开始为游戏的克隆版(用于练习)或自己的游戏或其他问题而编程时,都会在开发过程中停下来,因为我对此失去了兴趣。 您如何保持开发游戏或整体开发的兴趣?

6
如何使用3d perlin噪声函数生成地形?
我可以使用2d perlin杂讯功能来产生高度值,但我不明白为什么要使用3d perlin杂讯功能。在Notch的博客中,http ://notch.tumblr.com/post/3746989361/terrain-generation-part-1,他提到在我的世界上使用3d perlin噪声函数生成地形。有谁知道该怎么做以及为什么会有用吗?如果传递x,y和z值不表示您已经具有高度?

4
最好的Python 3D引擎是什么?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 6年前关闭。 我想要一个简单的3d Python引擎,它对于Linux来说很容易获得并且易于使用。Soya3D对我失败是因为缺少文档。我应该能够加载常见的3D模型,而不会出现问题。
20 3d  python 

7
对于2D游戏,是否有任何理由不使用Direct3D或OpenGL等3D API?
我已经很长时间没有从事游戏开发了。当我这样做时,大多数人都使用Direct Draw来创建2D游戏。在我停下脚步的时候,人们说采用正交投影的OpenGL或Direct3D只是要走的路。 我正在考虑重新创建2D游戏,尤其是在手机上,但也可能在XNA平台上。要使用OpenGL制作东西,我需要(充分)小的学习曲线来使自己适应3D开发。 是否有任何理由跳过它,而是使用2D框架工作,而我只有一个宽度x高度帧缓冲区,我需要用像素填充?
20 2d  opengl  directx 

5
我有一个“ amoeba”游戏机制。关于如何实施的任何想法?
一个之外的俄罗斯方块克隆,一个蹩脚的2D自上而下的射手,和一些与像团结和Flixel东西乱搞,我意识到,我还没有完成一单,抛光,钟声和口哨声游戏。我想更改此设置,并且对下一个项目有一个想法。 这个想法是你是变形虫。变形虫具有这些像眼睛一样的核心(或者类似的东西,我不了解生物学),而你有两个。您可以控制一个具有WASD与其他同IJKL。每个核心周围必须有恒定的填充半径: 而且变形虫的面积必须保持恒定。因此,如果您在一个方向上移动核心,则会增加变形虫的面积,但其他地方的减少可以弥补这一增加: 我要实行一个阴道技工。您可以像老板一样吞噬事物来吸收事物。甚至可能是多余的核心,或者是一根针刺破了您,导致您所有的内在东西开始涌出: 但这是问题所在:我不知道该怎么做。但是,我想要一些有关如何实现它的想法。我应该探索Box2D之类的物理库吗?或者也许涉及流体物理学?任何帮助将非常感激。 PS随意窃取这个想法。我有很多主意。如果您这样做,请告诉我您的制作方式,以便我自己尝试。

2
模型周围有奇怪的白色轮廓
我正在使用XNA 4开发游戏,最近我按照本指南切换到了延迟着色实现。现在,我的模型上出现了一个奇怪的白色轮廓,我不确定是什么原因引起的。我认为可能是普通渲染目标或深度渲染目标缺乏精确度,但将它们提高到64位(Rgba64)而不是32位(彩色)没有帮助。我还认为镜面反射计算可能存在一些问题,因此我尝试将镜面反射设置为0,但这也没有帮助。在PIX中调试像素显示该像素的漫反射值被计算为接近白色。有任何想法吗?我在下面提供了该问题的图片,以完整尺寸查看时更容易。 像素着色器: float4 PixelShaderFunction(VertexShaderOutput input) : COLOR0 { input.ScreenPosition.xy /= input.ScreenPosition.w; float2 texCoord = 0.5f * (float2(input.ScreenPosition.x, -input.ScreenPosition.y) + 1) - halfPixel; float4 normalData = tex2D(normalSampler, texCoord); //Transform normal back into [-1, 1] range float3 normal = normalize(2.0f * normalData.xyz - 1.0f); float specularPower = normalData.a; float specularHardness = …
19 xna  hlsl 

5
iOS用户是否在游戏中使用Facebook和Twitter按钮?
是否有人对在iOS游戏中放置Facebook或Twitter“共享”按钮的成功性有任何见识或经验?例如,当用户获得高分时,向他们展示通过Facebook或Twitter分享其得分的选项。 我对在游戏中加入Facebook或Twitter按钮的保留/偏见是: 不信任自动发布的按钮,而没有机会自己设置文本格式 我不使用它们,因为我倾向于自行创建推文或Facebook墙上的帖子 另一方面,这种按钮的潜在好处显然是深远的。问题很简单:iOS用户实际上使用了这些按钮吗?

1
我的Respawn协程​​怎么了?
我正在创建一个2D平台游戏,其中如果玩家掉落地面/地面,那么我希望玩家在最近的检查站重生。但是我希望玩家从地面掉落和重生之间存在延迟。这是我的代码中实现此目标的部分: private void OnTriggerEnter2D(Collider2D collision) { Debug.Log(collision.tag); if (collision.tag.Equals("Kill")) { StartCoroutine("Respawn"); } else if(collision.tag.Equals("Checkpoint")) { Animator flag = collision.GetComponent<Animator>(); if (!flag.GetBool("hasCrossed")) { flagCounter++; flag.SetBool("hasCrossed", true); checkpoint = collision.gameObject.transform.position; } } } IEnumerator Respawn() { yield return new WaitForSeconds(respawnDelay); transform.position = checkpoint; } 对于较小的重生延迟(例如1或2秒),此方法效果很好。但是在将延迟增加到5秒后,出现在最近的检查站之后的玩家会立即消失,然后经过多次重复后,玩家会重新出现。 这是2秒的延时 这是5秒的延时 我怎样才能解决这个问题?
19 unity  coroutines 

5
是否有反向游戏化术语?
游戏化是将游戏机制非游戏环境的过程。 反向游戏化是在游戏中使用非游戏环境或非游戏机制的过程。 例如: 游戏化 -您可以使用排行榜,徽章等学习交通代码。 反向游戏化 -您可以创建一个游戏(类似gta)来教授其中的交通代码。 有更好的用语吗?

4
如何使用抵御客户端黑客入侵的视觉效果实现多人游戏伪装?
想要改善这篇文章吗?提供此问题的详细答案,包括引文和答案正确的解释。答案不够详细的答案可能会被编辑或删除。 我一直在考虑在多人游戏中实现隐身。这是一个MOBA风格的游戏,因此请考虑英雄联盟(LoL)和风暴英雄(HotS)。多个客户端连接到单个服务器,该服务器将游戏状态广播到所有客户端。客户端将其输入数据发送到服务器,服务器在遇到无效命令时可能会拒绝输入数据,从而使作弊成为不可能(理论上是这样)。 现在,我故意提及这些游戏是因为两者的隐身方式有所不同。大声笑具有两种可能的状态:您要么完全可见,要么完全不可见。另一方面,HotS通过隐约可见的方式实现隐身: 我认为这是一个精巧的技工,因为它提升/奖励关注您周围的环境。但是,这是一款多人游戏,让我意识到这可能很容易利用。 当您以“ LoL”方式实现隐身时,您可以简单地停止将玩家坐标发送给其他客户端。当玩家的角色隐身时,服务器可以再次广播该位置。但是,使用HotS模型,可以在角色正在移动的空中看到微光。这意味着服务器必须将播放器的位置发送给其他客户端。这意味着改变纹理或模型甚至游戏代码本身的玩家可能会使披风技工变得毫无用处。这是 HotS板上的一个线程。 我的问题是,是否有某种方法可以实现隐身(使用“ Shimmer”,即“ HotS”),而不会出现狡猾的玩家可以修改游戏(数据)和“击败系统”的问题。这可能吗?如果没有,采用这种机制的其他多人游戏如何处理呢?唯一的LoL隐身风格无法企及吗? 我曾考虑过让服务器不时地发送虚假的“隐身”位置,但这也损害了只注意的公平玩家,因此不会这样做。

1
如何用ASCII艺术效果渲染3D游戏?
我正在尝试为Unity3D中的3D游戏创建复活节彩蛋。我想用ASCII艺术暂时渲染我的游戏。 我的第一个想法是创建一个着色器来执行此操作,但是我不确定这是否正确。
19 unity  shaders 

13
如何使探索游戏中的治疗变得有趣
我正在创建一个专注于探索的游戏,尽管我在康复方面有些失落。 问题是我不喜欢敌人随机降低生命值的想法,因为这通常会导致生命值低下且不在任何治疗站附近(Metroid,Axiom Verge)的磨牙,而且我不想复制灵魂/ Hollow Knight的/ Focus系统(战斗系统已经被我窃取了:3),但是Hollow Knight是我玩过的唯一一款专注于探索的游戏,使治疗变得有趣。 我也想到过自动再生,但是,这很容易导致玩家在boss战斗中治愈时变得胆怯,这会中断游戏流程。 我还考虑过击打敌人可以恢复1/8的生命值,但是这会使玩家在获得1/8的增益后感觉不到紧张,这会使他们在再次被击中时不会丧命,并且使游戏感觉像是全攻防。 我也曾尝试过一种物品治疗方法,玩家必须吃点东西或喝点东西才能治愈,但这并不能真正鼓励治疗,因为一旦物品用完,就无法治愈,直到获得更多(Legend塞尔达传说)。 我也几乎没有任何治疗的余地,但是我注意到,在探索时,如果您在困难的老板面前做出了哑巴的打击,或者在老板变得辛苦之前做出了哑巴的打击(咳嗽,库珀头咳嗽),玩家要么自杀或跑回康复站。 我该怎么做才能使治疗变得有趣,并且不中断游戏流程? 这是2D平台游戏,跳跃在战斗中非常重要。

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.