Questions tagged «graphics-programming»

与计算机屏幕上信息的视觉表示有关的编程。

4
对程序员的影响[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 5年前关闭。 有没有人有针对程序员的良好资源来创建特殊效果。我对粒子效果没有特别的兴趣,但是更广泛的东西例如: 全屏效果,模糊,景深,损坏 爆炸,冲击波 武器,激光,射弹 环境-轻的“发光”和光束,水,气泡,灰尘等 我对这些东西感兴趣的是技术角度而非艺术角度。 编辑:澄清一下,我对诸如“在SPU上进行深度剥离的方法”或“具有顶点纹理的快速粒子渲染”之类的低级细节不感兴趣,我对人们如何将各种技术结合到配方中很感兴趣为游戏展现特殊效果。 例如-渲染“空间”爆炸时: 在中心绘制不透明的明亮球体。 围绕随机轴绘制Alpha'd冲击波。 扩大球体并降低alpha。 扩展冲击波并旋转UV。 产生的粒子从中心随机喷出。 当冲击波到达观看者位置时摆动摄像机。

4
每个图形程序员应该写些什么[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 5年前关闭。 我已经在SO上看到了这个问题,但是在这里我希望它专注于GFX。 因此,您认为每个有抱负的GFX程序员应该编写/更改哪些应用程序/功能以使其变得更好? 社区Wiki,因为没有“正确答案”。 LE:不是指实际的游戏,而是指图形功能,例如更改引擎中的某些内容(例如,它如何加载对象),制作合成器等等。


4
固定功能与着色器:适合初学者?
我目前正在上大学,攻读计算机科学。尽管我确实计划在某个时候利用现有的引擎来制作一款小型游戏,但我现在的目标是学习基础知识:即3D编程。我已经对DirectX和OpenGL之间的选择进行了一些研究,由此得出的普遍看法是,无论您选择OpenGL还是DirectX作为培训平台,很多知识都可以转移到其他平台上。因此,由于OpenGL得到更多系统的支持(可能是选择学习内容的愚蠢理由),所以我决定首先学习OpenGL。 做出学习OpenGL的决定后,我进行了更多研究,发现我一直都不知道这种二分法:固定功能OpenGL与基于现代可编程着色器的OpenGL。起初,我认为学习基于着色器的OpenGL是一个显而易见的选择,因为这是当今行业中最常用的。但是,然后我偶然发现了Jason L. McKesson 非常受欢迎的“ 学习现代3D图形编程”,位于:http : //www.arcsynthesis.org/gltut/ 我通读了介绍性文章,并在“关于本书”部分中指出: “首先,当用户遇到必须通过可编程性解决的图形问题时,必须不可避免地放弃使用这种方法学到的很多知识。可编程性会抹去几乎所有的固定功能流水线,因此知识不容易转移。” 但同时也说明固定功能为初学者提供了更轻松,更直接的学习曲线,方法是: “通常认为,使用固定功能管线教新手图形程序员最容易。” 自然地,您可以理解为什么在学习哪种范式上可能会产生矛盾:我是否花了大量时间学习(然后在随后的学习中)固定功能的方式,还是选择从着色器开始?我主要关心的是现代可编程着色器以某种方式要求程序员已经了解固定功能管线,但是我怀疑情况确实如此。 TL; DR =作为一个有抱负的游戏图形程序员,通过固定功能或基于现代着色器的编程学习3D编程是我的最大利益吗?

1
如何渲染镜子或其他反射表面?
我只是想知道如何在3D游戏中创建镜像?我的建议是/是要追踪光线,击中“镜子”对象,然后将第二个凸轮的图片绘制到位于原始相机的镜子“点”上的“镜子”对象上,方法是将镜子对象的撞击面用作镜像平面。 我们将不得不使用来自原始相机中心的一束光线来确定视觉中心在镜面上的位置。

4
如何在视频游戏中创建3D模型?
游戏中的3D模型是如何设计和显示的?都是代码吗?画在纸上,然后在3D图形软件上,然后...什么? 当然,游戏程序员不会在代码中(无论是在Direct3D还是OpenGL中)都定义要绘制的每个形状(/对象)的每个顶点,因此,游戏设计师是否拥有可以使用的工具,例如Maya或类似的专有3D图形软件在那里;他们在该软件中“绘制”模型,以任何格式导出模型,然后程序员通过代码对其进行解析,并自动输入对象/模型的经解码/解析的原始顶点? 我在Google上搜索了很多东西,但是找不到可靠的东西来解释专业视频游戏的这一方面是如何工作的。

4
二维等距游戏中的实时阴影投射
我正在用C ++写一个小的2D等距引擎,并且试图实现实时阴影投射。我按照本页上描述的一种简单方法进行操作,结果是(光与黄色立方体位于同一位置): 结果非常好,但是在墙壁和立方体顶部缺少阴影。这是一个看起来像的示例(我用绿色绘制了预期的阴影): 所有绘制的立方体仅由位于XY位置且Z深度(z = x + y)的3个2D方形构成。我将OpenGL与正交矩阵(glOrtho)结合使用。使用模板缓冲区绘制阴影。 我正在寻找可以帮助我完成此影子投射实施的资源或解决方案。 非常感谢!

2
在2D XNA游戏中创建电/照明/特斯拉线圈效果?
我想在两点之间创建与该视频非常相似的电束:http : //www.youtube.com/watch?v=eMJ8-56L3Lc。效果是如此动态,各点之间的长度和伪随机运动各不相同,以至于我难以想象如何完成这样的事情。是否有任何有用的信息可以指导我正确的方向? 我应该注意,我使用的是XNA 4.0 Reach配置文件,但是自定义着色器还可以,因为我的目标不是Windows Phone。

2
OpenGL ES 2.0:设置2D投影
本文总体上介绍了如何使用固定功能管线绘制清晰的OpenGL 2D图形。 http://basic4gl.wikispaces.com/2D+Drawing+in+OpenGL 由于OpenGL ES 2.0具有某些ES 1.x功能不可用(例如:glOrtho()),因此必须在“片段/顶点”着色器中替换其功能。 我的问题是,如何在可编程功能管线中设置以下2D投影? const XSize = 640, YSize = 480 glMatrixMode (GL_PROJECTION) glLoadIdentity (); glOrtho (0, XSize, YSize, 0, 0, 1) glMatrixMode (GL_MODELVIEW) 如何配置片段和顶点着色器以完全替代上述固定功能2D投影设置?

3
固体作为高粘度液体
我和我的一个朋友正在讨论不同的想法,即允许以一种非常零散的方式销毁世界上的材料,他提出了将固体表示为非常明显的流体的想法。我的直觉是,这可能是:A)非常困难,或者B)资源密集,但是我不确定。 这样的模型对于RPG /冒险rpg / fps是否可行? 编辑:澄清:这个想法是要由该系统处理碰撞和破碎的对象。基本上允许以这种方式处理的任何对象都是可破坏的,而不是使用脚本化可破坏对象。

5
网格上的布尔运算
给每个网格一组顶点和三角形。有谁知道一种算法,或一个寻找的地方(我先尝试谷歌,但没有找到一个好的开始的地方)在所述网格上执行布尔运算,并为生成的网格获取一组顶点和三角形?特别令人感兴趣的是减法和联合。 图片示例:http : //www.rhino3d.com/4/help/Commands/Booleans.htm

3
如何缩小像素画?
有很多算法可以放大像素画。(我喜欢HQX,个人)。但是否有任何显着的算法,它的规模下来?我的游戏的设计分辨率为1280x720,但如果以较低的分辨率播放,我仍然希望它看起来不错。 大多数像素艺术讨论都围绕320x200或640x480升级到控制台模拟器中使用,但我想知道像Monkey Island Remake这样的现代2D游戏在较低分辨率下会看起来不错吗? 当然,可以忽略拥有多种资产版本的选择(即mipmapping)。

5
要在OpenGL ES 2.0游戏中使用的完整数学库?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使其成为Game Development Stack Exchange 的主题。 5年前关闭。 您是否知道用于OpenGL ES 2.0游戏的完整(或几乎完整)的跨平台数学库? 该库应包含: Matrix2x2,Matrix 3x3,Matrix4x4类 四元数 Vector2,Vector3,Vector4类 欧拉角类 上述类,转换等之间的操作。 3D图形中的标准数学运算(点积,叉积,SLERP等) 是否可以单独或作为任何软件包的一部分使用这样的Math API ? 编程语言:Visual C ++,但计划移植到OS X和Android OS。


6
现代游戏中的LOD [关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 6年前关闭。 我目前正在研究有关LOD和网格简化的硕士论文,并且我一直在阅读有关该主题的许多学术论文和文章。但是,我找不到有关在现代游戏中如何使用LOD的足够信息。我知道许多游戏在地形上使用某种动态LOD,但其他地方又如何呢? 例如,3D图形的详细程度指出,由于连续LOD的性能开销,离散LOD(艺术家需要事先准备好几个模型)被广泛使用。那本书是在2002年出版的,我想知道现在情况是否有所不同。已经有一些使用几何着色器执行动态LOD的研究(例如,本文在ShaderX6中实现),是否可以在现代游戏中使用? 总而言之,我的问题是关于现代视频游戏中LOD的状态,使用什么算法以及为什么使用?特别是,是否使用了依赖于视图的连续简化方法,还是运行时开销使使用具有适当混合和冒充者的离散模型成为更具吸引力的解决方案?如果使用离散模型,是否使用一种算法(例如,顶点聚类)离线生成模型,艺术家是手动创建模型,还是使用两种方法的组合?

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.