Articles of 第一人称射击游戏

在FPS问题中拍摄的起始方向

最近我在面试中被问及一个解决问题的简单任务。 我们有一个看起来朝某个方向的玩家,还有一个已经在射击玩家的射手。 我必须找出这些镜头是来自左侧还是右侧,这与“反恐精英”在击中时的效果是一样的:游戏从哪个方向展现,看起来像是一个红色的半圆。 我知道球员和敌人的位置的载体。 我尝试了不同的答案,从玩家看到的建立一条线,解决线性系统方程或旋转玩家向量,然后找出标量产品的角度,但他说有更好的方法来做到这一点。 我不需要这个问题的答案,而是find答案的“方法”。 铁有关这个问题的任何书籍,一些类似的问题,等等。

为什么FPS游戏经常自动重新加载?

被Arqade的Meta指向了这里 在我玩过的每个第一人称射击游戏中,我注意到总是使用'自动重新加载空'游戏机制: 我一直觉得很烦人,其他许多人也是这样: 任何方式来closures自动重新加载? – GameFAQs 自动重新加载或手动重新加载 摆脱自动重新加载 自动重新加载,请(和可中断重新加载) 和更多的结果 。 这个特定的游戏机制在第一人称射击游戏中是非常普遍的吗? 几个可能的原因,为什么: 使新玩家容易 使用与其他游戏相同的机制可以更容易地在游戏中学习

第一人称射击相机运动

我在XNA制作FPS。 我似乎无法制作一台FPS相机,可以使用键盘向前,向后,并排移动。 我怎么做?

任何人都知道iOS应用程序每秒运行的帧数?

任何人都知道iphones,ipad甚至android手机运行的帧率?

我如何从武器后坐实施现实的恢复?

我想创建一个方程式来确定一把枪在发射后能多快恢复到中心。 我有一个类似于现代FPS游戏的基于常量(反冲量,子弹扩散等)的武器系统。 当武器发射时,武器系统正在制造出非常逼真的反冲和子弹扩散。 但是,每种武器应该以多快的速度回到中心呢? 我如何实现它? 比如“战地”和“化学需氧量”等游戏分别有“反冲减less”和“中速”的统计,但是如何使用这些统计数据来确定枪械自转回零的时间或速度让我感到疑惑。 我正在尝试在武器的当前旋转(由反冲造成)与其原始旋转之间使用一个简单的lerp。 问题是如何以现实的方式确定它返回的速度。 有没有一个常见的方式,这是实施?

在Unity中使用鼠标input旋转对象时,修复类似波浪的移动

我的程序遇到了一个相当奇怪的问题。 设置: 在我的场景中,我有一个GameObject,我已经为这个游戏设置了我的玩家/角色。 玩家/角色有一个孩子GameObject,它是一个立方体,代表头部,并且是一个通过层次结构的孩子。 它也有一个角色的身体(这两个都只是主要的孩子/角色的孩子)。 当我移动鼠标时,头部的旋转应该跟随鼠标的位置(鼠标被隐藏,所以它依靠鼠标input)。 如果围绕y轴的运动大于设定的量,角色的主体也应该转向。 我有这一切工作正常。 实际运动发生问题。 在某些情况下,它会产生一个波浪般的运动,而仍然遵循鼠标 IE浏览器。 如果我垂直移动鼠标,然后回到“平坦”,然后水平移动(没有任何y移动),它会创建一个水平波动。 另一个旋转也是如此,如果我先水平移动鼠标,然后上下移动,它将创建一个波形,但只能在上/下移动。 Gyazo为GIF展示问题 在上面的GIF中,我稍微向上移动鼠标,然后左右移动。 这个“波浪状”运动可以清楚地看到,它向左,向右移动。 这是我的代码: void moveView() { //This method is called every Update(), after a method that locks the cursor using //Cursor.lockState = CursorLockMode.Locked, then sets it to Cursor.visible = false; //Raw inputs, ySen and xSen are public floats. toRotOnY = Input.GetAxisRaw("Mouse […]

多人射击游戏的体系结构

我对多人游戏同步有疑问。 在游戏架构的情况下是这样的: 客户端告诉服务器在这个位置拍摄,然后服务器模拟相同的动作,然后告诉客户敌人是否被击中。 我认为在这种types的架构中,当一个客户端有太多的滞后时间时,服务器上的信息到达很晚。 可能会发生,如果客户端击中敌人同样的事情可能不会发生在服务器获取信息太迟,所以在客户端上注册的命中丢失。 我注意到,当我有太多的滞后,所有的命中总是注册。 所以我认为我所提出的游戏架构是不同的。 “守望先锋”,“CS:GO”还是“彩虹六号围攻”如何处理同步? 有可能允许客户发送命中的信息到服务器?

滞后赔偿如何真正起作用?

我对游戏滞后赔偿的细节感到好奇。 我读了很多关于它的文章,例如: 1: 源引擎多人联网 2: 快节奏的多人 – Gabriel Gambetta 3: 多人游戏如何同步他们的状态? 我还有这个问题(除其他外): 在第一个环节,Valve的开发者给出了一个公式来计算执行命令的时间: Command Execution Time = Current Server Time – Packet Latency – Client View Interpolation 但在第三个网站上,作者说客户端发送Command Execution Time ,服务器不需要使用这个复杂的公式来计算客户端可以免费给服务器的东西。 我的意思是,玩家总是会发送关于Command Execution Time的正确信息,所以服务器可以相信他。 哪一个是正确的? 或者都适合(针对不同的情况)?

dynamic调整服务器端的tickrate

我对游戏开发/这个网站一无所知,所以我很抱歉,如果这是完全foobar。 今天,我尝试着为networking游戏构建一个小游戏循环(想想MW3,CSGO等)。 我想知道为什么他们不建立在服务器性能基础上的自动调整率? 如果客户知道这个框架是基于这个价格的话,会不会影响客户? 有没有人尝试过呢? 这是我的早餐C ++的大脑。 如果x ticks已经稳定,它将会改善tickrate。 如果“滞后”,则报价将减lessy个数量: // GameEngine.cpp : Defines the entry point for the console application. // #ifdef WIN32 #include <Windows.h> #else #include <sys/time.h> #include <ctime> #endif #include<iostream> #include <dos.h> #include "stdafx.h" using namespace std; UINT64 GetTimeInMs() { #ifdef WIN32 /* Windows */ FILETIME ft; LARGE_INTEGER li; /* Get the […]

什么是支持Linux的最好的跨平台游戏引擎?

什么是最好的跨平台游戏引擎,是最受商业支持的,有免费的可用于Linux上的开发? 我正在计划创建多个非商业化的fps游戏,以获得C ++游戏开发的实际行业经验。