草庐IT

纹理表

全部标签

android - 从 OBJ 文件导入时如何在 glTexCoordPointer 中设置/计算纹理缓冲区

我正在Android中解析一个OBJ文件,我的目标是渲染和显示该对象。一切正常,除了正确的纹理映射(将资源/图像导入opengl等工作正常)。我不知道如何将obj文件中的纹理相关数据填充到纹理缓冲区对象中。在OBJ文件中我有vt行:vt0.4950110.389417vt0.5006860.561346和面部线条:f127/73/6298/72/62125/75/62我的绘图程序看起来像(只有相关部分):gl.glEnableClientState(GL10.GL_VERTEX_ARRAY);gl.glEnableClientState(GL10.GL_NORMAL_ARRAY);gl

android opengl纹理加载线程

我正在开发一个应用程序,它需要在执行时的特定时间加载帧动画的纹理,渲染线程需要继续运行,我需要在bg线程中加载纹理。有没有办法在安卓中做到这一点?我能够在ios中通过在使用相同共享组的另一个线程上创建单独的opengl上下文来实现,但我不确定android上是否有类似的设施? 最佳答案 是的,您可以在上下文之间共享纹理(只要您的驱动程序支持)。像这样创建你的后台加载上下文(意味着你想与rendering_context共享对象):eglCreateContext(display,config,rendering_context,at

android - 将纹理快速加载到 OpenGL 2.0

我正在为Android构建一个简单的动态壁纸。我正在使用以下代码将所需的纹理上传到OpenGLES2.0。我已将所有图像加载到一个大小为2048x2048的文件中。下面的代码需要大约900到1200毫秒来加载纹理。这是正常时间还是我做错了什么让它变慢?每次在我的渲染器中调用onSurfaceCreated时,我也尝试清除Opengl中的纹理列表。这是正确的做法,还是有一种方法可以简单地检查以前加载的纹理是否已经在内存中,如果是这样,避免清除和重新加载?请让我知道您对此的评论。谢谢。同样在屏幕方向改变时调用OnSurfaceCreated。所以纹理上传再次发生。这不是一个好主意。解决方法

Android Opengl 2.0 Alpha 混合问题 - 半透明纹理

我在游戏中使用AphaBlending时遇到这个问题,当我绘制一个带有alpha纹理的表面时,应该不可见的部分是不可见的,但是应该可见的部分是半透明的。这取决于光量-离光源越近看起来越好,但在阴影中这些物体几乎消失了。我启用Alpha混合:GLES20.glEnable(GLES20.GL_BLEND);然后我设置函数:GLES20.glBlendFunc(GLES20.GL_SRC_ALPHA,GLES20.GL_ONE_MINUS_SRC_ALPHA);或GLES20.glBlendFunc(GLES20.GL_ONE,GLES20.GL_ONE_MINUS_SRC_ALPHA);

android.grapics.matrix 到 OpenGL 2.0 ES 纹理转换

目前,该应用程序显示一个ImageView,它可以在屏幕上成功地缩放和平移。在该图像之上,我想提供一个纹理,我想在其下方的图像缩放或平移时更新自身以缩放或平移。据我所知,这应该可以通过在ImageView上使用我当前设置的getImageMatrix(),然后将其应用于原始图像顶部的纹理位图来实现。编辑和解决方案:(在下面所选答案的大力帮助下)目前,纹理中的平移速度与ImageView的速度不同,但当该问题得到解决后,我将通过其他编辑更新此帖子,并为整个应用程序提供解决方案。然后将只保留解决方案和快速问题描述段落。也许我什至会发布使用可缩放表面View的表面View和渲染器源代码。为了

android - opengl android中的纹理坐标显示图像反转

我编写了openglandroid代码来在正方形上显示位图。但是位图是反向绘制的。当我将纹理数组组合更改为注释代码时,它被正确绘制。但我坚持我的纹理数组必须如下所示。我想错了吗?/**Theinitialvertexdefinition*/privatefloatvertices[]={-1.0f,1.0f,0.0f,//TopLeft-1.0f,-1.0f,0.0f,//BottomLeft1.0f,-1.0f,0.0f,//BottomRight1.0f,1.0f,0.0f//TopRight};/**Ourtexturepointer*/privateint[]textures=

android - OPEN GL Android - 如何将位图对象转换为可绘制纹理

我正在尝试在OPENGL2.0中实现可滚动图像的网格。我已经使用CanvasDrawing实现了View,但出于性能原因,我决定过渡到OGL。在我的实现中,我在每一帧绘制一个Bitmap对象列表,每个Bitmap都是缓存的图像缩略图行。现在我该如何将这些位图转换为我可以与OGL一起使用的纹理? 最佳答案 GLES20.glBindTexture(GLES20.GL_TEXTURE_2D,textureID);GLUtils.texImage2D(GLES20.GL_TEXTURE_2D,0,bitmap,0);..其中texture

android - OpenGL ES - 纹理映射一个 8 顶点立方体的所有面?

使用Android模拟器完成一些OpenGL-ES教程。我已经开始进行纹理映射,但在映射到立方体时遇到了一些问题。是否可以将纹理映射到具有8个顶点和6个面的12个三角形的立方体的所有面,如下所述?//Usehalfaswearegoingfora0,0,0centre.width/=2;height/=2;depth/=2;floatvertices[]={-width,-height,depth,//0width,-height,depth,//1width,height,depth,//2-width,height,depth,//3-width,-height,-depth,//

java - 为什么 eclipse 用颜色填充我的纹理?

我正在制作一个游戏,我的一个对象的角落里有一个白色填充物:你能帮我解决这个问题吗?我不想在角落里有任何颜色,就像其他对象一样只是空纹理?顺便说一句,它们来自一个纹理文件,只用颜色填充它是没有意义的。这是我的加载类:packagecom.vratsasoftware.zbhelpers;importcom.badlogic.gdx.Gdx;importcom.badlogic.gdx.Preferences;importcom.badlogic.gdx.audio.Sound;importcom.badlogic.gdx.graphics.Texture;importcom.badlog

android - 如何解决形状圆形矩形太大而无法在 android TextBox 中呈现为纹理

我为TextView背景创建了一个形状我的TextView是:当文本像这样短时但是当文本太大时不显示背景和eclipselogcat显示Shaperoundrecttoolargetoberenderedintoatexture(424x5884,max=2048x2048)如何解决?谢谢 最佳答案 编辑:最简单的解决方案是去除圆角。如果移除圆角并使用简单的矩形,硬件渲染器将不再为背景层创建单个大纹理,也不会再遇到纹理大小限制。一个简单的解决方法应该是恢复该View的软件渲染:Viewview=findViewById(R.id.t