Örnek uygulamayı şu adresten indirebilir ve inceleyebilirsiniz. Link
Dijital Teknolojiler, Unity, Php, Javascript, 2D 3D Grafik Animasyon, C#, Teknolojik Çözümler
Translate Blog
10 Nisan 2023 Pazartesi
2 Aralık 2022 Cuma
Unity Materyal ve Materyal Menüsünde bulunan rengin değiştirilmesi, Change Unity Material and Shader Color
Bir gameObjectin SkinnedMeshRenderer kısmında bulunan materyal dokusunu ve rengini aşağıdaki şekilde değiştirebilirsiniz.
Renk değiştirmek için;
RGB renkler 255,255,255 olarak tanımlanır. Kırmızı isterseniz 255,0,0 yapıp kırmızıyı maksimum yaparsınız. Ama Unity'de renk atamalarında 255 olan değerin kaşılığı 0 ile 1 arasında mesela 255 için 1f (f float anlamına geliyor) veya 127 için 0.5f dir.
yourGameObject.GetComponent<SkinnedMeshRenderer>().material.color = new Color(0.1f,1f,0);
Elinizdeki RGB kod aracılığı ile dinamik değer oluşturmanız gerekiyorsa oran orantı metodu ile elde edeceğiniz 1/255 değerini RGB kodunuzdaki R ile G ile ve B ile ayrı ayrı çarparak kullanın.
using System.Globalization; //en tepeye eklemeyi unutmayın, küsüratlı float sayı dönüştürmede lazım
string rgb = "255,0,0"; //kırmızı renginizin rgb si olsun # siz
var katsayi = 1/255; //dönüştürme oranımız
string[] renk= rgb.Split(char.Parse(",")); //virgülle parçalara ayırıyoruz, her sayıyı ayrı hesaplamamız lazım.
var newcolor = new Color(float.Parse(renk[0]*katsayi, CultureInfo.InvariantCulture), float.Parse(renk[1]*katsayi,, CultureInfo.InvariantCulture ), float.Parse(renk[2]*katsayi,, CultureInfo.InvariantCulture ));
yourGameObject.GetComponent<SkinnedMeshRenderer>().materials[0].color = newcolor;
Materyal değiştirmek için;
public Material[] NumMat;
//bu diziyi oluşturun ve arayüzden bu diziye kullanmak istediğiniz materyalleri atayın, bir amteryal dizisi olduğu için sadece materyal atayabilirsiniz, resim olmaz. Resimleri önce materyalde kullanın sonra materyali atayın. 1 tane ise 1 tane 10 tane ise 10 tane materyali bu dizi alanına ekleyin. Resimdeki gibi.
Değişikliği yapacak bir fonksiyon yazın ve aşağıdaki kodu için koyun.
var materials = yourGameObject.GetComponentInChildren<SkinnedMeshRenderer>().materials;
materials[0] = NumMat[3]; //burda 3. materyali doku olarak atamışım
yourGameObject.GetComponent<SkinnedMeshRenderer>().materials = materials;
21 Ekim 2022 Cuma
ESP DevKitC SVG Image
ESP32-DevKitC SVG and IMAGE
ESP32-DevKitC is a low-footprint and entry-level development board that is part of the ESP32 series. This board has a rich peripheral set. The built-in ESP32 pinout is optimized for hassle-free prototyping!