【100个Cocos实例】用ChatGPT帮我改写Shader靠谱吗?

引言

这...看起来还行

昨天在星球看到星友的提问

"跟ChatGPT学习图形学能速成吗?"

笔者对这个问题也非常感兴趣 ,于是本文探讨 一下,用ChatGPT帮我改写Shader靠谱吗?

本文源工程可在文末获取,小伙伴们自行前往。

1.ChatGPT

为避免还有小伙伴不认识ChatGPT,这里做一下简单科普。

ChatGPT是由OpenAI开发的一种基于GPT(Generative Pre-trained Transformer)架构的语言模型。GPT是一种先前训练的模型,其目标是通过大规模的语言数据集学习语言的模式,然后可以用于执行各种自然语言处理任务,包括生成文本、回答问题、摘要生成等。

总的来说,它可以用于聊天、回答问题、提供信息 ,以及执行其他 与语言相关的任务

就是,你懂的,它可能懂 ,你不懂的,它可能也懂

下面我们一起来看下它靠不靠谱。

2.ChatGPT靠不靠谱

为了探讨ChatGPT靠不靠谱,笔者通过一个例子来看看。

彩虹 在现实生活中大家都见过 ,不知道大家有没有尝试过在游戏里面造一道彩虹呢?

1.环境

引擎版本:Cocos Creator 3.8.1

编程语言:TypeScript

2.资源准备

首先简单地用几秒钟在3dMax中做一个彩虹形状的模型。

导出FBX放到工程里面去。

首先创建一个默认的shader

依次将FBX做成预制体 、添加材质球 、设置自定义shader

资源准备完成

资源准备好了,七彩斑斓的彩虹怎么实现呢?

3.让ChatGPT修改shader

首先我们看下默认生成的shader,用的通用的顶点着色器 ,以及简单的片元着色器片段。

二话不说,我们把片元着色器片段丢给ChatGPT。

你看,它读懂了 这段shader,并且改好了发给我。

我们一起来看看 靠不靠谱,把shader片段拷贝到项目里面替换

ini 复制代码
CCProgram unlit-fs %{
  precision highp float;
  #include <legacy/output>
  #include <legacy/fog-fs>

  in vec2 v_uv;
  in vec3 v_position;

  uniform sampler2D mainTexture;

  uniform Constant {
    vec4 mainColor;
  };

  vec4 frag () {
    // 改变下面的代码以调整彩虹的颜色
    float frequency = 6.0; // 调整此值以改变彩虹的颜色数量
    vec3 rainbowColor = 0.5 + 0.5 * cos(frequency * v_uv.x + vec3(0, 2, 4));

    // 将彩虹颜色与 mainColor 相乘
    vec4 finalColor = vec4(rainbowColor, 1.0) * mainColor;

    return CCFragOutput(finalColor);
  }
}%

编译成功,没有报错。

再看我们的材质球,嗯,没错,是彩虹口味的。

再看我们的彩虹,已经七彩斑斓了。

4.效果演示

3.你怎么看

使用ChatGPT可能有一些潜在的好处,特别是在以下方面:

  1. 技术文档生成: 你可以使用ChatGPT来生成技术文档、代码注释或其他开发文档,从而提高文档的质量和效率。

  2. 问题解答: ChatGPT可以用于回答开发中的问题,提供有关特定技术、框架或编程语言的建议和解释。

  3. 创意灵感: 如果你需要一些创意灵感或者想要尝试新的开发思路,可以与ChatGPT进行对话,从中获取一些建议。

  4. 社交媒体内容生成: 可以使用ChatGPT生成有趣的、教育性的内容,吸引更多的读者。

然而,需要注意的是,ChatGPT并不是 完美的,有时可能会生成不准确或不合适 的内容。在使用时要谨慎 ,并最好在实际应用中验证生成的文本。

ChatGPT靠不靠谱?总的来说,你靠谱,它就靠谱。

结语

近日,笔者受麒麟子 (深耕游戏引擎与游戏开发15年 ,每一滴干货都源自商业项目 实践)的邀请,以嘉宾 的形式加入星球,星球主要用于:

  • 导师教学
  • 学习问题交流
  • 新人入门与进阶
  • 招聘与就业机会分享
  • 面试题集锦
  • 面试经验分享

总的来说,星球的目标 只有一个:提供优质内容,搞学习 。感兴趣的小伙伴可以私信"星球"了解和捧场。

我是"亿元程序员",一位有着8年游戏行业经验的主程。在游戏开发中,希望能给到您帮助, 也希望通过您能帮助到大家。

AD:笔者线上的小游戏《贪吃蛇掌机经典》《重力迷宫球》《填色之旅》大家可以自行点击搜索体验。

实不相瞒,想要个在看 !请把该文章分享给你觉得有需要的其他小伙伴。谢谢!

推荐专栏:

你知道王者荣耀是怎么实现技能范围指示器的吗?

8年主程手把手打造Cocos独立游戏开发框架

和8年游戏主程一起学习设计模式

从零开始开发贪吃蛇小游戏到上线系列

本文源工程 可通过私信发送Rainbow获取。

相关推荐
yuanyxh6 小时前
Mac 软件推荐
前端·javascript·程序员
万少6 小时前
AtomCode开发微信小程序《谁去呀》 全流程
前端·javascript·后端
某人辛木6 小时前
Web自动化测试
前端·python·pycharm·pytest
Kagol7 小时前
Superpowers GSD gstack AgentSkills深度测评
前端·人工智能
excel7 小时前
JavaScript 字符串与模板字面量:从表象到本质理解
前端
京东云开发者8 小时前
当AI成为导演-如何用AI创作动漫短剧
前端
李白的天不白8 小时前
使用 SmartAdmin 进行前后端开发
java·前端
乘风gg8 小时前
🤡PUA AI Coding 工具 的 10 条终极语录
前端·ai编程·claude
学Linux的语莫8 小时前
Vue 3 入门教程
前端·javascript·vue.js
怕浪猫9 小时前
第一章、Chrome DevTools Protocol (CDP) 详解
前端·javascript·chrome