最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Unity3D在Preview中打印日志的方法

 更新時(shí)間:2019年09月17日 17:22:54   作者:UnityAsk  
這篇文章主要為大家詳細(xì)介紹了Unity3D在Preview中打印日志的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

Preview窗口除了可以預(yù)覽模型之外,我們還可以做別的操作。

今天我們來(lái)寫(xiě)個(gè)小工具在Preview窗口中顯示調(diào)試信息。

可以看下面的圖,同樣是打印 health 和 power 的日志,在 Preview 中顯示比在 Console 中顯示舒服多了。

左邊是Console中顯示,右邊是Preview窗口中顯示。

創(chuàng)建Editor目錄,然后把下面的腳本放進(jìn)去

using UnityEngine;
using UnityEditor;

[CustomEditor(typeof(Object), true)]
public class PreviewGUIEditor : Editor {
 /** Update every 15th frame. */
 private const int updateOnFrame = 15;

 private GUIStyle _previewLabelStyle;

 private GUIStyle previewLabelStyle {
 get {
  if (_previewLabelStyle == null) {
  _previewLabelStyle = new GUIStyle("PreOverlayLabel") {
   richText = false,
   alignment = TextAnchor.UpperLeft,
   fontStyle = FontStyle.Normal
  };
  // Try to get a fixed-width font on macOS.
  var font = Font.CreateDynamicFontFromOSFont("Monaco", 12);
  // Failing that, try to get a fixed-width font on Windows.
  if (font == null)
   font = Font.CreateDynamicFontFromOSFont("Lucida Console", 12);
  // XXX What fixed-width font should I request if we're on Linux?
  if (font != null)
   _previewLabelStyle.font = font;
  // Debug.Log("Fonts: \n" + string.Join("\n", Font.GetOSInstalledFontNames()));
  }
  return _previewLabelStyle;
 }
 }

 public override bool HasPreviewGUI() {
 return Application.isPlaying;
 }

 public override bool RequiresConstantRepaint() {
 // Only repaint on the nth frame.
 return Application.isPlaying && Time.frameCount % updateOnFrame == 0;
 }

 public override void OnPreviewGUI(Rect rect, GUIStyle background) {

 string str = target.ToString();

 GUI.Label(rect, str, previewLabelStyle);
 }
}

在我們需要打印日志的類(lèi)里面 重載ToString()函數(shù),返回需要在preview中輸出的內(nèi)容。

下面是上面截圖的示例,一個(gè)Player類(lèi),在ToString()函數(shù)中返回了 health 和 power的輸出內(nèi)容。

using UnityEngine;

public class Player : MonoBehaviour
{
 public int health = 10;

 public int power = 10;
 // Use this for initialization
 void Start () {
 
 }
 
 // Update is called once per frame
 void Update ()
 {
 health += 1;
 power += 2;

 Debug.LogError("health = "+ health);
 Debug.LogError("power = "+ power);
 
 }

 public override string ToString()
 {
 return "health = " + health+"\n"+
   "power = " + power;
 }
}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:

相關(guān)文章

  • C# swagger ui增加訪問(wèn)限制方式

    C# swagger ui增加訪問(wèn)限制方式

    本文介紹了如何在C#中使用Swagger UI并增加訪問(wèn)限制,通過(guò)創(chuàng)建`SwaggerBasicAuthMiddleware`類(lèi)和`MiddlewareExtension`類(lèi),并在`Startup.cs`的`Configure`方法中注入`app.UseSwaggerBasicAuth()`,從而實(shí)現(xiàn)對(duì)Swagger頁(yè)面的訪問(wèn)控制
    2025-02-02
  • C# 寫(xiě)入XML文檔三種方法詳細(xì)介紹

    C# 寫(xiě)入XML文檔三種方法詳細(xì)介紹

    如何使用LINQ to XML對(duì)XML進(jìn)行操作,我們分別用這三個(gè)類(lèi)將同樣的xml內(nèi)容寫(xiě)入文檔,需要了解的朋友可以參考下
    2012-12-12
  • C#實(shí)現(xiàn)簡(jiǎn)單計(jì)算器功能

    C#實(shí)現(xiàn)簡(jiǎn)單計(jì)算器功能

    給大家分享用C#寫(xiě)出一個(gè)計(jì)算機(jī)功能的全部代碼分享,有興趣的朋友可以跟著做一下。
    2018-03-03
  • C#線程委托實(shí)現(xiàn)原理及方法解析

    C#線程委托實(shí)現(xiàn)原理及方法解析

    這篇文章主要介紹了C#線程委托實(shí)現(xiàn)原理及方法解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • 深入理解StringBuilder的使用方法

    深入理解StringBuilder的使用方法

    下面小編就為大家?guī)?lái)一篇深入理解StringBuilder的使用方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-05-05
  • C#面向?qū)ο笤O(shè)計(jì)原則之單一職責(zé)原則

    C#面向?qū)ο笤O(shè)計(jì)原則之單一職責(zé)原則

    這篇文章介紹了C#面向?qū)ο笤O(shè)計(jì)原則之單一職責(zé)原則,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-03-03
  • C#對(duì)文件/文件夾操作代碼匯總

    C#對(duì)文件/文件夾操作代碼匯總

    有關(guān)文件的操作的內(nèi)容非常多,不過(guò)幾乎都是從下面的這些基礎(chǔ)方法中演化出來(lái)的。比如對(duì)內(nèi)容的修改,不外乎就是加上點(diǎn)字符串操作或者流操作。還有其它一些特別的內(nèi)容,等在開(kāi)發(fā)項(xiàng)目中具體遇到后再添加。
    2015-04-04
  • 基于C#實(shí)現(xiàn)文件偽裝技術(shù)

    基于C#實(shí)現(xiàn)文件偽裝技術(shù)

    這篇文章主要為大家詳細(xì)介紹了如何基于C#實(shí)現(xiàn)文件偽裝功能,將一般文件夾偽裝成計(jì)算機(jī),控制面板,打印機(jī)等,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-02-02
  • C#中線程安全問(wèn)題的調(diào)試和解決

    C#中線程安全問(wèn)題的調(diào)試和解決

    在C#中,多線程編程是一種常見(jiàn)且強(qiáng)大的工具,但它帶來(lái)了線程安全的問(wèn)題,本文將介紹如何調(diào)試和解決C#中的線程安全問(wèn)題,并深入探討鎖機(jī)制、并發(fā)控制以及調(diào)試的最佳實(shí)踐,需要的朋友可以參考下
    2025-03-03
  • C# cefSharep控件的使用詳情

    C# cefSharep控件的使用詳情

    本文主要介紹了C# cefSharep控件的使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01

最新評(píng)論

祁阳县| 石泉县| 永泰县| 类乌齐县| 开平市| 阿勒泰市| 永泰县| 文昌市| 绿春县| 宣威市| 本溪市| 湟源县| 新和县| 兰西县| 永登县| 崇文区| 双流县| 夏河县| 阳朔县| 育儿| 谷城县| 嵩明县| 宝坻区| 东兴市| 昭平县| 革吉县| 鄢陵县| 新巴尔虎左旗| 宾阳县| 高密市| 芮城县| 礼泉县| 涿州市| 衢州市| 昭平县| 南木林县| 藁城市| 来宾市| 九龙坡区| 专栏| 日照市|