当前位置: 首页 > news >正文

CIMRTS材质美化--放大采样、缩小采样

最新的CIMRTS v1.0.10中在要素管理中的材质美化增加「放大采样」「缩小采样」参数,对于透明树叶可以达到较好效果。

在CesiumLab中,一棵树处理完成后,在EarthSDK中,就是呈现这样缩小就会有树叶丢失的情况。效果如下:

图片

在CIMRTS中通过改变采样参数已经解决了这个问题。效果如下:

图片

如何做到的呢?

首先进入编辑创建的数据集页面,在要素管理页面选中纹理,点击下面的材质美化

图片

打开材质美化的设置面板

图片

决定树叶半透明纹理在缩小时不消失的关键就在最下面的「放大采样」「缩小采样」

图片

图片

这里的采样就涉及到OPENGL中的纹理相关知识,百度一下都有现成的文档说明,在这里就简单说下我的理解吧,这里分放大和缩小两种情况

放大采样

  • NEAREST:最临近点采样,选择中心点最接近纹理坐标的那个像素,这种方式会带来纹理放大的时候会有锯齿感或者颗粒感。

图片

  • LINEAR:线性采样,采样会基于纹理坐标附近的纹理像素,计算出一个平均值,近似出这些纹理像素之间的颜色。这种方式产生的纹理放大效果更加平滑,边缘没有明显的锯齿,视觉效果更为柔和。但是因为与周围的像素做加权平均了,纹理放大的时候会变模糊,这是正常现象。

图片

最后有一点提醒下,由于无需进行复杂的插值计算,GL_NEAREST模式在性能上通常优于GL_LINEAR。

缩小采样

  • NEAREST:和放大采样中的最临近点采样原理一致,在缩小采样中适用于半透纹理(树,栏杆,护栏)。所以示例模型材质缩小采样就是适合这种方式。

图片

  • LINEAR:和放大采样中的线性采样原理一致,在缩小采样中适用于纹理中有很多线的情况

  • NEAREST_MIPMAP_NEAREST :当纹理需要缩小时,会预先计算多个不同分辨率的纹理图像,并选择最接近当前纹理尺寸的Mipmap级别,并使用最临近点采样方法来生成最终的像素颜色。

  • LINEAR_MIPMAP_NEAREST:选择最接近当前纹理尺寸的Mipmap级别,并使用线性插值进行纹理坐标的采样

  • NEAREST_MIPMAP_LINEAR:在两个最匹配像素大小的Mipmap之间进行线性采样,使用最临近点采样方法来生成最终的像素颜色。

  • LINEAR_MIPMAP_LINEAR:CesiumLab一直采用这种,在两个最匹配像素大小的Mipmap之间进行线性采样,并使用线性插值进行纹理坐标的采样。这种采样方式就会导致半透明的贴图丢失。就如文章开始介绍的那棵树模型用CesiumLab处理后在预览缩小时会有树叶消失的情况。

综上所述,针对这棵树模型而言,要效果平滑,另外还要像素颜色正确,可以在纹理被缩小的时候使用最临近点采样(NEAREST),被放大时使用线性采样(LINEAR)

那肯定有人要问在处理不同的模型的时候应该如何去设置这两个参数呢?这个真没有标准答案,其实这个纹理采样的选择也不是完全绝对的,大家可以多试几次,达到最优的情况。

这也就是我们为什么会把这两个参数放到材质美化里面:一般来说使用CIMRTS来处理模型,这两个参数本不必要设置,只是针对特殊的材质(特别是带有半透的纹理),我们处理完再预览的时候发现有问题,才会回到材质美化中来调整效果。

相关文章:

CIMRTS材质美化--放大采样、缩小采样

最新的CIMRTS v1.0.10中在要素管理中的材质美化增加「放大采样」和「缩小采样」参数,对于透明树叶可以达到较好效果。 在CesiumLab中,一棵树处理完成后,在EarthSDK中,就是呈现这样缩小就会有树叶丢失的情况。效果如下&#xff1a…...

P8738 [蓝桥杯 2020 国 C] 天干地支

两种方法 #include<bits/stdc.h> using namespace std;int main(){int year;cin>>year;string tg[10] {"geng", "xin", "ren", "gui","jia", "yi", "bing", "ding", "wu&…...

PyCharm接入DeepSeek实现AI编程

目录 效果演示 创建API key 在PyCharm中下载CodeGPT插件 配置Continue DeepSeek 是一家专注于人工智能技术研发的公司&#xff0c;致力于开发高性能、低成本的 AI 模型。DeepSeek-V3 是 DeepSeek 公司推出的最新一代 AI 模型。其前身是 DeepSeek-V2.5&#xff0c;经过持续的…...

Java编程语言:辉煌的历史与未来前景

如果将软件开发世界比喻成一个宇宙&#xff0c;Java 无疑是其中最亮的星星之一。它从诞生起就改变了软件开发世界的格局。发展到今天&#xff0c;Java仍然是这个世界上最重要的编程语言之一。当然&#xff0c;它也面临着新的挑战。 Java的诞生 回溯到 1991 年&#xff0c;在 …...

麦田物语学习笔记:保存和加载场景中的物品

目录 基本流程 1.代码思路 2.代码实现 最终效果 补充知识点 1.序列化 2.委托 基本流程 现在在切换场景后,场景中的物品即使被拾取了,也还是会被重新加载出来,所以本篇文章的任务是在切换场景前后能保留当前场景的数据 1.代码思路 (1)为了保留处在地上的物品数据,就需要…...

页高速缓存与缓冲区缓存的应用差异

页高速缓存&#xff08;Page Cache&#xff09;与缓冲区缓存&#xff08;Buffer Cache&#xff09;是计算机系统中用于提高数据访问性能的两种不同类型的缓存机制&#xff0c;它们的差异主要体现在以下几个方面&#xff1a; 缓存目的 页高速缓存&#xff1a;主要用于加速对磁…...

深度学习 Pytorch 单层神经网络

神经网络是模仿人类大脑结构所构建的算法&#xff0c;在人脑里&#xff0c;我们有轴突连接神经元&#xff0c;在算法中&#xff0c;我们用圆表示神经元&#xff0c;用线表示神经元之间的连接&#xff0c;数据从神经网络的左侧输入&#xff0c;让神经元处理之后&#xff0c;从右…...

一文读懂 HTTP:Web 数据交换的基石

HTTP 概述 HTTP 是一种用作获取诸如 HTML 文档这类资源的协议。它是 Web 上进行任何数据交换的基础&#xff0c;同时&#xff0c;也是一种客户端—服务器&#xff08;client-server&#xff09;协议&#xff0c;也就是说&#xff0c;请求是由接受方——通常是 Web 浏览器——发…...

算法知识补充2

一部分&#xff1a;Tire树&#xff1a;高效地存储和查找字符串集合的数据结构acwing835 #include<iostream> #include<cstring> using namespace std; const int N100010; int son[N][26],cnt[N],idx; char str[N]; void insert(char str[]){int p0;for(int i0;st…...

Vue.js组件开发-实现对视频预览

在 Vue 中实现视频文件预览 实现步骤 创建 Vue 组件&#xff1a;构建一个 Vue 组件用于处理视频文件的选择和预览。文件选择&#xff1a;添加一个文件输入框&#xff0c;允许用户选择视频文件。读取文件&#xff1a;监听文件选择事件&#xff0c;使用 FileReader API 读取所选…...

SSM开发(三) spring与mybatis整合(含完整运行demo源码)

目录 本文主要内容 一、Spring整合MyBatis的三个关键点 二、整合步骤 1、创建一个Maven项目 2、在pom.xml文件中添加jar包的依赖 3、配置MyBatis 注解实现方式 XML配置文件实现 4、配置Spring 5、测试运行 本文主要内容 1. Spring + Mybatis整合; 2. MyBatis两种SQL…...

.NET MAUI进行UDP通信(二)

上篇文章有写过一个简单的demo&#xff0c;本次对项目进行进一步的扩展&#xff0c;添加tabbar功能。 1.修改AppShell.xaml文件&#xff0c;如下所示&#xff1a; <?xml version"1.0" encoding"UTF-8" ?> <Shellx:Class"mauiDemo.AppShel…...

14-6-3C++STL的list

&#xff08;一&#xff09;list的插入 1.list.insert(pos,elem);//在pos位置插入一个elem元素的拷贝&#xff0c;返回新数据的位置 #include <iostream> #include <list> using namespace std; int main() { list<int> lst; lst.push_back(10); l…...

AAAI2024论文解读|HGPROMPT Bridging Homogeneous and Heterogeneous Graphs

论文标题 HGPROMPT: Bridging Homogeneous and Heterogeneous Graphs for Few-shot Prompt Learning 跨同构异构图的小样本提示学习 论文链接 HGPROMPT: Bridging Homogeneous and Heterogeneous Graphs for Few-shot Prompt Learning论文下载 论文作者 Xingtong Yu, Yuan…...

WPA_cli P2P命令详解及使用

目录 通用命令 status scan scan_results add_network set_network enable_network reconfigure save_config quit P2P 相关命令 p2p_find p2p_peers p2p_connect [method] p2p_group_add [ssid=] [freq=] [ht40] [persistent] p2p_remove_client p2p_di…...

【竞技宝】LPL:IG3-1击败RNG

北京时间1月26日&#xff0c;英雄联盟LPL2025正在如火如荼的进行之中&#xff0c;昨日共进行两场比赛。第二场比赛由RNG对阵IG。本场比赛&#xff0c;RNG在首局前期打出完美节奏后一直压制着IG拿下比赛&#xff0c;但此后的三局&#xff0c;IG发挥出自己擅长大乱斗的能力在团战…...

sqlite3 学习笔记

文章目录 前言SQL的概念与表格相关的操作i.创建表格&#xff08;增&#xff09;ii 删除表格&#xff08;删&#xff09;iii 更改表格&#xff08;改&#xff09;iv 查询表格&#xff08;查&#xff09; 与记录相关的操作i 插入记录ii 删除记录iii 查询记录iv 修改记录 Linux中使…...

Visual Studio Community 2022(VS2022)安装方法

废话不多说直接上图&#xff1a; 直接上步骤&#xff1a; 1&#xff0c;首先可以下载安装一个Visual Studio安装器&#xff0c;叫做Visual Studio installer。这个安装文件很小&#xff0c;很快就安装完成了。 2&#xff0c;打开Visual Studio installer 小软件 3&#xff0c…...

项目集成RabbitMQ

文章目录 1.common-rabbitmq-starter1.创建common-rabbitmq-starter2.pom.xml3.自动配置1.RabbitMQAutoConfiguration.java2.spring.factories 2.测试使用1.创建common-rabbitmq-starter-demo2.目录结构3.pom.xml4.application.yml5.TestConfig.java 配置交换机和队列6.TestCon…...

3097. 或值至少为 K 的最短子数组 II

3097. 或值至少为 K 的最短子数组 II 题目链接&#xff1a;3097. 或值至少为 K 的最短子数组 II 代码如下&#xff1a; class Solution { public:int minimumSubarrayLength(vector<int>& nums, int k) {int res INT_MAX;for (int i 0;i < nums.size();i) {in…...

Qwen3-ASR-0.6B应用分享:打造智能语音助手的第一步

Qwen3-ASR-0.6B应用分享&#xff1a;打造智能语音助手的第一步 1. 语音识别技术的新选择 在智能语音助手、会议记录、客服系统等场景中&#xff0c;语音识别(ASR)技术正变得越来越重要。传统方案要么识别准确率不够高&#xff0c;要么需要消耗大量计算资源。Qwen3-ASR-0.6B的…...

ViGEmBus虚拟控制器驱动深度应用指南:从技术原理到场景落地

ViGEmBus虚拟控制器驱动深度应用指南&#xff1a;从技术原理到场景落地 【免费下载链接】ViGEmBus Windows kernel-mode driver emulating well-known USB game controllers. 项目地址: https://gitcode.com/gh_mirrors/vi/ViGEmBus 一、价值定位&#xff1a;重新定义虚…...

QT实战:5分钟搞定QChartView动态折线图(附完整代码)

QT实战&#xff1a;5分钟实现高性能动态折线图开发指南 在工业控制、金融分析、物联网监控等领域&#xff0c;实时数据可视化一直是开发者的核心需求。QT框架提供的QChart模块&#xff0c;以其高效的渲染性能和简洁的API设计&#xff0c;成为C开发者构建动态图表的首选方案。本…...

手把手教你实现glitch free的时钟切换电路(附Verilog代码)

手把手教你实现glitch free的时钟切换电路&#xff08;附Verilog代码&#xff09; 时钟切换电路是数字系统设计中的关键模块&#xff0c;尤其在多时钟域系统中&#xff0c;可靠的时钟切换能确保系统稳定运行。本文将深入探讨如何实现无毛刺&#xff08;glitch free&#xff09;…...

【SoC】【ESP32】从零到一:VSCode+ESP-IDF环境下的高效开发工作流构建

1. 为什么选择VSCodeESP-IDF开发ESP32&#xff1f; 第一次接触ESP32开发时&#xff0c;我尝试过各种开发环境&#xff1a;Arduino IDE、PlatformIO、Eclipse...直到遇到VSCodeESP-IDF的组合&#xff0c;才发现这才是嵌入式开发的"完全体"。ESP-IDF作为乐鑫官方的开发…...

【具身智能06】具身智能多模态感知与传感器融合:从看见到理解

06_具身智能多模态感知与传感器融合 关键词 多模态感知,传感器融合,触觉传感器,力觉传感器,时空对齐,环境建模,IMU,视觉-触觉融合,深度感知一、引言&#xff1a;从单模态感知到多模态融合的必然之路 具身智能机器人的本质是在物理世界中行动,而行动的前提是感知。传统的工业机器…...

【Java 25 ZGC 2.0终极调优指南】:27个生产级参数详解+GC停顿压至亚毫秒的5大黄金法则

第一章&#xff1a;Java 25 ZGC 2.0调优全景概览ZGC 2.0 在 Java 25 中迎来关键演进&#xff0c;其核心目标是将暂停时间稳定控制在亚毫秒级&#xff08;<1ms&#xff09;&#xff0c;同时显著提升高吞吐场景下的内存回收效率与可预测性。相比 Java 21 的 ZGC 实现&#xff…...

Simulink模型到AUTOSAR RTE的‘最后一公里’:手把手教你处理ARXML接口冲突并自动配置ISOLAR

Simulink模型到AUTOSAR RTE的‘最后一公里’&#xff1a;手把手教你处理ARXML接口冲突并自动配置ISOLAR 在汽车电子软件开发中&#xff0c;Simulink与AUTOSAR工具链的集成已经成为行业标配。但当你满怀期待地将Simulink模型导出为ARXML文件&#xff0c;准备导入ISOLAR进行后续开…...

别再只盯着RTK了!聊聊GNSS/INS组合导航里,紧耦合如何用1颗卫星‘吊住’你的定位

1颗卫星的逆袭&#xff1a;紧耦合技术如何在极端环境下守护你的定位精度 想象一下&#xff0c;你正驾驶一辆L4级自动驾驶汽车穿越曼哈顿的钢铁森林。高楼间的"城市峡谷"让GPS信号时断时续&#xff0c;传统导航系统已经开始报警——"卫星信号丢失"。但你的车…...

从MVS到NeRF的桥梁:手把手拆解MVSNeRF中的代价体与神经编码体

MVSNeRF&#xff1a;当多视图立体视觉遇见神经辐射场的跨界革命 在计算机视觉与图形学的交叉领域&#xff0c;2021年诞生的MVSNeRF如同一位技艺精湛的翻译官&#xff0c;成功搭建了传统多视图立体视觉&#xff08;MVS&#xff09;与新兴神经辐射场&#xff08;NeRF&#xff09;…...