Questions tagged «graphics»

一个非常通用的术语,指游戏的视觉部分。尽量避免无关的用法,如果可能的话,请为您正在使用的特定图形类型(2D,3D),API,框架或库添加标签。

1
2D艺术资产(例如子画面)如何工作?
我对游戏有一个想法,并计划使用Windows Phone 7的XNA开发2D游戏。 今天,我从徒手绘制一些我希望某些角色看起来像的概念艺术开始。现在的问题是采用这些概念并将其以数字形式呈现。 我首先意识到我真的不了解游戏艺术的不同部分。我知道有精灵,纹理和动画,但仅此而已。我认为纹理是3D对象上的精灵,但不确定是否正确?以下是有关游戏美术的一些一般性问题: 您是否在2D游戏中使用纹理? 您在哪里应用游戏美术的不同部分?例如,当您使用精灵与动画时。 精灵,纹理动画和其他艺术品之间有什么区别? 精灵,纹理和动画是游戏的唯一艺术元素吗? 游戏中所有的2D艺术都被视为精灵吗?字符,背景等 您将精灵表和精灵表中的每个字符制作成什么尺寸? 有什么好的书籍或教程可以教您如何从数字前景中绘画艺术?我当时在考虑获取《 GIMP圣经》,但是像这样的大多数书都比数字绘画教授更多的照片编辑。 我的目标是学习如何使用Gimp将概念艺术(背景和角色)转化为数字形式,并了解游戏艺术的不同部分。 无论如何,感谢任何可以提供帮助的人。

1
如何在地形中表示悬崖面?
我正在尝试找出在游戏中以编程方式表示地形的最佳方法。我一直在考虑使用高度图(或等距顶点的网格)来表示地形的表面,并使用Splatmap来实现平滑的纹理化。这对于完全平滑的地形是可行的,但是问题是如何表示悬崖和陡峭的悬崖面。 悬崖本身的呈现方式必须与其余地形不同。例如,他们将需要在悬崖的前面看到不同的(未拉伸的)纹理,但是如果我为此使用splatmap,就不可能在悬崖的纹理上拥有足够多的悬崖面与地面完全分开。 图片说了一千个字,所以... 有什么一般的方法可以存储和/或渲染悬崖以及其他地形高度差异?


2
如何复制“几何战争”中的扭曲效果?
我正在努力实现您在《几何战争》等游戏中看到的扭曲效果。 有人可以帮忙解释一下发生了什么吗?我觉得网格的z轴是由程序员以某种方式进行任何操作的,但是是否存在一些已知的数学方程式才能真正获得正确的翘曲效果? 编辑:更具体地说,我的意思是网格扭曲。一切看起来都朝着负Z轴拉动然后反弹。

5
2D平台游戏:为什么要使物理依赖于帧速率?
“ Super Meat Boy”是一个困难的平台游戏,最近出现在PC机上,需要出色的控制和像素完美的跳跃。游戏中的物理代码取决于帧速率,该帧速率被锁定为60fps;这意味着,如果您的计算机无法全速运行游戏,则物理会变得疯狂,从而(除其他事项外)使您的角色运行速度变慢并掉落地面。此外,如果关闭了vsync,游戏将运行得非常快。 有2D游戏编程经验的人可以帮助解释为什么用这种方式编码游戏吗?以恒定速率运行的物理循环不是更好的解决方案吗?(实际上,我认为游戏的某些部分使用了物理循环,因为某些实体无论帧速率如何都可以继续正常移动。另一方面,您的角色运行[fps / 60]的速度也一样快。) 我对这种实现方式感到困扰的是游戏引擎和图形渲染之间的抽象性的丧失,它依赖于特定于系统的事物,例如监视器,图形卡和CPU。如果由于某种原因,您的计算机无法处理垂直同步,或者无法以60fps的速度正常运行游戏,那么它的性能将大打折扣。为什么渲染步骤会以任何方式影响物理计算?(如今,大多数游戏会减慢游戏速度或跳过帧。)另一方面,我了解到NES和SNES上的老式平台游戏在很大程度上取决于其固定的控制和物理帧率。为什么会这样,并且有可能在不依赖帧率的情况下在这种情况下创建patformer?如果将图形渲染与引擎的其余部分分开,是否必然会降低精度? 谢谢您,如果问题令人困惑,我们深表歉意。
12 graphics  physics 

5
高性能矢量图形解决方案
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使其成为Game Development Stack Exchange 的主题。 5年前关闭。 我正在寻找可以在游戏中使用的高性能矢量图形库。 我正在考虑使用SVG可以制作的矢量图形。 目前,我将考虑任何语言(但必须在Windows上运行)。利用GPU硬件的解决方案将是很棒的。 提前致谢。

5
专注于有效创建视觉艺术资产的样式/技术
我主要是一名程序员,但是我希望能够在进行单独项目时在我制作的游戏的其他部分上胜任工作。 我在这里特别要问的是,我应该学习和使用哪种技术或样式来创建视觉资产,以便能够以最高的效率工作?基本上,考虑到开发中后期可能发生的变化,为其他项目创建的资产的重用等,最终将是整体上最少的工作。 我所说的“技术或风格”是指矢量艺术,数字绘画,像素艺术,多边形建模,雕刻等。 我最感兴趣的是整体比较各种技术。缺乏对每种技术进行实际工作的丰富经验,很难全面了解情况。另外,很明显,如果您要制作3D游戏,则需要制作3D资产,但是现在,让我们讨论为2D游戏创建资产的技术,其中资产可以是2D或3D。
12 graphics  2d  assets  art 

3
HLSL半透明塑料着色器
我正在尝试制作一个着色器,以复制内部带有彩色光的白色塑料对象。通过具有半透明的着色器,或者如果将光放入对象内部,则该光将显示出来,或者通过具有伪装内部光效果的着色器来实现。 我想要的效果有点像光穿过类似于这些图片的灯罩: 理想情况下,我将能够控制光的强度和颜色,使其发出脉冲并通过一些漂亮的明亮荧光色旋转 虽然我不确定从哪里开始! 我的问题是,是否有人知道我应该研究的技术才能产生这样的着色器,或者有一个我可以用作起点的相同/相似着色器的示例?甚至即使您想提供可以完成此任务的着色器
12 graphics  shaders  hlsl 

2
MLAA的明确参考实现?
有人知道形态抗锯齿(MLAA)的书面参考实施吗? 英特尔在以下地址提供了论文和参考实现,但是我发现代码非常不透明。 http://visual-computing.intel-research.net/publications/publications.htm
12 graphics 

7
创建简单粒子效果的最快方法
我正在寻找创建真正简单的粒子效果的最快方法,该效果在游戏中会像地狱般被散布。 基本上,我的游戏看起来像是vectrex游戏,主要由线条组成...我想进行一些小爆炸,这确实很常见。 有什么比仅移动某些点并使用GL_Point渲染更快的方法吗?

1
如何在多层2d tilemap中实现光影?
我正在从头开始编写等距游戏,我想知道如何/是否可以添加灯光和阴影。 我到目前为止的代码可以在这里找到,但它应该是不够了解,现在,地图是真/假值的简单3D阵列。这是环境的快照: 如果是单层tilemap,那将是直接的。我可以理解所需的2d中简单的光线投射。 但是,考虑到我的地图具有多个高度级别以及类似洞穴的区域,我真的不知道该如何为它创建令人信服的阴影。也许逐块解决方案是唯一现实的方法?

2
如何告诉片段着色器不写特定像素?
在WebGL中,我想发送一个由片段着色器处理的屏幕空间四边形,但是让片段着色器仅在特定条件下写出一个像素(例如……它在一个圆圈内,或者像素属于由曲线方程式等定义的半空间的正侧)。 片段着色器中是否可以说“不写像素”? 我知道这可以使用其他各种方法来完成,例如Alpha混合,先渲染然后将其放置在不想绘制像素的背景颜色上,或者对深度或模板缓冲区进行一些技巧。我也知道我可以创建一堆几何体来匹配我要渲染的几何体。 是否有办法使片段着色器选择根本不写像素?

1
呼吸游戏/电影角色
呼吸(胸部和面部特征的移动):我想问一下是否很难建模以及计算是否昂贵。我最近注意到它在马达加斯加3电影中产生了巨大的影响,但是(请纠正我,如果我错了)不记得在任何游戏中都看到过(除了冷/冬场景中的蒸汽云),而且很少有动画电影可以看到明显的程度(例如在情节或情况有必要时)。 从电影图形和游戏图形的角度,我将不胜感激。

3
在慢动作中显示碰撞是否在计算上令人放松?
在许多赛车游戏(例如Burnout Paradise)中,当碰撞将要发生时,游戏会自动切换为慢动作并以缓慢的顺序进行,直到碰撞完成为止。 我一直以为这是为了效果。您不想错过任何碰撞!但是我的一位朋友最近建议这样做是为了确保在发生碰撞时不需要过多的处理速度。 现在我认为这实际上是相反的。当发生碰撞时,慢动作中会显示很多细节,我确信计算和渲染管道会产生开销。 什么是对的? 慢动作场景会增加还是减少CPU / GPU使用率?

3
使用3D模型的OpenGL中的动画
我在Blender中创建了一个模型。现在,我想在我的C ++程序中阅读该3D模型。我认为模型可以导出为各种文件格式,例如.obj,.3ds或COLLADA,然后可以在c ++程序中读取。我已经在网上搜索了很久了,发现了很多教程。但是我大多数都遇到了问题。例如,在Nehe教程中,他们使用glaux,而我不想在程序中使用。其余教程使用Blender不支持的md2。 因此,谁能指导我导出3D模型所使用的文件格式以及如何在OpenGL程序中加载该文件格式?另外,我该如何为该模型制作动画?在使用OpenGL将其加载到c ++程序中之后,是否可以添加诸如色调映射之类的额外效果?如果是,那怎么办? PS我正在使用Linux进行游戏开发

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.