首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

深入浅出 ARCore

实例分析 Google发布的 ARCore SDK 中包括了一些例子程序,有了上面的基本知识后,我们就很容易理解他所写的 Demo 程序的流程了。...Config:存放一些配置信息,如平面的查找模式,光照模式等信息都是记录在该类中。目前该类还比较简单,里边没存多少东西。 isSupported:该方法主要是对 SDK的版本及机型做控制。...目前官方只支持几款Google和三星的机子做测试。其它机型还都不支持ARCore,当然有一些机型通过破解后的SDK是可以使用 ARCore的。该方法中的 Config 参数没有用到。...创建 GLSurfaceView 用于AR展示 在 Google 提供的Demo中,AR的展示部分使用的是 GLSurfaceView。...并将Activity作为GLSurfaceView的回调对象(也就是说该Activity要实现 GLSurfaceView.Renderer中定义的接口,如onSurfaceCreated、onSurfaceChanged

3.9K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    音视频开发之旅(37) -FFmpeg + OpenGLES 边解码边播放视频(一)

    YUV 数据组成 表示图片、视频的色彩空间有几种:YUV、RGB、HSV等,FFmpeg解码后的视频数据是YUV数据,而OpenGL ES 渲染时要使用RGB数据,为此我们需要把YUV先转成RGB,对应的转换公式如下...1.0, 1.0, 0.0, -0.39465, 2.03211, 1.13983, -0.5806, 0.0 ) *yuv; 1.2 OpenGL ES基础知识 我们在第二个系列中已经对...这一小节,我们通过Android 提供的GLSurfaceview来进行视频的渲染。...时序问题,GlSurfaceview被inflater之后其EGL环境的准备没有那么早,通过post延迟解码渲染 glSurfaceView.postDelayed(new Runnable()...v ); 四、资料 音视频学习 (八) 掌握视频基础知识并使用 OpenGL ES 2.0 渲染 YUV 数据 YUV RGB 转换算法

    1.5K00

    FFmpeg + OpenGLES 实现视频解码播放和视频滤镜

    但是,当你想为播放器做一些视频滤镜时,如加水印、旋转缩放等效果,使用 OpenGL ES 实现起来就极为方便。 ?...视频的解码流程 从流程图中可以看出,解码一帧图像后,首先将对图像进行格式转换,转换成 RGBA 格式,使用 OpenGL 或 ANativeWindow 可以直接进行渲染。...当然,使用 OpenGL 进行渲染时,为了提升性能,可以将格式转换放到 GPU 上来做(即 shader 实现 YUV 到 RGB 的转换),也可以使用 OES 纹理直接接收 YUV 图像数据,这里就不进行展开讲了...从之前介绍 EGL 的文章中,我们知道在使用 OpenGL API 之前,必须要先利用 EGL 创建好 OpenGL 的渲染上下文环境。...实际上,GLSurfaceView 类在生产开发中可以满足绝大多数的屏幕渲染场景,一般要实现多线程渲染的时候才需要我们单独操作 EGL 的接口。

    3K10

    SurfaceView简单理解,Android混淆,Android openGl开发详解简单图形的绘制,

    正规的第三方库一般都会在接入文档中写好所需混淆规则,使用时注意添加。- 在运行时动态改变的代码,例如反射。比较典型的例子就是会与 json 相互转换的实体类。...前者是 SDK 提供的默认混淆文件(内容见附录1),后者是开发者自定义混淆规则的地方。 1....Android中的openGL 如何使用? 在了解OpenGl的使用之前,我们需要了解两个基本类别的Android框架:GlSurfaceView和GlSurfaceView.Renderer 3....设置渲染 在GlSurfaceView.renderer中绘制处理显示数据 5....是否记得上面我们绘制的图形坐标需要转换为OpenGl中能处理的小端字节序(LittleEdian),没错,转换矩阵就是用来将数据转为OpenGl ES可用的数据字节,我们将相机视图和投影设置的数据相乘,

    9700

    Android开发笔记(一百五十三)OpenGL绘制三维图形的流程

    从这篇文章开始,接下来会连载一系列的OpenGL相关博文,好好探讨如何在Android中进行OpenGL开发。...从前面的学习可以得知,每个Android界面上的控件,其实都是在某个视图上绘制规定的文字(如TextView),或者绘制指定的图像(如ImageView)。...而TextView和ImageView都继承自基本视图View,这意味着首先要有一个专门的绘图场所,比如现实生活中的黑板、画板和桌子。...然后还要有绘画作品的载体,比如显示生活中黑板的漆面,以及用于国画的宣纸、用于油画的油布等等,在Android系统中,这个绘画载体便是画布Canvas。...layout_width="match_parent" android:layout_height="match_parent" /> 接着在Activity代码中获取这个

    2K20

    【专业技术】Android平台下使用OpenGL

    解决方案: 1、GLSurfaceView GLSurfaceView是Android应用程序中实现OpenGl画图的重要组成部分。GLSurfaceView中封装了一个Surface。...而android平台下关于图像的现实,差不多都是由Surface来实现的 2、Renderer 有了GLSurfaceView之后,就相当于我们有了画图的纸。现在我们所需要做的就是如何在这张纸上画图。...如何在平面上画三维坐标的点或图形呢?OpenGL有一个坐标系,如下图: ? 我们需要将这个坐标系和我们的GLSurfaceView里的Surface做一个映射关系。...我们将这些数据放在一个一个数组缓冲区中,放好这些数据之后,再统一一起画出来。 下面,主要讲下,如何将顶点数据和颜色数据放入符合 Android OpenGL 的数组缓冲区中。...byte 数据缓冲区 不管我们的数据是整型的还是浮点型的,为了完成 BigEdian 到 LittleEdian 的转换,我们都首先需要一个 ByteBuffer。

    1.2K60

    龙芯发布 .NET 6 SDK 6.0.105-ea1 LoongArch64 版本

    dotnet --list-runtimes 详细信息: 可通过以下命令查看 SDK 版本和运行时版本。 你还将获得其他环境相关信息,如操作系统版本和运行时标识符 (RID)。...分两种版本类型: 试用版: 其中安装包名字中包含"ea" 例如龙芯基于上游社区 SDK 6.0.105 版本发布的 LoongArch64 ea 版本 deb 安装包名为: dotnet-sdk-6.0.105...-1-loongarch64.deb 如何在LoongArch平台支持SkiaSharp?...在项目配置文件中添加对SkiaSharp和HarfBuzzSharp的引用,参考命令如下: cd project-src # 进入到项目源码目录中 dotnet add package SkiaSharp.NativeAssets.Linux...手动下载,并复制到SDK目录 如果需要运行从其它平台(如x64)编译好的项目,则建议到龙芯Nuget源手动下载SkiaSharp和HarfBuzzSharp nupkg包,解压后将so文件复制到SDK目录下

    3.3K30

    OpenGL ES简介

    3,构键GLSurfaceView对象 GLSurfaceView中其实不需要做太多工作,实际的绘制任务都在GLSurfaceView.Renderer中了。...2.0时,你必须在GLSurfaceView构造器中调用另外一个函数,它说明了你将要使用2.0版的API: setEGLContextClientVersion(2); 另一个可以添加的你的GLSurfaceView...:顶点着色器使用的常量数据,不能被着色器修改,一般用于对同一组顶点组成的单个3D物体中所有顶点都相同的变量,如当前光源的位置。...对于每个图元,必须确定它是否位于视椎体内(3维空间显示在屏幕上的可见区域),如果图元部分在视椎体中,需要进行裁剪,如果图元全部在视椎体外,则直接丢弃图元。裁剪之后,顶点位置转换成了屏幕坐标。...总之,光栅化阶段把图元转换成片元集合,之后会提交给片元着色器处理,这些片元集合表示可以被绘制到屏幕的像素。 5 FragmentShader(片段着色器) ?

    1.9K50
    领券