Modifier un shader

Questions à propos du scripting Shader.
Avatar de l’utilisateur
stigma
Messages : 1407
Inscription : 17 Nov 2012 18:29
Localisation : Perdu dans les mondes de Myst
Contact :

Modifier un shader

Message par stigma » 29 Jan 2014 23:44

Bonjour,
J'essaie de modifier le shader "Transparent/Cutout/Diffuse" afin de le rendre double face.
J'ajoute la ligne "Cull Off" après la ligne "LOD 200"
Quand je veux l'enregistrer, j'ai le message

Code : Tout sélectionner

The file "C:\Users\Alain\Document...AlphaTest-Diffuse.shader" has line endings which differ from the policy settings.
Do you want to convert the line endings?.
Je clique sur le bouton Convert mais le shader n'est pas modifié. Je n'y comprends pas grand chose, c'est d'ailleurs la première fois que je tripatouille un shader :oops:
Pouvez-vous m'aider ? Merci

Avatar de l’utilisateur
ZJP
Messages : 5748
Inscription : 15 Déc 2009 06:00

Re: Modifier un shader

Message par ZJP » 30 Jan 2014 01:53

stigma a écrit :Bonjour,
J'essaie de modifier le shader "Transparent/Cutout/Diffuse" afin de le rendre double face.
J'ajoute la ligne "Cull Off" après la ligne "LOD 200"
Quand je veux l'enregistrer, j'ai le message

Code : Tout sélectionner

The file "C:\Users\Alain\Document...AlphaTest-Diffuse.shader" has line endings which differ from the policy settings.
Do you want to convert the line endings?.
Je clique sur le bouton Convert mais le shader n'est pas modifié. Je n'y comprends pas grand chose, c'est d'ailleurs la première fois que je tripatouille un shader :oops:
Pouvez-vous m'aider ? Merci
C'est parce que tu essaies de modifier la version déjà compilée du shader. Comme tout les shaders d’origines, il te faut le source qui se trouve dans une des archives ici (Built-in shaders >> Alpha-Diffuse.shader) .

Le shader modifié et renommé ( TransparentCOFF.shader) .

Code : Tout sélectionner

Shader "Transparent/Diffuse CullOff" { 
Properties {
	_Color ("Main Color", Color) = (1,1,1,1)
	_MainTex ("Base (RGB) Trans (A)", 2D) = "white" {}
}

SubShader {
	Tags {"Queue"="Transparent" "IgnoreProjector"="True" "RenderType"="Transparent"}
	LOD 200
	Cull Off
CGPROGRAM
#pragma surface surf Lambert alpha

sampler2D _MainTex;
fixed4 _Color;

struct Input {
	float2 uv_MainTex;
};

void surf (Input IN, inout SurfaceOutput o) {
	fixed4 c = tex2D(_MainTex, IN.uv_MainTex) * _Color;
	o.Albedo = c.rgb;
	o.Alpha = c.a;
}
ENDCG
}

Fallback "Transparent/VertexLit"
}

Avatar de l’utilisateur
stigma
Messages : 1407
Inscription : 17 Nov 2012 18:29
Localisation : Perdu dans les mondes de Myst
Contact :

Re: Modifier un shader

Message par stigma » 30 Jan 2014 09:18

Merci ZJP !

Avatar de l’utilisateur
ZJP
Messages : 5748
Inscription : 15 Déc 2009 06:00

Re: Modifier un shader

Message par ZJP » 30 Jan 2014 14:31

stigma a écrit :Merci ZJP !
A ton service.

Avatar de l’utilisateur
stigma
Messages : 1407
Inscription : 17 Nov 2012 18:29
Localisation : Perdu dans les mondes de Myst
Contact :

Re: Modifier un shader

Message par stigma » 30 Jan 2014 19:29

La transparence marche bien, mais un peu trop. Voici ma texture sous Blender
Image
et voici ce que ça donne avec Unity
Image

Avatar de l’utilisateur
Max
Messages : 8771
Inscription : 30 Juil 2011 13:57
Contact :

Re: Modifier un shader

Message par Max » 30 Jan 2014 21:04

problème qui te coince depuis un moment il me semble.....

Essais ça, du Cutout :

Code : Tout sélectionner

Shader "Custom/Cutout/Diffuse2Sided" {
Properties {
	_Color ("Main Color", Color) = (1,1,1,1)
	_MainTex ("Base (RGB) Trans (A)", 2D) = "white" {}
	_Cutoff ("Alpha cutoff", Range(0,1)) = 0.5
}

SubShader {
	Tags {"Queue"="AlphaTest" "IgnoreProjector"="True" "RenderType"="TransparentCutout"}
	LOD 200
	Cull Off
	
CGPROGRAM
#pragma surface surf Lambert alphatest:_Cutoff

sampler2D _MainTex;
fixed4 _Color;

struct Input {
	float2 uv_MainTex;
};

void surf (Input IN, inout SurfaceOutput o) {
	fixed4 c = tex2D(_MainTex, IN.uv_MainTex) * _Color;
	o.Albedo = c.rgb;
	o.Alpha = c.a;
}
ENDCG
}

Fallback "Transparent/Cutout/VertexLit"
}
Image
Pas d'aide par MP, le forum est là pour ça.
En cas de doute sur les bonnes pratiques à adopter sur le forum, consulter la Charte et sa FAQ

Avatar de l’utilisateur
stigma
Messages : 1407
Inscription : 17 Nov 2012 18:29
Localisation : Perdu dans les mondes de Myst
Contact :

Re: Modifier un shader

Message par stigma » 31 Jan 2014 16:16

Max a écrit :problème qui te coince depuis un moment
Bien vu Max. En fait, j'ai repris mon projet de fonds en comble. J'avais des meshs éparpillés avec autant de matériaux, d'où un nombre de drawcalls important. Je reprends mes objets les uns après les autres en faisant un baking de texture propre qui regroupe plusieurs textures en un seul materiau. J'en suis donc arrivé à refaire mes pylones mais comme tu le vois, j'ai le même souci que l'année dernière.
Je vais tester ce shader ce soir. Merci

Edit :

Great ! C'est impeccable. Merci encore :)

Répondre

Revenir vers « les Shaders »