在Unity中编写Shader的编译器环境配置(支持CG和HLSL)

这篇具有很好参考价值的文章主要介绍了在Unity中编写Shader的编译器环境配置(支持CG和HLSL)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Unity默认使用的编译器VisualStudio带有扩展插件ShaderLabVS,但功能很差,所以还是选用VisualStudioCode作为编写Shader的编译器,一方面其能自动识别Shaderlab语法,并且还有丰富的Shader扩展插件来辅助编写。

实际上编写时我们只希望.shader文件有VSCODE打开,其他脚本正常还是用VS,可以通过Editor.Callbacks的特性来完成。

using System;
using UnityEditor;
using UnityEditor.Callbacks;
using UnityEngine;

public class ShaderEditor
{
    [OnOpenAssetAttribute(1)]
    public static bool step1(int instanceID, int line)
    {
        string path = AssetDatabase.GetAssetPath(EditorUtility.InstanceIDToObject(instanceID));
        string name = Application.dataPath + "/" + path.Replace("Assets/", "");
        if (name.EndsWith(".shader"))    //文件扩展名类型
        {
            System.Diagnostics.Process process = new System.Diagnostics.Process();
            System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo();
            startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
            startInfo.FileName = "C:/Users/Administrator/AppData/Local/Programs/Microsoft VS Code/Code.exe";   //VSCODE程序
            startInfo.Arguments = name;
            process.StartInfo = startInfo;
            process.Start();
            return true;
        }

        return false;
    }
}

将startInfo.FileName替换成自己VSCODE的路径即可,这里不建议使用环境变量,Windows自带的路径是\而C#启用的地址是/,这里转换比较麻烦,不如直接写明。
使用的时候将这个脚本放在Editor文件下即可,需要提前打开VSCode,并且重新打开项目时,需要在ShaderEditor里面敲个空行重新编译才能使用(作者也不知道为什么,只有脚本和Shader不能正常进逻辑,其他类型都可以)。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEditor;
public class ShaderVS
{
    [MenuItem("Tools/启用VSCode编辑Shader文件")]
    public static void OpenVSCode()
    {
        UnityEditor.Compilation.CompilationPipeline.RequestScriptCompilation();
    }
}

写个Menu进项目强制重新编译下。文章来源地址https://www.toymoban.com/news/detail-609594.html

到了这里,关于在Unity中编写Shader的编译器环境配置(支持CG和HLSL)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 在win10上,配置 Rust 开发环境(使用 mingw64编译器) 和 idea 配置 Rust 插件

    2.1、编译器 mingw 与 visual studio 之间的选择 Rust 底层是依赖C/C++的 编译器,所以需要先安装C/C++编译环境。 Windows上C/C++ 的 编译器 有两种: 微软 的 Visual Studio (msvc) GNU 的 Mingw (gnu): 官网地址:https://www.mingw-w64.org/ Rust 默认使用的是 Visual Studio, 使用默认选项就能安装上,

    2024年02月02日
    浏览(43)
  • c语言实现https客户端 源码+详细注释(OpenSSL下载,visual studio编译器环境配置)

    请参考:openssl下载安装教程 步骤:官网下载-安装到选定目录-配置环境变量-打开命令窗口检查是否安装成功 注意: 打开命令窗口(快捷键 win + r ,在弹出窗口内输入cmd按回车),输入命令openssl version如果显示openssl版本则表示安装成功。 我出现的问题:明明安装上了却显示

    2024年04月16日
    浏览(37)
  • 【C++】在线编译器推荐,让你随时随地编写代码

    描述 文中所有网址,在 结论 中有汇总。 环境 版本号 描述 文章日期 2023-06-14 操作系统 Win11 - 21H2 - 22000.1335 Python 3.7.1 frida.exe 15.0.18 Repl.it 官网地址: https://repl.it/languages/cpp 需要登录 支持shell ,也就是说用户完全可以使用该linux服务器。 支持调试 支持各种其他工具 支持项目

    2024年02月15日
    浏览(40)
  • Latex安装与环境配置(TeXlive、TeXstudio与VS code的安装)编译器+编辑器与学习应用

    TeXlive 配置Tex排版系统需要安装编译器+编辑器。TeX 的源代码是后缀为  .tex  的纯文本文件。使用任意纯文本编辑器,都可以修改  .tex  文件:包括 Windows 自带的记事本程序,也包括专为 TeX 设计的编辑器(TeXworks, TeXmaker, TeXstudio, WinEdt 等),还包括一些通用的文本编辑器(

    2024年02月14日
    浏览(44)
  • 【LINUX】查看自己系统环境、编译器环境

    1.查看自己系统环境         在Linux系统上,使用 uname -a 命令可以获取关于系统内核和操作系统的详细信息。这个命令会显示出当前系统的内核版本、主机名、操作系统类型、处理器架构等信息。在终端中执行以下命令即可查看输出: 输出可能会类似于以下内容:  当在

    2024年02月07日
    浏览(33)
  • linux如何查看编译器支持的C++版本(支持C++11、支持C++14、支持C++17、支持C++20)(编译时不指定g++版本,默认使用老版本编译)

    C++11 C++11是一个重要的C++标准版本,于2011年发布。C++11带来了许多重要的改进,包括: 智能指针:引入了shared_ptr和unique_ptr等智能指针,用于更好地管理动态内存分配。 新的循环语句:引入了for循环中的范围语法,以更简洁的方式遍历容器。 初始化列表:允许使用初始化列表

    2024年02月02日
    浏览(29)
  • Matlab2022a无法识别vs2019编译器,未检测到支持的编译器,错误使用Mex -setup error cannot find support compiler

    1、确定一下您的问题:错误使用Mex 2、再执行以下命令: 如果您的结果跟我一样,那么可以继续看,如果不一样,就可能不是同一个问题。 下面直接说解决方案: 3、打开powershell,执行下面命令 install-module -scope currentuser MSI 按照提示输入Y 4、继续执行命令 get-msirelatedproduct

    2024年02月06日
    浏览(59)
  • 【开发环境】Windows下搭建TVM编译器

    关于搭建TVM编译器的官方文档:Install from Source — tvm 0.14.dev0 documentation (apache.org) 1. 安装Anaconda 首先我们需要安装Anaconda,因为其中包含着我们所需要的各类依赖: 进入Anaconda官网https://www.anaconda.com/products/distribution,下载Windows版本,下载完成后运行.exe, 可以更改安装路径(

    2024年02月15日
    浏览(41)
  • 【Linux环境基础开发工具】编译器-gcc/g++

    上一篇博客, 我们学习了vim编辑工具,学会了怎么写代码, 这篇文章,我将分享代码该怎么编译的问题。 目录 写在前面: 1. gcc和g++介绍 2. gcc是如何编译程序的 1. 预处理 2. 编译 3. 汇编 4. 链接 3. gcc的选项介绍 4. 我们使用的函数是哪来的 5. 我们的.o文件和库是如何链接的?

    2024年02月10日
    浏览(35)
  • Qt配置使用MSVC编译器

      Qt配置使用MSVC编译器_qt msvc-CSDN博客 注意:Qt支持的MSVC就是2017和2015,所以vs也要下载2017,不要直接用最新的,安装路径都用默认的。程序运行失败时可以尝试windeployqt拷贝库文件到本地,然后有可能就能运行了。VS官网下载Visual Studio Community 2017,在线安装Visual Studio Community

    2024年02月09日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包