標準シェーダーの一つ目のマテリアルパラメータは、Rendering Mode です。ここでは、オブジェクトで透明度を使うかどうかを選択することができ、透明度を使う場合、どのブレンディングモードにするかを選びます。
Opaque - デフォルトです。透明な部分のない、一般的な固形のオブジェクトに適しています。
Cutout - 不透明と透明な領域をはっきり分ける透明効果を作成することができます。このモードでは、半透明の領域は存在せず、テクスチャは100%不透明か、まったく見えなくなるか、どちらかになります。これは、葉っぱや穴だらけでボロボロの服などの素材を形作るのに便利です。
Transparent - 透明なプラスチックやガラスなどの現実的な透明なマテリアルのようなレンダリングに適しています。このモードでは、マテリアル自体は、(テクスチャのアルファチャンネルとティントカラーのアルファに基づいた)透明度の値になります。しかし、本物の透明なマテリアルの場合と同様に、反射や照明のハイライトは、完全な明快さで表示されたままになります。
Fade - オブジェクトが鏡面反射光や反射を含んでいる場合でも、透明度の値を使ってオブジェクトを完全にフェードアウトすることができます。このモードは、オブジェクトのフェードインやフェードアウトをアニメーション化する場合に便利です。反射やハイライトもフェードアウトするので、透明なプラスチックやガラスのような透過素材を写実的にレンダリングするのには適していません。
レンダリングモード を変更すると、Unity はマテリアルにいくつかの変更を適用します。マテリアルのレンダリングモードを変更する単一の C# API はありませんが、コードで同じ変更を行うことができます。
レンダリングモード を変更したときに Unity によって行われる変更内容を確認するには、以下の操作を行います。
switch (blendMode)
{
case BlendMode.Opaque:
// Opaque Rendering Mode に関連する変更はこちら
break;
case BlendMode.Cutout:
// Cutout Rendering Mode に関連する変更はこちら
break;
case BlendMode.Fade:
// Fade Rendering Mode に関連する変更はこちら
break;
case BlendMode.Transparent:
// Transparent Rendering Mode に関連する変更はこちら
break;
}
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.