Questions tagged «clipping»

2
如何创建世界治愈波效果?
我想将黑暗和令人沮丧的背景实时更改为快乐的草皮背景,以使快乐背景以游戏角色周围的半径显示。 如果愿意的话,幸福的力量场。 在自定义视图中渲染到画布时,如何尽可能高效地完成此操作? 更新: 这就是我的脑海: private int hModeX, hModeY; private float hModeRadius = 0.1f; private float hModeStart = 0; happyModeBg = Bitmap.createScaledBitmap(happyModeBg, getWidth(),getHeight(), true); hModeX = getWidth()/2; hModeY = getHeight()/2; private void initHappyMode(Canvas canvas){ hModeRadius = 75 * thread.getDelta(); if(hModeRadius > 500) { hModeStart = timestep; //What is timestep? } …

5
如何处理尺寸不一致的Sprite板?
对于具有spritesheet 不均匀精灵的尺寸,我怎么可以得到边界,矩形为每个精灵(即蓝色框下面的图片/我只画了几个例子)? 我想确定的是: offset_x, offset_y, width, height 到目前为止,我仅使用了所有精灵都具有相同尺寸的精灵表。在那种情况下,只需要指定x和y偏移即可获得特定的精灵。然而,对于spritesheets 非均匀的尺寸,这并不工作。 编辑:阅读完评论和答案后,我改写了我的问题,以使其更具包容性。在游戏中使用Spritesheet的实际过程。以前,该问题包含以下要点:人们为什么会生成尺寸不一致的Spritesheet,以及我该如何处理。

4
为什么OpenGL中的剪辑空间具有4个尺寸?
我将其用作一般参考,但是我浏览在线文档和书籍的次数越多,对此的理解就越少。 const float vertexPositions[] = { 0.75f, 0.75f, 0.0f, 1.0f, 0.75f, -0.75f, 0.0f, 1.0f, -0.75f, -0.75f, 0.0f, 1.0f, }; 在这本在线书中,有一个示例,说明如何为OpenGL绘制第一个经典的hello世界,即制作三角形。 三角形的顶点结构按照上面的代码声明。 与其他所有相关资料一样,这本书强调了“剪辑空间”是一种4D结构,该结构用于基本确定将要栅格化并渲染到屏幕的内容。 这是我的问题: 我无法想象4D的东西,我不认为人类可以做到这一点,此Clip空间的4D是什么? 我读过的最易读的文档是关于相机的,这只是对剪切概念的抽象,我明白了,问题是,为什么不首先使用相机的概念呢?熟悉的3D结构?带有摄像头的概念,唯一的问题是,你需要定义其他方式准,所以你基本上要添加什么其他的语句样的相机,你希望有。 我应该怎么读0.75f, 0.75f, 0.0f, 1.0f呢?我得到的只是它们都是浮点值,我得到前三个值的含义,这意味着最后一个是什么?

2
在4D同构空间中进行裁剪时,GPU实际做什么的详细信息?
我正在通过实现一个微型软件渲染器来学习可编程渲染管道。我尝试以“硬件”样式实现它。但是,我对GPU管道不熟悉,并遇到了一些均质裁剪的问题。 均匀剪裁空间包含一个w变量,该变量在每个顶点处都不同。每个顶点对象在其自己的裁剪空间中是否是同质坐标(在投影矩阵和均质除以w之间)?如果是这样,如何截断比平截头体更近或什至在相机后方延伸的线和三角形(即w <= frustum_znear)? 更新:该线程说,齐次空间中的裁剪直接是4D齐次空间中的交集问题。表示交点为p_vec4 = t * point1_vec4 + (1 - t) * point2_vec4。假设我在4D同构空间中有P0(-70, -70, 118, 120)和P1(-32, -99, -13, -11),且与交点plane w = -z(在NDC中为z = -1)为(-35, -96, -1, 0.9) t = 0.99,如何在NDC空间中获得相应的顶点对象? 一旦获得正确的交点,是否应该在顶点着色器产生的顶点对象之间进行插值以获取新的顶点对象?
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.