zoukankan      html  css  js  c++  java
  • [转载]Unity3d更改3d Text的字体的材质球的shader,使字体不显示

    今天在用3D字体时碰到这个问题,字体会一直显示在相机最前面,与GUI 文字没有什么区别,
    但是又发现这个字体文件的材质球又没办法更改,发现其实字体材质球用的shader是GUI/textShader,所以就会做GUI显示
     
    解决办法:
    1、新建一个材质球;
    2、新建一个Shader,加上下面代码
    Shader "Custom/3D Text Shader" {
     
    Properties {
       _MainTex ("Font Texture", 2D) = "white" {}
       _Color ("Text Color", Color) = (1,1,1,1)
    }
     
    SubShader {
       Tags { "Queue"="Transparent" "IgnoreProjector"="True" "RenderType"="Transparent" }
       Lighting Off Cull Off ZWrite On Fog { Mode Off }
       Blend SrcAlpha OneMinusSrcAlpha
       Pass {
          Color [_Color]
          SetTexture [_MainTex] {
             combine primary, texture * primary
          }
       }
    }
    }
    3、将刚才的材质球的Shader改成自己新建的,并把字体文件下面的字体贴图拖到此材质球上面
    4、将自己创建的材质球给3D Text对象
    搞定!
  • 相关阅读:
    缅怀
    74LS164的使用
    跑步
    Datasheet,你会读么?[转]
    清华附小给的书单
    iOS-小知识
    网络-GET&POST
    网络-基础
    网络-HTTP其他常见方法
    数据解析
  • 原文地址:https://www.cnblogs.com/unitySPK/p/5177744.html
Copyright © 2011-2022 走看看