草庐IT

纹理表

全部标签

libgdx禁用纹理并添加着色

有什么方法可以在运行时禁用纹理和启用模型上色吗?后来再次启用纹理?现在我正在使用它:@OverridepublicvoidenableTexture(booleanenable,Vector3colorize){enableTexture(enable,colorize.x,colorize.y,colorize.z);}@OverridepublicvoidenableTexture(booleanenable,floatr,floatg,floatb){if(enable)objModel.getModelInstance().materials.get(0).set(TextureAtt

android/opengles alpha 纹理不是半透明的而是二进制透明的

我正在绘制一些带有alphachannel的纹理,但是当它们显示时,看起来alphachannel只是二进制的。所以一个像素要么是透明的要么是不透明的,尽管在纹理文件本身中像素是半透明的。混合设置如下:gl.glEnable(GL10.GL_BLEND);gl.glBlendFunc(GL10.GL_ONE,GL10.GL_ONE_MINUS_SRC_ALPHA);这个问题有解决办法吗?上面是应该的样子,下面是应该的样子: 最佳答案 试试这个:gl.glEnable(GL10.GL_BLEND);gl.glBlendFunc(GL1

android - 在服务中创建纹理 View 时从未调用 onSurfaceTextureAvailable

我正在尝试在服务中创建纹理View,但我似乎没有收到“onSurfaceTextureAvailable”回调。“TextureView或子类只能在启用硬件加速的情况下使用。”当我为应用程序提供android:hardwareAccelerated="true"时出现在日志中,是否有任何权限可以明确提供给服务packagecom.example.textures;importandroid.app.Service;importandroid.content.Context;importandroid.content.Intent;importandroid.graphics.Pixel

android - 在 GLSurfaceView 中的 onResume() 之后重新加载 opengl 纹理

我有一个包含2个Activity的Android应用程序,A和B。应用程序以A开头,然后我点击屏幕切换到B。B正确显示,然后我按手机上的后退按钮切换回A.现在Activity运行正常,除了我看不到我的纹理。Activity的onResume方法调用GLSurfaceView的onResume方法,它调用我的渲染器onSurfaceCreated,然后调用onSurfaceChanged。在这个onDrawFrame之后调用每一帧,但它只清除具有给定颜色的屏幕。我知道GLSurfaceView的onPause破坏了它的内容,onResume应该重建它,但它对我不起作用:(我的代码:渲染器

Android OpenGLES 渲染到纹理

我为iPhone编写了图形应用程序,并且希望将我最新的应用程序“Layers”移植到Android平台。Layers是一款绘画应用程序,允许用户在屏幕上绘画并使用不同的画笔、颜色等创建多层绘画...并导出为PSD。它具有桌面同步、涂抹工具和许多好东西...http://www.layersforiphone.com/我从星期一开始研究Android平台,但遇到了一个大问题。我使用OpenGL来完成所有绘图,因为它提供了最佳性能。然而,有几个地方我需要渲染成纹理然后使用纹理。例如:使用画笔纹理和一行Sprite在纹理A中创建黑色笔触在glColor4f中放入画笔颜色+alpha,然后将纹

Android 设备 GL_MAX_TEXTURE_SIZE 限制,安全纹理大小

我正在使用AndEngine和OpenGLES2.0。我一直在阅读有关GL_MAX_TEXTURE_SIZE以及如何将我的纹理保持在1024x1024以下的内容。我在TMX扩展中使用tilesets之前和同时开始错误(如果你不了解AndEngine,它是什么并不重要)我得到了一个使纹理宽度超过1024px的tileset。我正在考虑将tileset分成两部分,使它们“安全”。但我找不到在过去几年发布的任何设备都在2048x2048下设置了此限制。是否有任何列表或网站可用于按GL_MAX_TEXTURE_SIZE过滤设备?我阅读了以下问题:MinimumrequiredTextureSi

three.js 纹理贴图的使用

 刚刚入门的小伙伴请先查看 three.js基础认识与简单应用本文章中的两个注意点,下面也有提到,分别是:1、  vue项目中使用的贴图路径-->需要把static文件夹放到public文件夹下,并使用static开头的绝对路径。2、使用环境遮挡贴图时,必须要给物体对象添加第二组uv,否则不起作用;        下面就用一个个例子来分析一下每张贴图的作用与效果,每个功能的讲解都在“主要代码”中的注释上展示,不要看着内容很多,很多代码都是重复的,为了便于大家和后期我查看笔记时理解。一、使用方法与注意点(以颜色贴图为例):  使用纹理贴图的第一步就是导入,three.js专门提供了纹理加载函数T

android - 在 OpenglES2 [Android] 中使用 glTexImage2D(..) 更新纹理

初始化代码创建一个128x128像素的RGB单色纹理:GLES20.glGenTextures(1,textureId,0);GLES20.glBindTexture(GLES20.GL_TEXTURE_2D,textureId[0]);GLES20.glTexImage2D(GLES20.GL_TEXTURE_2D,0,GLES20.GL_RGB,bitmap.getWidth(),bitmap.getHeight(),0,GLES20.GL_RGB,GLES20.GL_UNSIGNED_BYTE,byteBuffer);|GLES20.glBindTexture(GLES20.GL

android - Framebuffer FBO 渲染到纹理非常慢,在 Android 上使用 OpenGL ES 2.0,为什么?

我正在使用opengles2.0编写Android2d游戏。在我将Sprite绘制到后备缓冲区后,我将灯光绘制到FBO并尝试再次将其混合到后备缓冲区。当我将FBO绘制到帧缓冲区时,即使是透明的,没有任何颜色,在SamsungGalaxyw(它有一个adreno205作为gpu)上,帧率从60下降到30。我到处搜索并尝试了所有方法,即使我在场景中绘制了一个Sprite并将透明的FBO纹理混合到屏幕上,帧率也会下降。我在那部手机上尝试了其他带有灯光效果的游戏,它们运行良好,几乎所有游戏在那部手机上都很好,我相信他们也使用帧缓冲区。在GalaxySII(mali400gpu)上运行良好,我对

java - 在 Android OpenGL ES 应用程序中加载纹理

我想知道是否有人可以建议在AndroidJava和OpenGLES应用程序中加载纹理的良好模式。我首先关心的是确定要分配多少个纹理名称,以及如何在渲染我的顶点之前有效地执行此操作。我的第二个问题是加载纹理,我必须根据我的游戏数据推断要加载的纹理。这意味着我将玩弄字符串,我知道这是我不应该在我的GL线程中做的事情。总的来说,我了解加载纹理时发生的情况,我只想从中获得最佳生命周期。还有其他我应该考虑的事情吗? 最佳答案 1)您应该根据需要分配尽可能多的纹理名称。一个用于您正在使用的每个纹理。加载纹理是一项非常繁重的操作,会拖延渲染管道。