opengl-es相关内容
我正在开发一款游戏,我想在网格上的一系列精灵下创建阴影.阴影比精灵本身大,并且精灵是动画的(即移动和旋转). 我不能简单地将它们渲染到精灵 png 中,否则阴影会与相邻的精灵重叠. 我也不能简单地将阴影单独放在较低的层上,因为当它们重叠时,它们会在它们的交叉处产生暗带. 这些精灵是动画的,因此无法整体渲染. 基本上,我希望精灵的阴影混合在一起,以使它们在设定的不透明度下最大
..
..
如何在 Cocos2D 框架中绘制填充多边形? 下面的代码绘制多边形但没有抗锯齿.我应该改变什么? void ccFillPoly(CGPoint *poli, int points, BOOL closePolygon){//默认 GL 状态:GL_TEXTURE_2D、GL_VERTEX_ARRAY、GL_COLOR_ARRAY、GL_TEXTURE_COORD_ARRAY//需要的状
..
在以下代码中: gl_FragColor = vColor * texture2D(u_Texture, v_TexCoordinate); 我注意到如果 u_Texture 未绑定,则 texture2D 返回的默认值是白色 (1,1,1,1). 我的着色器基于这个事实是否安全? 解决方案 我没想到. 我见过默认值为黑色的其他实例.如果采样器使用的内存是一段未初始化的视频
..
根据 HTML5 Rocks,WebGL 实际上是 2D API,而不是 3D API.他们为什么这么说,这是什么意思? 我们可以在 WebGL 顶点着色器和片段着色器中指定 X、Y、Z 坐标.我无法理解 2D 和 3D 图形 API 之间的区别.你能解释一下为什么他们说这是一个 2D API 吗? 解决方案 WebGL 是光栅化 API 而不是 3D api.您必须为其提供投影坐标
..
在 libgdx 框架中,我们只能使用图像的二次幂(64x256、128x32 等),因为 OpenGL 需要它. 有什么好的方法可以“通过"这个限制吗? 例如:使用图片800x480. 解决方案 设置 Texture.setEnforcePotImages(false); 就没有限制了.因此,您不能只使用大小为 2 的图片.这只是“可以拥有"而不是“必须拥有". 问候
..
这是我之前的问题和帖子的延续,参见这里.感谢我在那里收到的答案,我觉得我能够更接近我的目标,以及进一步学习 OpenGL,但在弄清楚使用模板缓冲区的基础知识后不久,我遇到了一个问题. 似乎当我将精灵绘制到模板缓冲区时,它会绘制整个正方形区域,而不是像我无知地希望的那样仅绘制不完全透明的像素.我隐约明白为什么会这样,但我不确定解决方案在哪里.我已经对模板本身进行了很多试验,并且我修改了 spr
..
我正在使用 libGDX(实际上对它来说很新)和 Android.我想将 3d 对象朝它所面对的方向移动(使用一些速度).我认为这是一个基本问题,但找不到直接的答案.我有一个表示对象旋转(方向)的四元数,我有一个表示对象位置的 Vector3.问题是如何使用来自四元数的信息更新位置 Vector3,以便在四元数表示的方向上移动对象.(另一种方法是从四元数中提取滚动俯仰和偏航,并通过应用三角计算获得
..
我正在使用屏幕高度百分比动态生成我的字体并设置百分比(显然将来会乘以密度. 一些笔记.我正在读取 OTF 文件.使用最新版本的 LibGDX(版本 1.2.0) 我有以下问题:(大字体中断并且看起来非常模糊,但仅在 medium 上.Large 和 small 看起来非常清晰) 我的预设字体大小: //字体大小,小,中,大,占屏幕的百分比.公共静态浮动FONT_SIZE_LAR
..
我正在使用 LibGDX 制作游戏.我想根据需要同时加载/卸载资产.但是,等待资产在主线程中加载会导致延迟.为了解决这个问题,我创建了一个后台线程,用于监控需要加载哪些资产(纹理、声音等)并适当地加载/卸载它们. 不幸的是,从该线程调用 AssetManager.update() 时出现以下错误. com.badlogic.gdx.utils.GdxRuntimeException: ja
..
由于性能问题,我正在尝试将基于 android Canvas 的游戏转换为 Libgdx.目前,当我必须(动态)生成拼图碎片精灵时,我遇到了问题. 我做了什么:我使用了 android 位图操作(Path 和 PorterDuff)并生成了拼图,然后将其提供给 AndroidLauncher 中的 Libgdx Game 对象. 问题 1:有没有更好的方法将位图转换为 libgdx 核
..
我正在使用 libgdx 为 android 开发一个基本的 3d 游戏,并且在给定从指南针提供的三个旋转角度(方位角 - 围绕 Z 的旋转,滚动 - 围绕 Y 的旋转,俯仰 - 旋转)的情况下,我很难正确定位相机关于 X).我在下面的代码中取得了一些小小的成功,因为我可以按照我的预期正确地将虚拟相机对准 Z 轴和 X 轴.(角度以度为单位 [-180,180]) camera.directio
..
我正在编写使用 GL10 的 3d 游戏,但我希望应用程序支持 GL11 或 GL20(如果可用).支持所有 3 的最佳设计是什么?或者这是一个愚蠢的差事,我应该只专注于支持一个版本? 我目前的想法是将我的 render() 函数拆分为 renderGL10、renderGL11、renderGL20 并根据可用的 GL 实例调用适当的渲染函数.每个渲染函数内部都有 GL 版本的正确渲染方法
..
在所附的两张图片中,libgdx 的桌面截图按预期运行.不幸的是,我的 Galaxy Nexus 的屏幕截图不如预期.我正在尝试创建一个简单的运动模糊或轨迹效果. 在我的桌面上按预期进行渲染. 在我的 Galaxy Nexus 上未按预期呈现. 在渲染过程中,圆形纹理在for循环中绘制,效果是通过使用在圆形之前绘制的0、0、0、0.1f的RGBA的像素图来实现的. scre
..
我正在开发一款 3D 游戏. 游戏需要大约 100 个立方体才能工作,所有立方体都是动态的. 我真的不知道这样的游戏需要多少性能,但我正在使用 平板电脑 与 Mali-400 MP2 GPU,1 GB 内存,1.5 GHz 双核.我知道在一个网格中渲染所有立方体,但是我不能单独移动它们. 这个设置给了我一个非常摇摆不定的 fps.在 20 到 50 之间跳跃,大多在 30 岁以下
..
我正在尝试找出一种方法来切出背景纹理的某个区域,以便某个自定义图案不会在该背景的屏幕上呈现.例如: 这个正方形可以是任何图案.我正在使用 Frame Buffer Object 和 Stencil Buffer 来实现这种效果.代码如下: fbo.begin();//禁用 ColorMask 和 DepthMask 以便所有渲染都在 Stencil Buffer 上完成Gdx.gl20.g
..
我想在我的游戏中绘制自定义静态形状,就像愤怒的小鸟所做的那样: 但问题是纹理是方形的. 我们如何告诉“SpriteBatch"绘制带有一些顶点的形状?有人有什么想法吗? 解决方案 根据文档: SpriteBatch 用于绘制引用纹理(区域)的 2D 矩形 因此,从本质上讲,此方法不允许您指定除矩形之外的任何其他几何图形.但是,有一个 draw 方法 允许您指定“矩形
..
我正在使用 OpenGL 在 Android 上创建 2D 游戏.目前我正在多台设备上测试和调试游戏.我面临的问题是可怕的“信号 11"错误. 当我在我的三星 Galaxy Nexus 上玩游戏时,一切都很顺利,我可以玩几个小时而不会出现任何错误.我的 Nexus 正在运行 Android 4.0 Ice Cream Sandwich. 现在,当我在其他设备上运行它时,我收到了这个信号
..
我遇到了一个带有 OpenGL 组件的应用程序在 iPad 上崩溃的问题.该应用程序会引发内存警告并崩溃,但它似乎并没有使用那么多内存.我错过了什么吗? 该应用基于 Vuforia 增强现实系统(大量借鉴 ImageTargets 示例).我需要在我的应用程序中包含大约 40 个不同的模型,因此为了节省内存,我会根据需要在应用程序中动态加载对象(和渲染纹理等).我试图复制 UIScrollV
..
(带着这个问题,我试图调查我解决问题的想法 这个另一个) 如果我在内存中有一个尺寸为 width 和 height 的标准二维数组,我可以将其转换为长度为 width 的一维数组* height 然后通过 index = x + y * width 对其进行索引.这种映射在为数组分配和释放内存时非常有用,因为内存管理器无需担心将结构打包为 2D,而只需担心每个已分配数组的总长度(如果以 1D
..