游戏开发

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

1
创建棋盘游戏AI
我想编写一个棋盘游戏,名字叫Okey,在土耳其最受欢迎。http://en.wikipedia.org/wiki/Okey 但是我有一些关于AI的问题。 Firslty让我解释一下游戏。 该游戏由4位玩家进行。 在这个游戏中,共有106张磁贴,其中2张是假小丑。其他104个瓷砖分为4种颜色,通常为绿色,黑色,蓝色和红色。所有颜色都有两组瓷砖。一组ise包含13个图块,其顺序为1到13。 每个玩家开始14个磁贴(一个是开始15,然后首先开始),然后将下一个玩家抛出最不需要的磁贴之一。下一个玩家可以获取此图块,也可以从桌子中间的堆栈中获取另一个图块。游戏以逆时针方向播放。 该游戏的目的是尽快找到14个图块的有效序列。玩家可以使用相同的颜色按顺序编号对齐图块,直到13。例如绿色1,绿色2,绿色3。这里有一个例外,可以跟1到13。例如红色12,红色13和红色1是有效集。但是红色13,红色1和红色2无效。 或者玩家可以按相同编号的颜色对齐图块。例如绿色1,黑色1,红色1,蓝色1。 每个集合必须是3个或更多的图块才能有效,并且每个集合都称为“每”。少于3个图块对完成无效。有效的整理集可以是这样的。G:绿色,B:蓝色,R:红色,BL:黑色G1 | G2 | G3 B2 | R2 | BL2 R9 | R10 | R11 | R12 BL13 | R13 | G13 最后一件事,当开始游戏时,选择一个图块来确定小丑(okey)。例如,如果选择“蓝色3”,则选择“蓝色”。蓝色4将是小丑(okey),玩家可以使用此图块,而不是玩家赢得或完成一组(每张)所需的任何图块。 当然,这些规则是一般性规则,可以概括以解释问题。如果您可以阅读英文,则可以查看此链接以获取更多信息http://tr.wikipedia.org/wiki/Okey或Google Translate的翻译页 http://translate.google.com/translate?js=n&prev=_t&hl= zh-CN&ie = UTF-8&layout = 2&eotf = 1&sl = tr&tl = zh-CN&u = http://tr.wikipedia.org/wiki/Okey 那我可以使用哪种AI算法?我搜索了minimax理论和alpha beta修剪。但是这些理论通常是大约2个象棋或井字游戏的玩家游戏。 原始问题在stackoverflow上:https …


6
如何将音乐融入游戏中?
作为一个鲜为人知的独立乐队,将我们的音乐融入电脑游戏的最佳方法是什么?我不是在考虑许可问题,而是在考虑哪些频道可用以及如何被可能对我们的音乐类型感兴趣的游戏开发者注意。
9 music 

3
计算战斗后获得的经验值
我正在开发一个简单的文字战斗游戏,在计算战斗后应该获得多少XP时遇到一些问题,我需要考虑一些因素: 1)如果击败同等级的玩家,他们当然应该获得良好的XP 2)如果玩家击败更高级别的玩家,则应该获得出色的XP 3)如果玩家打败了一个较低等级的玩家,他们应该获得差的XP 4)上面的比例应该很好,也就是说,如果玩家A是10级,并且与玩家B处于9或11级战斗,那么差异不会太大(他们击败第11级角色当然会获得更多经验值,但是我们不会期望这是巨大的),但如果他要与5或15级战斗,那么这个差异应该很大。 只是无法计算出在所有情况下都能正常工作的东西,目前我的XP表如下所示: Current Level XP Needed Increase from Last Level 1 30 0 2 65 35 3 106 41 4 154 48 5 210 56 ... 10 672 123 在PHP中,我的代码如下所示,以计算所需的XP: $offset = 30; $multiplier = 1.17; $base = $prevXp * $multiplier; $xp = $base + $offset; …

3
独立街机游戏开发
因此,我一直在环顾四周,但似乎缺乏相关信息。 如果要开发一款街机游戏(例如投币式游戏),而忽略软件方面,那么从硬件方面开始呢? 我的意思是,有没有一家公司出售具有某种规格的街机系统供您开发,等等? 我想这个问题在问更多有关创业方面的问题,但它可能仍与游戏开发有关。

4
纹理在GPU上占用多少内存?
磁盘上的大png可能只占用几兆字节,但我想在gpu上,同一png以未压缩的格式存储,这会占用更多空间。这是真的?如果是真的,有多少空间?
9 xna  textures  gpu 

3
这是什么模式,我应该这样做吗?
我正在使用Flash开发和Flash CS5在AS3中制作游戏。一切都是面向对象的。我想知道,是否应该有一个“网关”类,该类具有对其他类的所有实例化的属性引用,并且我只是将此网关类传递给新对象,因此它们可以访问每个类。像这样: var block:Block = new Block(gateway); //In the block class: this.gateway.player.setHealth(100); //Or: this.gateway.input.lock(); 这是像单例模式一样吗?我应该这样做吗?

3
在游戏开发中使用“朋友”类
通常,在C ++中,游戏开发的速度要高于封装,因此您会看到大量可公开访问的类成员,这些成员实际上不应该公开。 在大多数情况下,我似乎发现实际上只需要很少的几个类就可以知道其他类的内部工作原理,以至于修改或读取其私有数据。 为此私有数据创建公共获取者/设置者会暴露出一些不应该随意修改的东西。 这里的妥协是使用朋友类吗?还是我没有看到的朋友班有一些缺点。

3
如何在GTA 4中创建“醉酒相机”效果?
如果您玩过《侠盗猎车手4》,那么您可能在某个阶段喝醉了。这是我见过的最好的陶醉模拟器之一。在这场比赛中,酒后驾车实际上很难或有时几乎是不可能的。 我知道,构成这种醉酒经历的许多原因是控件的更改或方向的随机更改,但是相机将如何处理? 相机似乎在左右摇摆。它还具有不断变化的模糊和其他影响。这会是某种着色器吗?相互使用来创造体验的效果是什么?

2
您可以在XNA中记录原始声音数据吗?
XNA 4包含Microsoft.Xna.Framework.Audio。麦克风类,看起来可以通过其API从麦克风读取原始声音数据,如所记录: GetData-从麦克风获取最新记录的数据。 GetSampleDuration-根据缓冲区的大小返回音频播放的持续时间。 GetSampleSizeInBytes-返回保持此麦克风对象的指定音频持续时间所需的字节数组的大小。 我可以使用此类读取声音数据,将其记录在数组中然后再播放吗?在Xbox 360上?
9 xna  xbox360  sound  audio  voice 

3
Direct3D纹理采样非常慢
因此,我使用Direct3D 9编写了一个小型游戏,并且针对地形使用了多重纹理。我要做的是对3个纹理和一个混合贴图进行采样,并基于混合贴图的颜色通道从这三个纹理中获取整体颜色。无论如何,当我对1个以上的纹理进行采样时,我的帧速率会大幅下降,我将从120+ fps降至不到50 fps。 这是造成速度下降的HLSL代码: float3 ground = tex2D(GroundTex, multiTex).rgb; float3 stone = tex2D(StoneTex, multiTex).rgb; float3 grass = tex2D(GrassTex, multiTex).rgb; float3 blend = tex2D(BlendMapTex, blendMap).rgb; 我做错了吗?如果任何人有任何有关纹理采样的信息或技巧,那都很好。 谢谢。


6
什么样的游戏设计文件?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 您使用哪种类型的支持/格式来存储和散布游戏设计文档?维基?Doc文件?存储库中的文件?共享文件夹?Google文件? 请提供每个优点和缺点。

8
在游戏开发公司进行面试时应该穿什么?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 2年前关闭。 与其他类型的软件开发公司相比,许多游戏开发公司在工作场所装扮方面不那么正式。例如,我知道我即将面试的一个地方主要是牛仔裤,polo衫或T恤衫的工作场所文化。 我应该穿西装吗?衬衫和领带?衬衫和运动夹克,是否有领带?我想表明我对这项工作很认真,但我也了解这种文化。
9 jobs 


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.