0

ゲームオブジェクトにテクスチャや色を適用したいです。ここまでコードを書きましたが、色の部分がうまくいきません。テクスチャが適用されているので、少なくとも何かが正しいです。同時に両方ではなく、テクスチャまたは色を適用しているオブジェクトのタイプによって異なります。

シーンを再生すると、新しいマテリアルが割り当てられているのがわかります (インスペクター パネルに表示されます) が、色は白です。

GameObject o = GameObject.Find(items[i].name + "/" + ifv.field_details.name);
if (o != null){
    if (ifv.field_details.type_id.Equals(Strings.colorType)){
        //set the color
        string[] c = ifv.value.Split(',');
        Color color = new Color(float.Parse(c[1]),float.Parse(c[2]),float.Parse(c[3]),float.Parse(c[0]));
        Material material = new Material(Shader.Find("Diffuse"));
        material.color = color;                         
        o.renderer.material = material;
    }
    if (ifv.field_details.type_id.Equals(Strings.textureType)){
        //set the texture
        string url = Strings.texturesHost + ifv.value;
        WWW www = new WWW (url);
        yield return www;
        o.renderer.material.mainTexture = www.texture;
    }
}

if色のステートメントが機能しない理由は何ですか?

4

1 に答える 1

1

答えは : 各数値を 255 で割ります。説明はわかりませんがnew Color()、パラメーターが 0 から 1 の間であることを期待しているようです。

于 2013-05-30T10:50:09.590 に答える