Unity Shader Graph 2D - 使用DeepSeek协助绘制一个爱心

最近十分流行使用DeepSeek AI,于是想尝试着能不能用DeepSeek来帮助我实现一些Shader Graph效果,正好之前看到了爱心图形,就说干脆用DeepSeek来告诉我怎么使用Shader Graph来绘制一个爱心。


问DeepSeek怎么绘制爱心

首先打开DeepSeek的网站,然后开启一个新的会话New chat。勾上下面的两个选项,一个是深度思考,一个是联网。

然后再Message DeepSeek中输入要问的问题,这里我的问题如下。

DeepSeek会告诉我一些它思考后解决方案的思路,我阅读它的思路之后,就会理解到要绘制爱心需要这样去做。(理解解决方案需要具备一定的Shader Graph基础)

当然如果没有理解到它的思路,它也会给到我具体的步骤,如下所示。

有了解决方案的步骤,依葫芦画瓢也能够实现爱心的绘制。

实现DeepSeek爱心绘制的方案

解决方案的核心就是,在准备好的坐标系上,使用爱心图形的公式,将坐标系上的X和Y代入进去即可。

首先需要在Unity中创建一个Shader Graph文件命名为Heart以及对应的材质球M_Heart。然后在Shader Graph文件中创建一个名为MainTex的Texture 2D变量。

坐标系的准备

首先是准备坐标系,这里需要用到一个UV节点,按照DeepSeek所说将远点移动到中心,并调整范围。用到Subtract节点和Multiply节点,节点图如下所示。

然后分离X和Y,用到Split节点,如下所示。

爱心公式实现

有了X和Y轴的数据,接着就是实现爱心图形的公式了,根据DeepSeek爱心图形的公式是(x² + y² - 1)³ - x² y³ ≤ 0。首先实现这一部分(x² + y² - 1)³,节点如下所示。

然后是x² * y³,节点如下所示。

最后是两个式子进行相减,并取小于等于0的值,节点如下所示。

然后给爱心加一个可控制的颜色变量Color,与最后的结果进行相乘,输出到最终的BaseColor和Alpha值上,节点如下所示。

回到Unity场景中创建一个2D的Sprite,并将对应的材质球引用到Sprite上。

我们发现这个最终图形的效果似乎下半部分是爱心,但上半部分不对,是什么问题呢?

爱心公式实现的调整

上述的问题可能发生的原因或许是由于坐标系的X和Y轴的值范围太小,导致爱心无法绘制完整,于是我们可以将之前坐标系准备时乘以的2转化为一个可调整的float变量命名为Range,如下所示。

然后再回到Unity中,调整这个Range的大小,当Range调整到合适的位置时,这个爱心就能够完整的绘制出来了,如下所示。

这样通过DeepSeek的帮助,我们就实现了爱心绘制的Shader Graph,是不是很酷!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

如何正确配置您的WordPress邮件设置

在运营WordPress网站时,确保邮件能够顺利发送和接收是非常重要的。无论是通知、确认邮件,还是营销邮件,邮件的可靠性会直接影响用户体验。许多站长常常会遇到邮件无法送达、被标记为垃圾邮件等问题。要解决这些问题,使用SMTP是一个…

MySQL调优01 - 单库调优思想

单库调优 文章目录 单库调优一:系统中性能优化的核心思维二:MySQL性能优化实践1:连接层的优化1.1:连接数是越大越好吗?1.2:偶发高峰类业务的连接数配置1.3:分库分表情况下的连接数配置1.4&#…

OLED显示屏使用学习——(二)

四、OLED 原理图设计注意事项 4.1 SPI 接口设计 在 SPI 接口中需保证 BS0,BS1,BS2 全为 0,也不是接地;所以在接口配置电阻中 4.2 IIC 接口设计 在 iic 接口中需要将 BS1 配置为 1,BS0 为 0;所以 R1,R4 焊接,R2&am…

string类OJ练习题

目录 文章目录 前言 一、反转字符串 二、反转字符串 II 三、反转字符串中的单词 III 四、验证一个字符串是否是回文 五、字符串相加(大数加法) 六、字符串相乘(大数乘法) 七、把字符串转化为整数(atoi) 总结…

6-图像金字塔与轮廓检测

文章目录 6.图像金字塔与轮廓检测(1)图像金字塔定义(2)金字塔制作方法(3)轮廓检测方法(4)轮廓特征与近似(5)模板匹配方法6.图像金字塔与轮廓检测 (1)图像金字塔定义 高斯金字塔拉普拉斯金字塔 高斯金字塔:向下采样方法(缩小) 高斯金字塔:向上采样方法(放大)…

javaEE-6.网络原理-http

目录 什么是http? http的工作原理: 抓包工具 fiddler的使用 HTTP请求数据: 1.首行:​编辑 2.请求头(header) 3.空行: 4.正文(body) HTTP响应数据 1.首行:​编辑 2.响应头 3.空行: 4.响应正文…

网络安全-防御 第一次作业(由于防火墙只成功启动了一次未补截图)

防火墙安全策略课堂实验报告 一、拓扑 本实验拓扑包含预启动设备、DMZ区域(含OA Server和Web Server)、防火墙(FW1)、Trust区域(含办公区PC和生产区PC)等。具体IP地址及连接关系如给定拓扑图所示&#xf…

开源项目介绍-词云生成

开源词云项目是一个利用开源技术生成和展示词云的工具或框架,广泛应用于文本分析、数据可视化等领域。以下是几个与开源词云相关的项目及其特点: Stylecloud Stylecloud 是一个由 Maximilianinir 创建和维护的开源项目,旨在通过扩展 wordclou…

使用DeepSeek的技巧笔记

来源:新年逼自己一把,学会使用DeepSeek R1_哔哩哔哩_bilibili 前言 对于DeepSeek而言,我们不再需要那么多的提示词技巧,但还是要有两个注意点:你需要理解大语言模型的工作原理与局限,这能帮助你更好的知道AI可完成任务…

redis 运维指南

一、Redis 概述 Redis(Remote Dictionary Server)是一款开源的内存数据存储系统,使用 ANSI C 语言编写,支持网络通信,可基于内存进行数据存储以实现高效读写,同时也提供了持久化功能将数据保存到磁盘。它以…

Windows本地部署DeepSeek-R1大模型并使用web界面远程交互

文章目录 前言1. 安装Ollama2. 安装DeepSeek-r1模型3. 安装图形化界面3.1 Windows系统安装Docker3.2 Docker部署Open WebUI3.3 添加Deepseek模型 4. 安装内网穿透工具5. 配置固定公网地址 前言 最近爆火的国产AI大模型Deepseek详细大家都不陌生,不过除了在手机上安…

LabVIEW与PLC交互

一、写法 写命令立即读出 写命令后立即读出,在同一时间不能有多个地方写入,因此需要在整个写入后读出过程加锁 项目中会存在多个循环并行执行该VI,轮询PLC指令 在锁内耗时,就是TCP读写的实际耗时为5-8ms,在主VI六个…

【PDF多区域识别】如何批量PDF指定多个区域识别改名,基于Windows自带的UWP的文字识别实现方案

海关在对进口货物进行查验时,需要核对报关单上的各项信息。对报关单 PDF 批量指定区域识别改名后,海关工作人员可以更高效地从文件名中获取关键信息,如货物来源地、申报价值等。例如文件名 “[原产国]_[申报价值].pdf”,有助于海关快速筛选重点查验对象,提高查验效率和监管…

用python实现进度条

前言 在Python中,可以使用多种方式实现进度条。以下是几种常见的进度条格式的实现方法: 1. 使用 tqdm 库 tqdm 是一个非常流行的库,可以轻松地在循环中显示进度条。 from tqdm import tqdm import time# 示例:简单的进度条 fo…

每日一题洛谷P5721 【深基4.例6】数字直角三角形c++

#include<iostream> using namespace std; int main() {int n;cin >> n;int t 1;for (int i 0; i < n; i) {for (int j 0; j < n - i; j) {printf("%02d",t);t;}cout << endl;}return 0; }

Python----Python高级(并发编程:进程Process,多进程,进程间通信,进程同步,进程池)

一、进程Process 拥有自己独立的堆和栈&#xff0c;既不共享堆&#xff0c;也不共享栈&#xff0c;进程由操作系统调度&#xff1b;进程切换需要的资源很最大&#xff0c;效率低。 对于操作系统来说&#xff0c;一个任务就是一个进程&#xff08;Process&#xff09;&#xff…

Python 梯度下降法(六):Nadam Optimize

文章目录 Python 梯度下降法&#xff08;六&#xff09;&#xff1a;Nadam Optimize一、数学原理1.1 介绍1.2 符号定义1.3 实现流程 二、代码实现2.1 函数代码2.2 总代码 三、优缺点3.1 优点3.2 缺点 四、相关链接 Python 梯度下降法&#xff08;六&#xff09;&#xff1a;Nad…

《Kettle保姆级教学-界面介绍》

目录 一、Kettle介绍二、界面介绍1.界面构成2、菜单栏详细介绍2.1 【文件F】2.2 【编辑】2.3 【视图】2.4 【执行】2.5 【工具】2.6 【帮助】 3、转换界面介绍4、作业界面介绍5、执行结果 一、Kettle介绍 Kettle 是一个开源的 ETL&#xff08;Extract, Transform, Load&#x…

Spring Boot篇

为什么要用Spring Boot Spring Boot 优点非常多&#xff0c;如&#xff1a; 独立运行 Spring Boot 而且内嵌了各种 servlet 容器&#xff0c;Tomcat、Jetty 等&#xff0c;现在不再需要打成 war 包部署到 容器 中&#xff0c;Spring Boot 只要打成一个可执行的 jar 包就能独…

C# 中记录(Record)详解

从C#9.0开始&#xff0c;我们有了一个有趣的语法糖&#xff1a;记录(record)   为什么提供记录&#xff1f; 开发过程中&#xff0c;我们往往会创建一些简单的实体&#xff0c;它们仅仅拥有一些简单的属性&#xff0c;可能还有几个简单的方法&#xff0c;比如DTO等等&#xf…