Articles of 掩蔽

用网格遮掩部分图像

我需要使用2D网格去除图像的一部分。 由于图像是可破坏的(火炮游戏风格),因此缩小内存中的图像将有所帮助。 蓝色部分应该保留,红色部分在网格内,应该删除。 请注意,图像也旋转。

进入/离开区域时跳转GameObject大小

下面我有一个图像描述了我要去的所需function。 假设你控制一个正方形,当你把这个正方形移动到一个给定的区域时,在这个区域内的任何一个刚体/模型都将在进入时放大,在离开时缩小。 所以现在你或多或less都由两个矩形组成,一个小一个大。 什么是实现这一效果的优雅方法?

我如何使对象仅在特定图层上可见?

请参考下面的图片了解。 我正在从事2D游戏。 我有三个元素:“背景(第0层),前景(第1层)和对象”。 我已经使用精灵渲染器来设置背景和前景图像。 对象在运行时被实例化。 我如何使对象的A部分不可见? 我想让对象只在前景中可见。 如果对象完全在背景上,则应该完全不可见。 如果对象完全在前景上,则应该完全可见。 A部分和B部分仅供参考。 这是一个单一的对象。 要实现的目标如下图所示:

不能获得多个纹理的面具工作

我想渲染三个纹理:背景,黑色/白色的前景面具和前景。 我已经使用了这个OpenGL – 与多个纹理的面具 ,但我无法得到它的工作。 我只得到最后的渲染纹理,在这种情况下是前景纹理。 这是我的代码: #include <GL/glew.h> #include <GL/glfw.h> #include <IL/il.h> #include <IL/ilut.h> #include <stdio.h> #include <cstring> #include <stdlib.h> void DibujaCuadro(GLuint idtextura); int main(){ bool running = true; ilInit(); glfwInit(); if(!glfwOpenWindow(640,480,8,8,8,8,8,8,GLFW_WINDOW) ){ glfwTerminate(); return 0; } glfwSetWindowTitle("GLFW Application"); glewInit(); glMatrixMode(GL_PROJECTION); glLoadIdentity(); glOrtho(0,640,0,480,-1,1); glMatrixMode(GL_MODELVIEW); glClearColor(0.0,0.0,0.5,1.0); ILuint idimg; ilGenImages(1,&idimg); ilBindImage(idimg); ILboolean imagen; ILint ilbpp; ILint […]

如何在Unity(2D)中将精灵裁剪或遮罩为特定形状?

我正在尝试做一个程序化的2D地形生成。 我已经设法使这个function生成点,我一直在testing/debugging通过使用一个对象的二维多边形对撞机创建地形。 现在已经完成了,我想使用这个形状来裁剪一个大的精灵,使用这个形状来获得成形的地形。 如果我有一个方形的地形精灵,是否有任何方法来裁剪顶部或掩盖它到多边形对撞机的形状(或我正在使用的函数的形状)。

模板IncrSat和DecrSat的解释

有人可以解释我什么是IncrSat和DecrSat的目的? 目前我知道他们递增/递减缓冲区中的当前值,并确保值在0到255之间,但我想知道如何使用它们。 你能举一个简单的例子,并解释一下IncrSat或DecrSat如何提供帮助?

模板内的模板? (在同一物体上的多个蒙版)

所以请看看我想达到什么目的 红色和蓝色部分是我想要掩盖的对象。 事情就是被绿地掩盖,只有在这之后它才会被青色的区域所掩盖,就像一个滚动的视图。 目前我使用模具着色器和第一个面具的作品,但我不知道如何应用第二个面具。 另外,我不想为此使用内置的UI屏蔽系统。 场景中的所有对象都是精灵。 问题是,我希望实现一个层次掩盖系统,孩子被父母掩盖。 你能给我一个关于我应该怎么做的小费吗?

物质画家:面部select面膜

是否有可能select模型的刷子将适用于多边形? 这是当我画房子的内部时发生的事情。 内: 外: 就好像WASD Camera控制器的不存在一样,每个画笔描边都会在它周围的面部涂抹。 画室内环境是实体画家的痛苦,但我没有看到任何其他计划可以完成这项工作。

在Unity3D中,如何创建高效的刮刮卡效果?

我想在新的Unity UI的新Image标签中创建一个类似刮刮卡的效果。 我知道setPixels是可能的,但在移动设备上这是非常昂贵的。 像这样的东西: 我希望用户能够拖动图像的任何部分以“刮掉”顶层,并显示其下的内容。 我怎样才能做到这一点?

弯曲的米和测量仪

我想知道GameDev堆栈交换中的人们如何处理诸如生命条或能量条之类的曲线计量GUI元素。 我的想法是,你可以使用具有截止值的着色器和具有专用于掩蔽图像(alpha)的一个通道的图像和也具有与统一的浮点数相比较的梯度的图像,以确定是否该片段应该是完全透明的。 但是,编写这个着色器时,我遇到了一些奇怪的行为。 具体而言,着色器的输出有一个奇怪的人为现象,其中截断开始看起来几乎像撕纸 – 指示仪表末端有一个马虎的轮廓线。 这个图像有一些失真的影响,像素应该通过截止统一的终点。 肯定有一个更好的方式,以更机智的方式做同样的事情。 着色器代码如下: CGPROGRAM #pragma vertex vert #pragma fragment frag sampler2D _MainTex; float4 _Color; float _Cutoff; struct Vert_IN { float4 loc : POSITION; float4 texcoords : TEXCOORD0; }; struct Frag_IN { float4 pos : SV_POSITION; float4 uv : TEXCOORD0; }; Frag_IN vert( Vert_IN input ) { Frag_IN output; output.uv […]