Android OpenGL_ES
文章平均质量分 65
OpenGL_ES
༄yi笑奈何
一个腐败糜烂的环境,永远也无法孕育出真正的文明
展开
-
【Android OpenGL ES 开发 (六)】Shader特效(一)
OpenGL转载 2023-08-11 11:51:35 · 448 阅读 · 0 评论 -
【Android OpenGL ES 开发 (五)】纹理相关(二)
纹理放大和缩小的过滤参数1.使用线性插值效果最佳2.通过修改 float maxscale = 4.0f //放大 float minscale = 0.5f //缩小vertices[0].mPosition[0]=0.5f * maxscale; //xvertices[0].mPosition[1]=0.5f * maxscale; //y实现模糊效果1.利用显卡的并行计算的强大功能对图像进行处理2.FS中的代码实现#ifdef GL_ESprecti...原创 2021-01-07 11:48:20 · 352 阅读 · 3 评论 -
【Android OpenGL ES 开发 (四)】纹理相关(一)
纹理贴图的原理1.作用:可以用来渲染视频。生成OpenGL中的纹理对象1.像素数据想要绘制出来需要先变成纹理2.创建纹理放在GPU上GLuint CreateTexture2D(unsigned char *pixelData,int width,int height,GLenum type) { GLuint texture; glGenTextures(1,&texture);//创建一个纹理对象 glBindTexture(GL_TEXTURE_2原创 2020-11-15 17:24:40 · 435 阅读 · 1 评论 -
【Android OpenGL ES 开发 (三)】Shader 扩展
编译Shader代码1.封装一个编译shader的接口GLuint CompileShader(GLenum shaderType,const char *shaderCode){ GLuint shader=glCreateShader(shaderType); glShaderSource(shader,1,&shaderCode,NULL); glCompileShader(shader); GLint compileResult=GL_TRUE;原创 2020-11-15 15:07:53 · 336 阅读 · 0 评论 -
【Android OpenGL ES 开发 (二)】渲染管线与Shader
计算出每一帧耗费的时间1.在头文件中加入time.h,cpp中实现如下计算时间接口float GetFrameTime(){ static unsigned long long lastTime=0,currentTime=0; timeval current; gettimeofday(¤t, nullptr);//取当前时间 currentTime = current.tv_sec * 1000 + current.tv_usec/100原创 2020-11-15 12:41:17 · 416 阅读 · 0 评论 -
【Android OpenGL ES 开发 (一)】使用c++开发opengles 与 日志功能 及 加载assets
创建OpenGLES视口1.App窗口改成OpenGL窗口,是通过java调用C++,在以下位置修改如下内容package com.example.learnogles;import androidx.appcompat.app.AppCompatActivity;import android.content.Context;import android.opengl.GLSurfaceView;import android.os.Bundle;import android.ut原创 2020-11-12 12:12:00 · 1477 阅读 · 0 评论 -
【Android OpenGL ES 开发 (零)】创建一个新的工程
创建符合要求的AndroidApp使用Android Studio开发,Android Studio下载地址1.先创建Native C++2.项目相关添加3.使用C++11标准学习使用JNI为Java提供API1.在cpp中定义相关接口,格式如下2.外部调用这个API把so改成自己想要的名字1.需要在cmake文件里面进行配置添加更多的cpp源文件参与编译1.首先创建一个.h文件,把所有需要的头文件都加入到此头文件2.在..原创 2020-11-11 19:32:11 · 208 阅读 · 1 评论