Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 12 Next capture
2021 2022 2023
1 capture
12 Jun 22 - 12 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
  • Help Room /
avatar image
0
Question by nitzanwilnai · Oct 04, 2018 at 07:19 AM · shadersmaterialstextures

material.SetTexture not working for mainTexture, works for others

I am running into a weird issue where, if I try to set my main texture to a new texture, it does not change. If I set a secondary texture, it does change.

The code setting the textures for the shader:

         spriteRenderer.material.SetTexture("_SecondaryTexture", fishTexture); // <- changes texture
         spriteRenderer.material.SetTexture("_MainTex", fishTexture); // <- texture does not change!
 

_SecondaryTexture changes correctly.

_MainTex remains the same.

The shader code:

 Shader "Unlit/TestShader"
 {
     Properties
     {
         // we have removed support for texture tiling/offset,
         // so make them not be displayed in material inspector
         [NoScaleOffset] _MainTex ("Texture", 2D) = "white" {}
         [NoScaleOffset] _SecondaryTexture ("Texture", 2D) = "white" {}
     }
     SubShader
     {
         Tags {"Queue"="Transparent" "IgnoreProjector"="True" "RenderType"="Transparent"}
         LOD 100
 
         ZWrite Off
         Cull Off
         Blend SrcAlpha OneMinusSrcAlpha 
 
         Pass
         {
             CGPROGRAM
             // use "vert" function as the vertex shader
             #pragma vertex vert
             // use "frag" function as the pixel (fragment) shader
             #pragma fragment frag
 
              #include "UnityCG.cginc"
 
             // vertex shader inputs
             struct appdata
             {
                 float4 vertex : POSITION; // vertex position
                 float2 texcoord : TEXCOORD0; // texture coordinate
             };
 
             // vertex shader outputs ("vertex to fragment")
             struct v2f
             {
                 float4 vertex : SV_POSITION; // clip space position
                 half2 texcoord : TEXCOORD0; // texture coordinate
             };
 
             // texture we will sample
             sampler2D _MainTex;
             sampler2D _SecondaryTexture;
 
             float4 _MainTex_ST;
             float4 _MainTex_TexelSize;
 
             float4 _SecondaryTexture_ST;
             float4 _SecondaryTexture_TexelSize;
 
             // vertex shader
             v2f vert (appdata v)
             {
                  v2f o;
                  o.vertex = UnityObjectToClipPos(v.vertex);
                  o.texcoord = TRANSFORM_TEX(v.texcoord, _MainTex);
                  return o;
             }
 
             // pixel shader; returns low precision ("fixed4" type)
             // color ("SV_Target" semantic)
             fixed4 frag (v2f pix) : SV_Target
             {
                 // sample texture and return it
                 fixed4 col = tex2D(_MainTex, pix.texcoord);
                 //fixed4 col = tex2D(_SecondaryTexture, pix.texcoord);
                 return col;
             }
             ENDCG
         }
 
     }
 }
 

Anyone have any ideas why I cannot set the main texture?

Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

0 Replies

· Add your reply
  • Sort: 

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

165 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

Why are my maps not applying to my material 0 Answers

Get UV warped texture as another texture 0 Answers

Unity Field Of View Visualisation Transparent Texture Problem 0 Answers

Making a material that auto-tiles a texture 0 Answers

Filling regions of a texture before projecting 0 Answers


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges