当前位置: 首页 > 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);

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

http://www.lryc.cn/news/491671.html

相关文章:

  • Mac配置maven环境及在IDEA中配置Maven
  • Reactor 模式的理论与实践
  • vim 一次注释多行 的几种方法
  • 问题记录-Java后端
  • 李春葆《数据结构》-课后习题代码题
  • 51c~C语言~合集2
  • 【Python】构建事件驱动架构:用Python实现实时应用的高效系统
  • Git(一)基本使用
  • HarmonyOS应用开发者基础认证,Next版本发布后最新题库(10月8日更新题库未收录)
  • 【PGCCC】Postgresql BRIN 索引原理
  • 腾讯云 AI 代码助手:产品研发过程的思考和方法论
  • Matlab 深度学习 PINN测试与学习
  • 【Angular】async详解
  • 抖音SEO矩阵系统:开发技术分享
  • SpringBoot集成minio,并实现文件上传
  • centos为用户赋予sudo权限
  • SAP 零售方案 CAR 系统的介绍与研究
  • Android Framework AudioFlinge 面试题及参考答案
  • 嵌入式系统与单片机工作原理详解
  • Diving into the STM32 HAL-----Timers笔记
  • 对比 MyBatis 批处理 BATCH 模式与 INSERT INTO ... SELECT ... UNION ALL 进行批量插入
  • AI大模型如何重塑软件开发流程与模式
  • NUXT3学习日记五(composables、$fetch和useAsyncData、useFetch,lazy,refresh)
  • MySQL原理简介—10.SQL语句和执行计划
  • wordpress二开-WordPress新增页面模板-说说微语
  • 001 MATLAB介绍
  • Linux—进程概念学习-03
  • 低速接口项目之串口Uart开发(二)——FIFO实现串口数据的收发回环测试
  • java: itext8.05 create pdf
  • 如何用通义灵码快速绘制流程图?