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

Unity中动态生成贴图并保存成png图片实现

实现原理:

要生成长x宽y的贴图,就是生成x*y个像素填充到贴图中,如下图:

如果要改变局部颜色,就是从x1到x2(x1<x2),y1到y2(y1<y2)这个范围做处理,

或者要想做圆形就是计算距某个点(x1,y1)在一定长度d的范围内做处理

代码:

    Vector3 point;float d;Texture2D t = new Texture2D(width,height);Color[] pixelColors = new Color[width * height];for (int i = 0; i < width; i++){for (int j = 0; j < height; j++){if(Mathf.Abs(i-width/2 - point.x)<d && Mathf.Abs(j-height/2 - point.z)<d){pixelColors[i * this.height + j] = new Color(0,0,0,0);}else{pixelColors[i * height + j] = Color.black;}}}t.SetPixels(pixelColors);t.Apply();byte[] b = t.EncodeToPNG();System.IO.File.WriteAllBytes(Application.dataPath+"/t.png",b);

 最终就会在文件夹中保存了图片

相关文章:

Unity中动态生成贴图并保存成png图片实现

实现原理&#xff1a; 要生成长x宽y的贴图&#xff0c;就是生成x*y个像素填充到贴图中&#xff0c;如下图&#xff1a; 如果要改变局部颜色&#xff0c;就是从x1到x2(x1<x2),y1到y2(y1<y2)这个范围做处理&#xff0c; 或者要想做圆形就是计算距某个点&#xff08;x1,y1&…...

Mac配置maven环境及在IDEA中配置Maven

Mac配置maven环境及在IDEA中配置Maven 1. 介绍 Maven是一款广泛用于Java等JVM语言项目的工具&#xff0c;它以项目对象模型&#xff08;POM&#xff09;为基础进行项目管理&#xff0c;通过POM文件来定义项目信息和依赖关系。同时&#xff0c;它也是构建自动化工具&#xff0…...

Reactor 模式的理论与实践

1. 引言 1.1 什么是 Reactor 模式&#xff1f; Reactor 模式是一种用于处理高性能 I/O 的设计模式&#xff0c;专注于通过非阻塞 I/O 和事件驱动机制实现高并发性能。它的核心思想是将 I/O 操作的事件分离出来&#xff0c;通过事件分发器&#xff08;Reactor&#xff09;将事…...

vim 一次注释多行 的几种方法

在 Vim 中一次注释多行是一个常见操作。可以使用以下方法根据你的具体需求选择合适的方式&#xff1a; 方法 1&#xff1a;手动插入注释符 进入正常模式&#xff1a; 按 Esc 确保进入正常模式。 选择需要注释的多行&#xff1a; 移动到第一行&#xff0c;按下 Ctrlv 进入可视块…...

问题记录-Java后端

问题记录 目录 问题记录1.多数据源使用事务注意事项&#xff1f;2.mybatis执行MySQL的存储过程&#xff1f;3.springBoot加载不到nacos配置中心的配置问题4.服务器产生大量close_wait情况 1.多数据源使用事务注意事项&#xff1f; 问题&#xff1a;在springBoot项目中多表处理数…...

李春葆《数据结构》-课后习题代码题

一&#xff1a;假设不带权有向图采用邻接矩阵 g 存储&#xff0c;设计实现以下功能的算法&#xff1a; &#xff08;1&#xff09;求出图中每个顶点的入度。 代码&#xff1a; void indegree(MatGraph g){int i,j,n;printf("各个顶点的入度&#xff1a;\n");for(i…...

51c~C语言~合集2

我自己的原文哦~ https://blog.51cto.com/whaosoft/12652943 一、嵌入式开发中的C语言编译器 如果你和一个优秀的程序员共事&#xff0c;你会发现他对他使用的工具非常熟悉&#xff0c;就像一个画家了解他的画具一样。----比尔.盖茨1 不能简单的认为是个工具 嵌入式程序开发…...

【Python】构建事件驱动架构:用Python实现实时应用的高效系统

解锁Python编程的无限可能:《奇妙的Python》带你漫游代码世界 事件驱动架构(Event-Driven Architecture,EDA)是一种基于事件流动进行系统设计的模式,广泛应用于游戏开发、实时监控和分布式系统中。它通过解耦事件的生产者和消费者,提升系统的可扩展性和灵活性。本文章从…...

Git(一)基本使用

目录 一、使用git -v 查看安装git版本 二、使用mkdir 创建一个文件&#xff0c;并使用 git init 在该目录下创建一个本地仓库&#xff0c; 三、通过git clone命令接入线上仓库 四、使用git status查看仓库状态信息 五、利用echo写入一个文件 并使用cat进行查看 【Linux】e…...

HarmonyOS应用开发者基础认证,Next版本发布后最新题库(10月8日更新题库未收录)

笔者会尽量找到答案的出处&#xff0c;力求答案准确无误。有些题目答案可能有错&#xff0c;也有一些笔者实在找不到出处&#xff0c;也不知道答案的&#xff0c;如果读者发现错误或有补充建议&#xff0c;欢迎评论或私信笔者。您的每一条反馈都是宝贵的&#xff0c;能够帮助笔…...

【PGCCC】Postgresql BRIN 索引原理

前言 postgresql 提供了块级索引&#xff08;简称 BRIN&#xff09;&#xff0c;主要适用于类似时序数据之类的&#xff0c;有着天然的顺序&#xff0c;而且都是添加写的场景。相比于 btree 索引&#xff0c;它的体积小得多&#xff0c;非常适用于大数据量的场景。 原理 pos…...

腾讯云 AI 代码助手:产品研发过程的思考和方法论

一、文章摘要 本文将详细阐述 腾讯云 AI 代码助手的历史发展形态与产品整体架构&#xff0c;并从技术、研发方法论的角度分别阐述了产品的研发过程。 全文阅读约 5&#xff5e;8 分钟。 二、产品布局 AI 代码助手产品经历了三个时代的发展 第一代诸如 Eclipse、Jetbrains、V…...

Matlab 深度学习 PINN测试与学习

PINN 与传统神经网络的区别 与传统神经网络的不同之处在于&#xff0c;PINN 能够以微分方程形式纳入有关问题的先验专业知识。这些附加信息使 PINN 能够在给定的测量数据之外作出更准确的预测。此外&#xff0c;额外的物理知识还能在存在含噪测量数据的情况下对预测解进行正则…...

【Angular】async详解

在 Angular 中&#xff0c;async 关键字用于定义异步函数&#xff0c;通常与 await 一起使用来处理 Promise。这使得异步代码看起来更像同步代码&#xff0c;从而更容易理解和维护。 基本用法 定义异步函数&#xff1a;使用 async 关键字。等待 Promise 解析&#xff1a;使用…...

抖音SEO矩阵系统:开发技术分享

市场环境剖析 短视频SEO矩阵系统是一种策略&#xff0c;旨在通过不同平台上的多个账号建立联系&#xff0c;整合同一品牌下的各平台粉丝流量。该系统通过遵循每个平台的规则和内容要求&#xff0c;输出企业和品牌形象&#xff0c;以矩阵形式增强粉丝基础并提升商业价值。抖音作…...

SpringBoot集成minio,并实现文件上传

SpringBoot集成minio 什么是minioSpringBoot集成minio1、引入minio依赖2、配置Minio相关参数3、在代码里读取自定义的minio配置4、在minio配置类里,注册ConfigurationProperties实现文件上传到minio1、利用SpringMVC实现接口的异常全局处理2、返回文件路径给前端3、返回文件流…...

centos为用户赋予sudo权限

在CentOS系统中&#xff0c;要为用户test赋予sudo权限&#xff0c;你需要按照以下步骤操作&#xff1a; 确保sudo包已安装&#xff1a; 如果系统中没有安装sudo&#xff0c;你可以通过yum&#xff08;CentOS 7及以下&#xff09;或dnf&#xff08;CentOS 8及以上&#xff09;来…...

SAP 零售方案 CAR 系统的介绍与研究

前言 当今时代&#xff0c;零售业务是充满活力和活力的业务领域之一。每天&#xff0c;由于销售运营和客户行为&#xff0c;它都会生成大量数据。因此&#xff0c;公司迫切需要管理数据并从中检索见解。它将帮助公司朝着正确的方向发展他们的业务。 这就是为什么公司用来处理…...

Android Framework AudioFlinge 面试题及参考答案

目录 请解释什么是 AudioFlinger? AudioFlinger 在 Android 系统中的位置是什么? AudioFlinger 的主要职责有哪些? AudioFlinger 如何管理音频流? 在 AudioFlinger 中,什么是音频会话? 请简述 AudioFlinger 的工作流程。 AudioFlinger 是如何与硬件交互的? 在 A…...

嵌入式系统与单片机工作原理详解

随着现代科技的发展&#xff0c;嵌入式系统已经深入到我们日常生活中的方方面面。无论是智能家居、汽车电子&#xff0c;还是工业控制、医疗设备&#xff0c;都离不开嵌入式系统的支持。而单片机作为嵌入式系统的核心组件&#xff0c;是实现这些功能的关键之一。本文将详细介绍…...

Diving into the STM32 HAL-----Timers笔记

嵌入式设备会按时间执行某些活动。对于真正简单且不准确的延迟&#xff0c;繁忙的循环可以执行任务&#xff0c;但是使用 CPU 内核执行与时间相关的活动从来都不是一个聪明的解决方案。因此&#xff0c;所有微控制器都提供专用的硬件外设&#xff1a;定时器。定时器不仅是时基生…...

对比 MyBatis 批处理 BATCH 模式与 INSERT INTO ... SELECT ... UNION ALL 进行批量插入

前言 在开发中&#xff0c;我们经常需要批量插入大量数据。不同的批量插入方法有不同的优缺点&#xff0c;适用于不同的场景。本文将详细对比两种常见的批量插入方法&#xff1a; MyBatis 的批处理模式。使用 INSERT INTO ... SELECT ... UNION ALL 进行批量插入。 MyBatis …...

AI大模型如何重塑软件开发流程与模式

AI大模型如何重塑软件开发流程与模式 随着人工智能技术的不断发展&#xff0c;AI大模型正在逐步改变软件开发的方式。传统的软件开发流程&#xff0c;尽管经过多年的演进&#xff0c;使得许多企业能够顺利进行软件开发&#xff0c;但仍然面临着许多挑战&#xff0c;例如开发周…...

NUXT3学习日记五(composables、$fetch和useAsyncData、useFetch,lazy,refresh)

composables 在 Nuxt 3 中&#xff0c;composables&#xff08;组合式函数&#xff09;是一种用于封装和复用有状态逻辑的机制。它类似于 Vue 3 中的组合式 API&#xff0c;允许你将相关的逻辑&#xff08;如数据获取、状态管理等&#xff09;提取到独立的函数中&#xff0c;然…...

MySQL原理简介—10.SQL语句和执行计划

大纲 1.什么是执行计划 2.执行计划包含哪些内容 3.SQL语句和执行计划的总结 4.SQL语句使用多个二级索引 5.多表关联的SQL语句如何执行 6.全表扫描执行计划的成本计算方法 7.索引的成本计算方法 8.MySQL如何优化执行计划 9.explain的参数说明 1.什么是执行计划 (1)什么…...

wordpress二开-WordPress新增页面模板-说说微语

微语说说相当于一个简单的记事本&#xff0c;使用还是比较方便的。这个版本的说说微语CSS样式不兼容&#xff0c;可能有些主题无法适配&#xff0c;但是后台添加内容&#xff0c;前端显示的逻辑已经实现。可以当作Word press二开中自定义页面模板学习~ 一、后台添加说说微语模…...

001 MATLAB介绍

前言&#xff1a; 软件获取渠道有很多&#xff0c;难点也就是百度网盘下载慢&#xff1b; 线上版本每月有时间限制。 01 MATLAB介绍 性质&#xff1a; MATLAB即Matrix Laboratory 矩阵实验室的意思&#xff0c;是功能强大的计算机高级语言, 已广泛应用于各学科研究部门、…...

Linux—进程概念学习-03

目录 Linux—进程学习—31.进程优先级1.1Linux中的进程优先级1.2修改进程优先级—top 2.进程的其他概念3.进程切换4.环境变量4.0环境变量的理解4.1环境变量的基本概念4.2添加环境变量—export4.3Linux中环境变量的由来4.4常见环境变量4.5和环境变量相关的命令4.6通过系统调用获…...

低速接口项目之串口Uart开发(二)——FIFO实现串口数据的收发回环测试

本节目录 一、设计思路 二、loop环回模块 三、仿真模块 四、仿真验证 五、上板验证 六、往期文章链接本节内容 一、设计思路 串口数据的收发回环测试&#xff0c;最简单的硬件测试是把Tx和Rx连接在一起&#xff0c;然后上位机进行发送和接收测试&#xff0c;但是需要考虑到串…...

java: itext8.05 create pdf

只能调用windows 已安装的字体&#xff0c;这样可以在系统中先预装字体&#xff0c;5.0 可以调用自配文件夹的字体文件。CSharp donetItext8.0 可以调用。 /*** encoding: utf-8* 版权所有 2024 ©涂聚文有限公司 言語成了邀功盡責的功臣&#xff0c;還需要行爲每日來值班…...