首页 > TAG信息列表 > texture

基于C++的OpenGL 10 之光照贴图

1. 引言 本文基于C++语言,描述OpenGL的光照贴图 前置知识可参考: 基于C++的OpenGL 09 之材质 - 当时明月在曾照彩云归 - 博客园 (cnblogs.com) 笔者这里不过多描述每个名词、函数和细节,更详细的文档可以参考: 光照贴图 - LearnOpenGL CN (learnopengl-cn.github.io) 2. 概述 纹理

WebGL进阶(3)环境遮挡图与强度

const texture = new THREE.TextureLoader().load(require('../assets/images/wenli2.jpg')) const texture_s = new THREE.TextureLoader().load(require('../assets/images/happyface.png')) const texture_ao = new THREE.TextureLo

Osg-OsgShader着色器(Qt5.14.2+osgE3.6.5+win10)-No19-OsgShader

.pro 1 QT += core gui widgets 2 TARGET = TestOsgQt 3 TEMPLATE = app 4 DEFINES += QT_DEPRECATED_WARNINGS 5 CONFIG += c++11 6 7 QMAKE_CXXFLAGS_RELEASE = $$QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO 8 QMAKE_LFLAGS_RELEASE = $$QMAKE_LFLAGS_RELEASE_W

使得图片变为可读的---解决报错Texture '图片名' is not readable, the texture memory can not be accessed from

//使得图片变为可读的---解决报错Texture '图片名' is not readable, the texture memory can not be accessed from scripts. You can make the texture readable in the Texture Import Settings. private Texture2D duplicateTexture(Texture2D source) { RenderT

KTL 一个支持C++14编辑公式的K线技术工具平台 - 第七版,体验GPGPU。

K,K线,Candle蜡烛图。 T,技术分析,工具平台 L,公式Language语言使用c++14,Lite小巧简易。 项目仓库:https://github.com/bbqz007/KTL 国内仓库:https://gitee.com/bbqz007/KTL  CoreAnimation for Windows: https://github.com/bbqz007/xw zqt5 一个超简单的Qt5窗口语法: https://gith

OpenGL贴图、小图片叠加(10)

基于前边两篇博文:OpenGL多层纹理叠加_部分区域(九-2) - 邗影 - 博客园 (cnblogs.com) OpenGL多层纹理叠加MIX(九-1) - 邗影 - 博客园 (cnblogs.com) 本篇文章效果类似,也是一个贴图,但是是一个完整小图贴到一张大图上;我们经常看视频的时候会有logo贴图的那种效果;或者像看电视,角落上有电

three模型贴图

1、给three模型贴图,例子:展示一个太阳在宇宙中心 2、思路:在添加模型的时候给模型贴上图片 创建贴图 //贴图 let textureLoader = new THREE.TextureLoader(); let road = require("./assets/004.jpg"); let texture = textureLoa

OpenGL马赛克(八-2)

上一节写了如何实现全部马赛克 本篇做的是部分马赛克: 需要理解的点:片元着色器,每一个片元(像素)执行一次片元着色器的程序;所以你在片元着色器中写的程序都是针对逐个像素的; 片元着色器代码:(本博客直接修改原图显示的像素,未进行图片叠加,融合,等马赛克方式) 1 #version 330 core 2

three中材质移动动画

  three中材质移动动画 // 材质移动动画 animationTexture(mesh){ var textureLoader = new THREE.TextureLoader(); this.textureAlarm = textureLoader.load('/static/test.png',(texture)=> { mesh.material.map = texture; mesh.material.

cesium模型纹理替换

一、概述 一个cesium管网项目中,默认情况下,用不同颜色表示不同的管网类型。当点击到对应的管网时,需要动态替换管网的纹理,以达到表达管网流向的目的。 二、替换步骤 1、添加需要替换的图片到Resourc中 Cesium.Resource.fetchImage({ url : './Earth/images/gw/'+name+'.j

Cesium 中的Shader解析2

一、简介 采用纯WebGL实现纹理贴图,并修改shader,对比Cesium中的实现,从而感受Cesium对WebGL的封装,以及用法上的异同点。 可以对比Shader解析1中用Cesium实现相同功能代码。https://www.cnblogs.com/dog2016/p/16222406.html 二、代码 <!-- 纹理映射的过程需要顶点着色器和

openGL纹理贴图(三)

使用:STBI开源文档,一个能够读取各种格式图片并解析(确切地说是decoding)宽高通道的的文件库   1 texcoord 纹理坐标,uniform sampler2D ourTexture纹理采样器; 2 纹理环绕和过滤:     纹理坐标的范围是0到1,假如超出这个范围的话,在OpenGL里会有几种方式来贴图,这些方式叫做纹理环绕

(CVPR2021)Learning 3D Shape Feature for Texture-insensitive Person Re-identification

目录摘要 Learning 3D Shape Feature for Texture-insensitive Person Re-identification 学习三维形状特征进行纹理不敏感的人再识别 论文地址:https://ieeexplore.ieee.org/document/9578604 代码:(待开源)https://github.com/TencentYoutuResearch/PersonReID-YouReID 摘要

OpenGL的多重渲染目标(Multiple Render Targets)技术(Qt下实现)

一直没有找到一个Qt下的MRT的简单实例,通过查阅资料,完成如下例子。 重要参考:https://www.jianshu.com/p/da82d3616cca 欢迎学习交流:https://github.com/986247404/OpenGL-MRT-QT/tree/main 多重渲染目标允许程序同时渲染到多个颜色缓冲,向不同的颜色缓冲中送入渲染结果的不同方

玩转WebGL(九)纹理贴花

纹理单元 上节中通过采样器(Sampler)将纹理对象传给片段着色器 uniform sampler2D u_Sampler; GLSL内建的texture函数来采样纹理的颜色,它第一个参数是纹理采样器,第二个参数是对应的纹理坐标。输出的是纹理的(插值)纹理坐标上的(过滤后的)颜色。 sampler2D是个uniform变量,为了

Android 如何实现气泡选择动画,食堂大妈看完都会了

有锯齿的圆 解决方案是 smoothstep。它根据到 texture 与背景的变换起始点的距离平滑的从0到1变化。因此距离 0 到 0.49 时 texture 的透明度为 1,大于等于 0.5 时为 0,0.49 和 0.5 之间时平滑变化,如此圆的边就平滑了。 无锯齿圆 OpenGL 中如何使用 texture

JavaScript WebGL 帧缓冲区对象

目录 引子 帧缓冲区对象 示例 观察及思考 参考资料 引子 在看 How I built a wind map with WebGL 的时候,里面用到了 framebuffer ,就去查了下资料单独尝试了一下。 Origin My GitHub 帧缓冲区对象 WebGL 有一个能力是将渲染结果作为纹理使用,使用到的就是帧缓冲区对象(frameb

Android多种方式实现相机圆形预览 看这一篇就够了,吐血整理

Typically you will set your viewport here. If your camera is fixed then you could also set your projection matrix here: void onSurfaceChanged(GL10 gl, int width, int height) { gl.glViewport(0, 0, width, height); // for a fixed camera, set the pr

Qt opengl 两张纹理 两个UV 叠加显示

先上效果   核心代码解析      //单张贴图时 只用绑定一次 glBindTexture(GL_TEXTURE_2D, texture0); 激活绑定第一张贴图     glActiveTexture(GL_TEXTURE0);     glBindTexture(GL_TEXTURE_2D, texture0); 激活绑定第二张贴图     glActiveTexture(GL_TEXTURE1);  

Metal视频渲染

一、视频的渲染首先需要获取对应的视频帧,这里使用AVAssetReader进行获取视频帧,具体可以看https://www.cnblogs.com/czwlinux/p/15779598.html关于视频的获取。这里使用的格式是kCVPixelFormatType_420YpCbCr8BiPlanarFullRange进行获取视频的数据   二、关于如何将kCVPixelFormat

Unity截屏或Render Texture渲染后的图片透明物体出错的问题及解决方法

发现问题   刚刚接触一个需要截屏分享的项目,但Unity那边一直反馈透明物体截图会错误,有透明物体的地方不管该物体后面有没有其他物体,截屏出来的图片都会变透明掉了。 寻找原因   我使用的截屏方法如下: private IEnumerator ScreenShot() { yield return n

C-4:对正方体加载纹理

C-4. 对正方体加载纹理 初始化OpenGL准备数据纹理图片准备建立着色器顶点着色器片段着色器 纹理过滤方式的切换渲染纹理效果图 作业要求: 1、使用三种纹理过滤方式加载纹理(线性采样、mipmap 和最近点采样); 2、加载纹理的图片可以自己设定; 3、各个面的纹理不同; 4、鼠标

CVPixelBufferRef

在iOS里,我们经常能看到 CVPixelBufferRef 这个类型,在Camera 采集返回的数据里得到一个CMSampleBufferRef,而每个CMSampleBufferRef里则包含一个 CVPixelBufferRef,在视频硬解码的返回数据里也是一个 CVPixelBufferRef。 顾名思义,CVPixelBufferRef 是一种像素图片类型,由于CV开头,所以

Metal 摄像头采集渲染

一、创建MTKView self.mtkView = [[MTKView alloc] initWithFrame:self.view.bounds]; self.mtkView.device = MTLCreateSystemDefaultDevice(); self.mtkView.delegate = self; self.mtkView.framebufferOnly = NO; [self.view insertSubview:self.mtkView

ARFoundation入门到精通 - 1.2 ARCore 支持机型

在中国区域,ARCore 支持以下设备: (ps:ARCore不支持鸿蒙系统) 制造商 型号 Notes Huawei Honor 10 Supports multiple GPU texture resolutions - 1440x1080, 1280x960, 480p Huawei Honor Magic 2 Huawei Honor V20 Supports multiple GPU texture resolutions - 144