Legacy/Lightmap/BumpedSpec

Шейдеры и все-все-все.

Legacy/Lightmap/BumpedSpec

Сообщение gnoblin 04 ноя 2010, 21:41

В стандартной поставке шейдер для "самодельного" лайтмапинга c Bumped Specular почему-то выглядит вот так:

Синтаксис:
Используется glsl
Shader "Legacy Shaders/Lightmapped/Bumped Specular" {
        Properties {
                _Color ("Main Color", Color) = (1,1,1,1)
                _SpecColor ("Specular Color", Color) = (0.5, 0.5, 0.5, 1)
                _Shininess ("Shininess", Range (0.01, 1)) = 0.078125
                _MainTex ("Base (RGB) Gloss (A)", 2D) = "white" {}
                _BumpMap ("Normalmap", 2D) = "bump" {}
                _LightMap ("Lightmap (RGB)", 2D) = "lightmap" { LightmapMode }
        }
        FallBack "Legacy Shaders/Lightmapped/Bumped Diffuse"
}


Поэтому вот исправленный вариант:
Синтаксис:
Используется glsl
Shader "Legacy Shaders/Lightmapped/Gnoblin/BumpedSpec" {
Properties {
        _Color ("Main Color", Color) = (1,1,1,1)
    _SpecColor ("Specular Color", Color) = (0.5, 0.5, 0.5, 1)
    _Shininess ("Shininess", Range (0.03, 1)) = 0.078125
        _MainTex ("Base (RGB)", 2D) = "white" {}
        _BumpMap ("Normalmap", 2D) = "bump" {}
    _LightMap ("Lightmap (RGB)", 2D) = "black" {}
}

SubShader {
        LOD 200
        Tags { "RenderType" = "Opaque" }
CGPROGRAM
#pragma surface surf BlinnPhong
struct Input {
  float2 uv_MainTex;
  float2 uv_BumpMap;
  float2 uv2_LightMap;
};
sampler2D _MainTex;
sampler2D _LightMap;
sampler2D _BumpMap;
float4 _Color;
float _Shininess;

void surf (Input IN, inout SurfaceOutput o)
{
  half4 tex = tex2D (_MainTex, IN.uv_MainTex);
  o.Albedo = tex.rgb * _Color;
  half4 lm = tex2D (_LightMap, IN.uv2_LightMap);
  o.Emission = lm.rgb*o.Albedo.rgb;
  o.Gloss = tex.a;
  o.Alpha = lm.a * _Color.a;
  o.Specular = _Shininess;
  o.Normal = UnpackNormal(tex2D(_BumpMap, IN.uv_BumpMap));
}
ENDCG
}
FallBack "Legacy Shaders/Lightmapped/VertexLit"
}
 
skypeid: madkust
Мои крайние проекты:
Убойный Хоккей
Cube Day Z (альфа)
Аватара пользователя
gnoblin
Адепт
 
Сообщения: 4633
Зарегистрирован: 08 окт 2008, 17:23
Откуда: Минск, Беларусь
Skype: madkust
  • Сайт

Re: Legacy/Lightmap/BumpedSpec

Сообщение Роби 06 дек 2010, 02:09

Как заменить исправленный код шейдера на новый?
Трудное мы делаем сегодня, невозможное требудет немного больше времени
Аватара пользователя
Роби
UNец
 
Сообщения: 1
Зарегистрирован: 15 ноя 2010, 17:16
Откуда: Ставрополь
  • ICQ

Re: Legacy/Lightmap/BumpedSpec

Сообщение gnoblin 06 дек 2010, 04:54

Создать новый шейдер, скопипастить туда код исправленного варианта.
После этого шейдер будет доступен в меню.
skypeid: madkust
Мои крайние проекты:
Убойный Хоккей
Cube Day Z (альфа)
Аватара пользователя
gnoblin
Адепт
 
Сообщения: 4633
Зарегистрирован: 08 окт 2008, 17:23
Откуда: Минск, Беларусь
Skype: madkust
  • Сайт


Вернуться в Shader Lab

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3