[NDK]从Opengles到Vulkan-基础篇(9)-视口相关

news2024/12/25 1:15:28

关于绘制调用的流程

我们可以看到整个流程步骤

  • 1 光栅化
  • 2 裁剪测试
  • 3 多重采样
  • 4 深度测试
  • 5 模板测试
  • 6 混合
  • 7 抖动
  • 8 输出帧数据
    渲染处理

这一节会涉及到裁剪测试

##关于视口
我们需要先了解以下四个概念
1.屏幕:即计算机的整个屏幕大小。
2.窗口:即屏幕中的某一个窗口,可放大缩小和移动关闭。
3.视口:即窗口还可以分为若干个区域,称为视口,窗口中用来绘图的区域。一般设置视口大小等于窗口大小。
4.裁剪窗口:即在视口中让你看到的图形,即显示出来的那部分。

Opengles 视口相关

对于客户端而言,屏幕就是物理屏幕的的大小了。
EGL设置的是EGLDisplay窗口EGLSurface的大小

 const EGLint pbuf_attribs[] = {
                EGL_WIDTH, width,
                EGL_HEIGHT, height,
                EGL_NONE};
        //创建离屏渲染Surface
        mSurface = eglCreatePbufferSurface(mDisplay, config, pbuf_attribs);

Opengles使用glViewport来设置视口的大小。

glViewp

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/879723.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

通讯商二要素Api接口验证真伪

随着互联网的普及和各种社交平台、电商平台、金融平台的发展,许多业务都需要用户进行实名认证,这也就涉及到了手机号码和姓名的验证问题。为了解决这个问题,现在有很多运营商提供的二要素API接口能够进行手机号码和姓名的验证,本文…

使用Pandas进行数据清理的入门示例

数据清理是数据分析过程中的关键步骤,它涉及识别缺失值、重复行、异常值和不正确的数据类型。获得干净可靠的数据对于准确的分析和建模非常重要。 本文将介绍以下6个经常使用的数据清理操作: 检查缺失值、检查重复行、处理离群值、检查所有列的数据类型…

Qt打包程序 windeployqt

Qt Creator运行直接生成的可执行性程序不能直接使用,原因是缺少依赖库。直接运行会报错: 为可执行文件添加图标 为可执行文件添加 icon 图标的方法很简单,将事先准备好的 icon 图标拷贝到程序对应的文件夹中,然后在 pro 工程文…

Java课题笔记~ JSTL

使用EL表达式已经实现了页面输出显示的优化,为什么还需要使用JSTL呢? 这是因为使用EL表达式无法实现逻辑处理,如循环、条件判断等,因此还需要与Java代码混合使用,而JSTL则可以实现逻辑控制,从而进一步优化…

中小企业选择Zoho CRM的五大优点

一款适用于中小企业的CRM客户关系管理软件,它可以帮助企业提高销售效率,改善营销效果,优化业务流程,实现业绩增长。下面说说,中小企业为什么要选择Zoho CRM? 1、多种版本定价 CRM需要提供了多种定价方案&…

三相电机的烧毁原因以及如何保护

三相电动机,具有一定的过载能力,短时间过载对电动机的影响不大,但是,电动机的电流长时间超过额定电流,就会使电动机严重发热而损坏,如果电动机定子绕组内部发生短路,也会使绕组电流增加而烧毁电…

07 - 深入浅出HashMap的设计与优化

在上一讲中提到过 Collection 接口,那么在 Java 容器类中,除了这个接口之外,还定义了一个很重要的 Map 接口,主要用来存储键值对数据。 HashMap 作为我们日常使用最频繁的容器之一,相信你一定不陌生了。今天我们就从 …

Java SpringBoot Vue智能停车系统

基础环境 JDK1.8、Maven、Mysql、IntelliJ IDEA 内置功能 系统管理:角色管理、接口管理、系统菜单、全局配置 账号管理:用户管理、合作单位 系统监控:监控大屏、日志监控 财务管理:订单列表 停车记录:停车记录 车辆管…

再不学就晚了!学习嵌入式的五个好处

学习嵌入式技术带来的好处不仅限于提高就业竞争力,还能为你提供其他各种各样的潜在优势。种一棵树最好的时间是十年前,其次就是现在,是时候立刻开始学习嵌入式技术了! 1. 多样的就业机会 嵌入式技术已经广泛应用于各行各业&#x…

基于STM32CUBEMX驱动TMOS模块STHS34PF80(4)----中断获取信号

基于STM32CUBEMX驱动TMOS模块STHS34PF80----4.中断获取信号 概述样品申请视频教程参考Demo参考程序中断中断生成设置中断开启存在检测中断输出配置中断管脚主程序测试结果 概述 HS34PF80的数据准备信号提供了一种机制,允许设备在新的测量数据可读取时通知系统&…

86. 分隔链表

86. 分隔链表 题目-中等难度示例1. 新建两链表,根据x值分类存放,最后合并 题目-中等难度 给你一个链表的头节点 head 和一个特定值 x ,请你对链表进行分隔,使得所有 小于 x 的节点都出现在 大于或等于 x 的节点之前。 你应当 保…

【Spring源码】小白速通解析Spring源码,从0到1,持续更新!

Spring源码 参考资料 https://www.bilibili.com/video/BV1Tz4y1a7FM https://www.bilibili.com/video/BV1iz4y1b75q bean的生命周期 bean–>推断构造方法(默认是无参构造,或指定的构造方法)–>实例化成普通对象(相当于ne…

【Vue3】Vue3 UI 框架 | Element Plus —— 创建并优化表单

安装 # NPM $ npm install element-plus --save // 或者(下载慢切换国内镜像) $ npm install element-plus -S// 可以选择性安装 less npm install less less-loader -D // 可以选择性配置 自动联想src目录Element Plus 的引入和注入 main.ts import…

S7-200 Smart 的多种端口及通讯方式

每个S7-200 SMART CPU都提供一个以太网端口和一个RS485端口(端口0),标准型CPU额外支持SB CM01信号板(端口1),信号板可通过STEP 7-Micro/WIN SMART软件组态为RS232通信端口或RS485通信端口。 CPU 通信端口引脚分配 1.S7-200 SMART CPU 集成的 RS485 通信…

数据结构入门 — 时间复杂度、空间复杂度

前言 数据结构_空间复杂度_时间复杂度讲解_常见复杂度对比 本文介绍数据结构中的时间复杂度和空间复杂度 ***文章末尾,博主进行了概要总结,可以直接看总结部分*** 博主博客链接:https://blog.csdn.net/m0_74014525 点点关注,后期…

防静电实时监控系统具有哪些功能

防静电实时监控系统是一种用于监测、检测和控制静电产生和积累的系统。它通过使用各种传感器和仪器,实时监测环境中的静电情况,并及时采取措施来防止静电危害和事故的发生。 防静电实时监控系统通常具有以下功能: 1. 传感器监测:…

Day13 04-Linux的虚拟机克隆-scp命令-ssh免登录-crontab定时器及时间同步操作

文章目录 第五章 多虚拟机的操作5.1 虚拟机克隆【掌握】5.1.1 克隆前的准备工作5.1.2. 修改IP地址5.1.3. 修改主机名5.1.4. 修改域名映射文件5.1.5. 虚拟机之间通信5.1.6. 流程总结 5.2. scp命令【重点】5.2.1. 命令格式5.2.2. 小技巧 5.3. ssh免密登录【重点】5.3.1. ssh的简介…

约数之和(质因子分解)

思路: (1)由数论基本定理,任何一个正整数x都能写作,其中p1,p2..pk为x的质因子。 (2) 由此可以推断,要求一个数约数的和,注意到约数就是p1,p2...pk的一种组合&#xff0…

Netty:ByteBuf类型转化

说明 io.netty.buffer.ByteBuf经常需要跟其它类型互相转化,例如ByteBuf类型作为Object类型函数参数传递,函数内部处理时将Object转换为ByteBuf。 代码示例 ByteBuf和Object类型互转 package com.thb;import io.netty.buffer.ByteBuf; import io.net…

【Java转Go】快速上手学习笔记(一)之环境安装篇

前言 前两天开始学习Go,需要写篇笔记记录总结一下。 Go它也是可以做web开发的,就像Java一样,做JavaWeb项目,Go也可以做GoWeb项目。当然Go的作用用处肯定不止这个,还有很多,只是因为我目前的话&#xff0c…