- 在不久前的 X.Org 开发者大会(XDC 2024)上,技术界迎来了一个让人惊喜的消息:关于苹果 M1 和 M2 芯片的 GPU 驱动程序有了新的突破。这次带来更新的是 Alyssa Rosenzweig,现在 22 岁,也就是她用 rust 写这个 GPU 驱动 5 年了。她带这个女巫帽是为了迎合万圣节的气氛她不仅谈到了驱动程序的新进展,还透露了驱动程序的背后细节,比如这些驱动是用 Ru... 在不久前的 X.Org 开发者大会(XDC 2024)上,技术界迎来了一个让人惊喜的消息:关于苹果 M1 和 M2 芯片的 GPU 驱动程序有了新的突破。这次带来更新的是 Alyssa Rosenzweig,现在 22 岁,也就是她用 rust 写这个 GPU 驱动 5 年了。她带这个女巫帽是为了迎合万圣节的气氛她不仅谈到了驱动程序的新进展,还透露了驱动程序的背后细节,比如这些驱动是用 Ru...
- 参考资料LearnOpenGL SSAOssao介绍屏幕空间环境光遮蔽(SSAO)算法的实现 一、基本原理介绍参考资料:https://learnopengl-cn.github.io/05 Advanced Lighting/09 SSAO/https://www.qiujiawei.com/ssao/https://blog.csdn.net/qq_39300235/article/de... 参考资料LearnOpenGL SSAOssao介绍屏幕空间环境光遮蔽(SSAO)算法的实现 一、基本原理介绍参考资料:https://learnopengl-cn.github.io/05 Advanced Lighting/09 SSAO/https://www.qiujiawei.com/ssao/https://blog.csdn.net/qq_39300235/article/de...
- 该系列文章是讲解Python OpenCV图像处理知识,前期主要讲解图像入门、OpenCV基础用法,中期讲解图像处理的各种算法,包括图像锐化算子、图像增强技术、图像分割等,后期结合深度学习研究图像识别、图像分类应用。这篇文章是介绍Python和OpenGL的入门知识,包括安装、语法、基本图形绘制等。基础性文章,希望对你有所帮助。 该系列文章是讲解Python OpenCV图像处理知识,前期主要讲解图像入门、OpenCV基础用法,中期讲解图像处理的各种算法,包括图像锐化算子、图像增强技术、图像分割等,后期结合深度学习研究图像识别、图像分类应用。这篇文章是介绍Python和OpenGL的入门知识,包括安装、语法、基本图形绘制等。基础性文章,希望对你有所帮助。
- 无言相守45亿年,太阳、地球和月球这三个好基友究竟是怎样的关系呢?从孩提时代我就一直在想,要是能有一个可以直观演示太阳、地球和月球运行轨迹的模型就好了。今天,我终于实现了小时候的梦想:用WxGL画出了太阳、地球和月球的动态轨道模型。配上简单的解说,小朋友也可以秒懂四季更迭、日蚀月蚀、黄赤交角。 无言相守45亿年,太阳、地球和月球这三个好基友究竟是怎样的关系呢?从孩提时代我就一直在想,要是能有一个可以直观演示太阳、地球和月球运行轨迹的模型就好了。今天,我终于实现了小时候的梦想:用WxGL画出了太阳、地球和月球的动态轨道模型。配上简单的解说,小朋友也可以秒懂四季更迭、日蚀月蚀、黄赤交角。
- 一、透视投影过程推导由于GAMES101与LearnOpenGL课程中,对透视投影变换、视口变换、法线变换等介绍较少,因此这里通过总结大量资料,手推了相关公式,可以说这是网上能看到的最全面、严谨的推导过程之一吧(谦虚)。关于一个模型投影到屏幕上所要经历过程如下:关于模型变换、和视变换相对比较简单,GAMES101课程第四课也有详细的推导,可参考如下笔记结合视频课程进行学习:https://... 一、透视投影过程推导由于GAMES101与LearnOpenGL课程中,对透视投影变换、视口变换、法线变换等介绍较少,因此这里通过总结大量资料,手推了相关公式,可以说这是网上能看到的最全面、严谨的推导过程之一吧(谦虚)。关于一个模型投影到屏幕上所要经历过程如下:关于模型变换、和视变换相对比较简单,GAMES101课程第四课也有详细的推导,可参考如下笔记结合视频课程进行学习:https://...
- 一、 shadowMap 二、法线贴图我们可以使用一张图来记录每个Fragment的法线信息,法线是xyz,而每个像素颜色是rgb,刚好互相对应,这张图用来记录每个Fragment的图片即为法线贴图。但这样的问题是,当前的法线是按照这个墙面指向z轴正方向来实现的,如果墙面发生旋转,法线需要跟着一起做相应的旋转。因此为了美术制作的方便,我们希望输出的法线贴图不论对应哪个方向的哪个片段,默认都... 一、 shadowMap 二、法线贴图我们可以使用一张图来记录每个Fragment的法线信息,法线是xyz,而每个像素颜色是rgb,刚好互相对应,这张图用来记录每个Fragment的图片即为法线贴图。但这样的问题是,当前的法线是按照这个墙面指向z轴正方向来实现的,如果墙面发生旋转,法线需要跟着一起做相应的旋转。因此为了美术制作的方便,我们希望输出的法线贴图不论对应哪个方向的哪个片段,默认都...
- 一、高级数据处理 1.1 定点数据拷贝(glBufferSubData)必须在绑定Buffer之后才能使用,从内存中将数据拷贝至指定的显存。使用问题: 多次修改数据会造成性能浪费,因为每次都要从内存将数据拷贝至显存。 1.2 虚拟指针(glMapBuffer)必须在VBO构造并且分配空间完毕后使用其优点在于拷贝了整个显存数据到达内存,修改完毕后再全部同步回显存,适合一个Pass中对数据进行... 一、高级数据处理 1.1 定点数据拷贝(glBufferSubData)必须在绑定Buffer之后才能使用,从内存中将数据拷贝至指定的显存。使用问题: 多次修改数据会造成性能浪费,因为每次都要从内存将数据拷贝至显存。 1.2 虚拟指针(glMapBuffer)必须在VBO构造并且分配空间完毕后使用其优点在于拷贝了整个显存数据到达内存,修改完毕后再全部同步回显存,适合一个Pass中对数据进行...
- 本文是针对LearnOpenGLCN中一些基础概念的整理与补充。Object 与shader的关系?每个(类)object 对应一个shader?纹理、像素之间的坐标关系VBO、VAO、EBO、FBO等关系和使用方法Fragment为什么要将一些坐标系从-1,1 映射到0-1,纹理坐标系和法线坐标系, 纹理坐标与NDC坐标的平铺对应关系SOIL 是什么意思?Glunit 是什么? 什么时候提... 本文是针对LearnOpenGLCN中一些基础概念的整理与补充。Object 与shader的关系?每个(类)object 对应一个shader?纹理、像素之间的坐标关系VBO、VAO、EBO、FBO等关系和使用方法Fragment为什么要将一些坐标系从-1,1 映射到0-1,纹理坐标系和法线坐标系, 纹理坐标与NDC坐标的平铺对应关系SOIL 是什么意思?Glunit 是什么? 什么时候提...
- 沉寂了近一年之后,三维可视化工具箱WxGL终于又有版本更新了:从0.6.4升级到0.7.0(现在安装的话也可能是0.7.3),并且承诺自0.7.0版本开始向后兼容。在正式发布docs之前,我设计了几个乒乓球和篮球的小例子,算是预热。请安装下载WxGL,抢先体验一下吧。 沉寂了近一年之后,三维可视化工具箱WxGL终于又有版本更新了:从0.6.4升级到0.7.0(现在安装的话也可能是0.7.3),并且承诺自0.7.0版本开始向后兼容。在正式发布docs之前,我设计了几个乒乓球和篮球的小例子,算是预热。请安装下载WxGL,抢先体验一下吧。
- 一、纹理映射 ① 什么是纹理 ?纹理(Texture)最通常的作用是装饰 3D 物体,它就像贴纸一样贴在物体表面,丰富了物体的表面和细节。在 OpenGL ES 开发中,纹理除了用于装饰物体表面,还可以用来作为存储数据的容器。那么,在 OpenGL ES 中,纹理实际上是一个可以被采样的复杂数据集合,是 GPU 的图像数据结构,纹理分为 2D 纹理、 立方图纹理和 3D 纹理:2D 纹理是... 一、纹理映射 ① 什么是纹理 ?纹理(Texture)最通常的作用是装饰 3D 物体,它就像贴纸一样贴在物体表面,丰富了物体的表面和细节。在 OpenGL ES 开发中,纹理除了用于装饰物体表面,还可以用来作为存储数据的容器。那么,在 OpenGL ES 中,纹理实际上是一个可以被采样的复杂数据集合,是 GPU 的图像数据结构,纹理分为 2D 纹理、 立方图纹理和 3D 纹理:2D 纹理是...
- OpenGL 实现可视化实时音频的思路比较清晰,可以利用 API AudioRecorder 采集到未编码的音频裸数据(PCM 数据),也可以利用 OpenSL ES 接口在 Native 层采集。然后将采集到的音频数据看作一组音频的强度值,再根据这组强度值生成网格,最后进行实时绘制。为方便展示,这里直接采用 API AudioRecorder 采集音频裸数据,然后通过 JNI 传入 Nat... OpenGL 实现可视化实时音频的思路比较清晰,可以利用 API AudioRecorder 采集到未编码的音频裸数据(PCM 数据),也可以利用 OpenSL ES 接口在 Native 层采集。然后将采集到的音频数据看作一组音频的强度值,再根据这组强度值生成网格,最后进行实时绘制。为方便展示,这里直接采用 API AudioRecorder 采集音频裸数据,然后通过 JNI 传入 Nat...
- GLSL提供了数以百计的内置函数,门类齐全、功能之强大。本文将内置函数分为等基础函数、三角函数、矩阵函数、向量函数、噪声函数、纹理函数、图像函数、着色器函数和其他函数等九大类别,受限于个人能力,目前只完成了前五个类别,还有纹理函数、图像函数、着色器函数和其他函数等四类,以待后补。 GLSL提供了数以百计的内置函数,门类齐全、功能之强大。本文将内置函数分为等基础函数、三角函数、矩阵函数、向量函数、噪声函数、纹理函数、图像函数、着色器函数和其他函数等九大类别,受限于个人能力,目前只完成了前五个类别,还有纹理函数、图像函数、着色器函数和其他函数等四类,以待后补。
- GLSL的数据类型,大致可以分为基本数据类型、向量、矩阵、结构体和数组等五类。 GLSL的数据类型,大致可以分为基本数据类型、向量、矩阵、结构体和数组等五类。
- CT是现代医学影像的主力设备,寻常百姓并不陌生。通常,一张CT片由多张连续断层扫描的图像组成。在医生眼中,CT片展示了人体器官的形态和性质,是判断病人健康状况的终要依据。对于普通人而言,CT片则像天书,几无大用。不过呢,总有不甘寂寞喜欢折腾的程序员,把看似无用的CT片玩出了新花样——用头部CT断层扫描片成功复原出了逼真的三维头像。 CT是现代医学影像的主力设备,寻常百姓并不陌生。通常,一张CT片由多张连续断层扫描的图像组成。在医生眼中,CT片展示了人体器官的形态和性质,是判断病人健康状况的终要依据。对于普通人而言,CT片则像天书,几无大用。不过呢,总有不甘寂寞喜欢折腾的程序员,把看似无用的CT片玩出了新花样——用头部CT断层扫描片成功复原出了逼真的三维头像。
- 系列内核版本OpenGLRTMP推流 文章目录 分配空间 RTMP *rtmp = RTMP_Alloc(); 1 初始化 RTMP_Init(rtmp); 1 设置推流URL RTMP_SetupURL(rtmp, url); 1 设置可写状态 RTMP_EnableWrite(rtmp); 1 链接服务器 RTMP_Conne... 系列内核版本OpenGLRTMP推流 文章目录 分配空间 RTMP *rtmp = RTMP_Alloc(); 1 初始化 RTMP_Init(rtmp); 1 设置推流URL RTMP_SetupURL(rtmp, url); 1 设置可写状态 RTMP_EnableWrite(rtmp); 1 链接服务器 RTMP_Conne...
上滑加载中
推荐直播
-
物联网资深专家带你轻松构建AIoT智能场景应用
2024/11/21 周四 16:30-18:00
管老师 华为云IoT DTSE技术布道师
如何轻松构建AIoT智能场景应用?本期直播将聚焦华为云设备接入平台,结合AI、鸿蒙(OpenHarmony)、大数据等技术,实现物联网端云协同创新场景,教您如何打造更有实用性及创新性的AIoT行业标杆应用。
回顾中 -
Ascend C算子编程之旅:基础入门篇
2024/11/22 周五 16:00-17:30
莫老师 昇腾CANN专家
介绍Ascend C算子基本概念、异构计算架构CANN和Ascend C基本概述,以及Ascend C快速入门,夯实Ascend C算子编程基础
即将直播 -
深入解析:华为全栈AI解决方案与云智能开放能力
2024/11/22 周五 18:20-20:20
Alex 华为云学堂技术讲师
本期直播我们将重点为大家介绍华为全栈全场景AI解决方案以和华为云企业智能AI开放能力。旨在帮助开发者深入理解华为AI解决方案,并能够更加熟练地运用这些技术。通过洞悉华为解决方案,了解人工智能完整生态链条的构造。
去报名
热门标签