2017-08-14 141 views
0

我對Unity和C#相當陌生,但已經足夠搜索,認爲除了使用着色器之外,目前還沒有可用的解決方案。 (着色器不能在免費版)在Unity 3D中顯示對象的線框之間切換

到目前爲止,我已經能夠改變我的模型是否顯示在線框或不使用下列:

// from http://docs.unity3d.com/ScriptReference/GL-wireframe.html 
using UnityEngine; 
using System.Collections; 

public class ExampleClass : MonoBehaviour { 
    void OnPreRender() { 
     GL.wireframe = true; 
    } 
    void OnPostRender() { 
     GL.wireframe = false; 
    } 
} 

然而這並未」不要讓我按需要在遊戲中切換。我假設解決方案是重新渲染,但不確定這是否是正確的方法。有什麼建議嗎?

回答

2

唯一合理的解決方案是使用免費版本中提供的着色器。自Unity 5以來,專業版和免費版僅基於許可證而不同;如果您的遊戲超過$ 100,000美元,則需要支付專業版許可證。但是,所有功能都可以在兩者中使用。

更新:要實際應用着色器,您需要確保您的模型已被UV映射(又名:展開)。這是一個解釋如何將2D紋理座標轉換爲模型3D表面的過程。想想看,如何將包裝紙切割並摺疊在禮物表面。

解釋紫外線貼圖和解包裹大大超出了這個問題的範圍。這裏有一個鏈接解釋最基本的攪拌機

https://en.wikibooks.org/wiki/Blender_3D:_Noob_to_Pro/UV_Map_Basics

+0

使用着色器試圖讀取他們並沒有付費版本工作崗位,但它似乎是工作。現在的問題是,我無法應用着色器,因爲模型在混合器中不是「無法包裝」的?我現在能做什麼? –

+0

這不應該是一個論壇,但我會更新我的答案。 – Soviut