Получить текстуру в кт попал луч (обн)

Лучший способ помочь другим, поделиться своими находками.

Получить текстуру в кт попал луч (обн)

Сообщение valera3132 04 сен 2012, 16:09

Синтаксис:
Используется javascript
var transf : Transform;

class hitmat1 {
        var enabled : boolean = true;
        var texturehit : Texture2D;
        var Layer : LayerMask = 1;
        var distance : float = 5;
        @HideInInspector var tranglind : int;
        @HideInInspector var tr : Transform;
}

var hitmat1 : hitmat1 = hitmat1();

function Update() {
        var hit : RaycastHit;
        if (hitmat1.enabled == true && Physics.Raycast(transf.position, transf.TransformDirection(Vector3.forward), hit, hitmat1.distance, hitmat1.Layer) == true)
        if (hitmat1.tranglind != hit.triangleIndex || hitmat1.tr != hit.transform) {
                hitmat1.tranglind = hit.triangleIndex;
                hitmat1.tr == hit.transform;
                var mee : Mesh = hit.collider.mesh;
                var mre : Renderer = hit.collider.renderer;
                if (mee != null && mre != null) {
                        if (mre.sharedMaterials.Length > 1) {
                                var vcount : int;
                                for (var submesh = 0; submesh < mee.subMeshCount; submesh++) {
                                        var indices = mee.GetTriangles(submesh);
                                        if (hit.triangleIndex * 3 + 2 >= vcount && hit.triangleIndex * 3 + 2 < vcount + indices.Length)
                                        if (mre.sharedMaterials[submesh].HasProperty("_MainTex") == true)
                                                hitmat1.texturehit = mre.sharedMaterials[submesh].mainTexture;
                                                else
                                                hitmat1.texturehit = null;
                                        vcount += indices.Length;
                                }
                                }else{
                                if (mre.renderer.sharedMaterial.HasProperty("_MainTex") == true)
                                        hitmat1.texturehit = mre.renderer.sharedMaterial.mainTexture;
                                        else
                                        hitmat1.texturehit = null;
                        }
                }
        }
}
Аватара пользователя
valera3132
UNец
 
Сообщения: 23
Зарегистрирован: 17 апр 2012, 06:09

Re: Получить текстуру в кт попал луч (обн)

Сообщение Voolgreem 30 дек 2012, 20:23

ничего не понял. где описание??
Voolgreem
UNец
 
Сообщения: 1
Зарегистрирован: 30 дек 2012, 19:03


Вернуться в Исходники (Копилка)

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2