Floater Geschrieben 15. Juli 2014 Melden Share Geschrieben 15. Juli 2014 Hi zusammen, ich bin in den Tiefen des Internet über folgende Formel gestolpert wie Unity3d die Normals berechnet. inline fixed3 UnpackNormal(fixed4 packednormal) { #if defined(SHADER_API_GLES) && defined(SHADER_API_MOBILE) return packednormal.xyz * 2 - 1; #else fixed3 normal; normal.xy = packednormal.wy * 2 - 1; normal.z = sqrt(1 - normal.x*normal.x - normal.y * normal.y); return normal; #endif } Dazu hätte ich ein paar Fragen: Während die Mobile-Variante eher dem entspricht wie ich mir das ganze vorgestellt habe, frage ich mich warum die "Desktop" Variante soviel anders ist. Was ist die Variable w genau? Das müsste doch eigentlich der Alpha sein (RGBA = XYZW)? Was für Infos erwartet Unity3d dort und warum? Wieso diese Fragen: Ich will mir eigentlich n Shader basteln der von der Normal nur RG benutzt und den Rest... hmmm... keine Ahnung... Specular- und Gloss-Strenght oder sowas. Spec/Glosscolor dann über ein ein Color-Feld im Editor. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.