ABOUT ME

Unity๋กœ ๋งŒ๋“œ๋Š” ๊ฒŒ์ž„ ๊ฐœ๋ฐœ์˜ ์ฆ๊ฑฐ์›€๊ณผ ๋ฐฐ์›€์„ ํ•จ๊ป˜ ๋‚˜๋ˆ„๋Š” ๊ณต๊ฐ„์ž…๋‹ˆ๋‹ค. ์‹ค์ „ ์ฝ”๋“œ ์˜ˆ์ œ์™€ ๊ฐœ๋ฐœ ํŒ, ํ”„๋กœ์ ํŠธ ๊ฒฝํ—˜์„ ๊ณต์œ ํ•˜๋ฉฐ, ์ฐฝ์˜์ ์ธ ์•„์ด๋””์–ด์™€ ํ•จ๊ป˜ ์„ฑ์žฅํ•˜๋Š” ๊ฐœ๋ฐœ์ž ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ๋งŒ๋“ค์–ด๊ฐ‘๋‹ˆ๋‹ค.

Today
Yesterday
Total
  • [Unity] ์กฐ๊ฑด๋ถ€ ๋กœ๊น…์œผ๋กœ ์„ฑ๋Šฅ ์ตœ์ ํ™”ํ•˜๊ธฐ - CustomLogger ํด๋ž˜์Šค ๋งŒ๋“ค์–ด๋ณด๊ธฐ
    Unity 2025. 5. 30. 12:26

    ๐Ÿงญ ๊ฐœ์š”

    Unity ๊ฐœ๋ฐœํ•˜๋‹ค ๋ณด๋ฉด Debug.Log๋ฅผ ์‚ฌ์šฉํ•  ์ผ์ด ๋งŽ๋‹ค.
    Debug๋Š” ์ƒ๊ฐ๋ณด๋‹ค ์„ฑ๋Šฅ์— ์˜ํ–ฅ์„ ๋งŽ์ด ๋ผ์น˜๋Š”๋ฐ, ๋ฆด๋ฆฌ์ฆˆ ๋นŒ๋“œ์— ๋กœ๊ทธ๊ฐ€ ํฌํ•จ๋˜๊ฒŒ ๋œ๋‹ค๋ฉด ์„ฑ๋Šฅ์— ์˜ํ–ฅ์„ ๋งŽ์ด ๋ผ์น˜๊ฒŒ ๋œ๋‹ค.
    ๊ทธ๋ž˜์„œ ๋นŒ๋“œ๋•Œ๋งˆ๋‹ค ์ฝ”๋“œ์— ์žˆ๋Š” ๋ชจ๋“  Debug๋ฌธ์„ ์ง€์›Œ์ฃผ๊ฑฐ๋‚˜ ํ•ด์•ผ ํ•˜๋Š”๋ฐ, ํ•ด๋‹น ์ž‘์—…์€ ๋„ˆ๋ฌด ๊ท€์ฐฎ๋‹ค...

    ์ด๋ฒˆ์—๋Š” ํ•ด๋‹น ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋„๋ก ์กฐ๊ฑด๋ถ€ ์ปดํŒŒ์ผ์„ ํ™œ์šฉํ•œ CustomLogger ํด๋ž˜์Šค๋ฅผ ๋งŒ๋“ค์–ด๋ณผ ์˜ˆ์ •์ด๋‹ค.

    • โœ… Conditional ์†์„ฑ์„ ํ™œ์šฉํ•œ CustomLogger ํด๋ž˜์Šค ๊ตฌํ˜„ํ•˜๊ธฐ
    • โœ… ๋นŒ๋“œ ํ™˜๊ฒฝ์— ๋”ฐ๋ผ ์ž๋™์œผ๋กœ ๋กœ๊ทธ ์ œ๊ฑฐํ•˜๋Š” ์‹œ์Šคํ…œ ๋งŒ๋“ค๊ธฐ
    • โœ… ๊ฐœ๋ฐœ/๋ฆด๋ฆฌ์ฆˆ ๋นŒ๋“œ๋ณ„ ๋กœ๊ทธ ๊ด€๋ฆฌ ๋ฐฉ๋ฒ• ์•Œ์•„๋ณด๊ธฐ

    ๐Ÿ”ง Step 1. CustomLogger ํด๋ž˜์Šค ๊ธฐ๋ณธ ๊ตฌ์กฐ ์ดํ•ดํ•˜๊ธฐ

    ๋จผ์ € ์‚ฌ์šฉํ•  ํ•ต์‹ฌ ๊ฐœ๋…์„ ์ดํ•ดํ•ด๋ณด์ž.
    ์ผ๋‹จ Unity์—์„œ Debug.Log๋Š” ๋ฆด๋ฆฌ์ฆˆ ๋นŒ๋“œ์—์„œ๋„ ํ˜ธ์ถœ๋˜์–ด ์„ฑ๋Šฅ ์ด์Šˆ๋ฅผ ์ผ์œผํ‚ฌ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์—, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์กฐ๊ฑด์— ๋งž์ถฐ CustomLogger๋ฅผ ๊ตฌ์„ฑํ•˜์ž.

    • ํ•ต์‹ฌ ์›๋ฆฌ: [Conditional("ENABLE_LOG")] ์†์„ฑ์„ ์‚ฌ์šฉํ•ด์„œ ์ปดํŒŒ์ผ ์‹œ์ ์— ๋กœ๊ทธ ์ฝ”๋“œ๋ฅผ ์™„์ „ํžˆ ์ œ๊ฑฐ
    • ์„ฑ๋Šฅ ์ตœ์ ํ™”: ๋ฆด๋ฆฌ์ฆˆ ๋นŒ๋“œ์—์„œ๋Š” ๋กœ๊ทธ ๊ด€๋ จ ์ฝ”๋“œ๊ฐ€ ์•„์˜ˆ ์กด์žฌํ•˜์ง€ ์•Š์Œ

    ํ•ต์‹ฌ์ด ๋˜๋Š” ์ฝ”๋“œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค:

    using System.Diagnostics;
    
    public static class CustomLogger
    {
        [Conditional("ENABLE_LOG")]
        public static void Log(object message)
        {
            UnityEngine.Debug.Log(message);
        }
    }

    ํ•ด๋‹น ์†์„ฑ์„ ์‚ฌ์šฉํ•  ๋•Œ ์ฃผ์˜์‚ฌํ•ญ

    • ๋ฉ”์„œ๋“œ๋Š” ๋ฐ˜๋“œ์‹œ static์ด์–ด์•ผ ํ•จ
    • ๋ฐ˜ํ™˜ํ˜•์ด void์—ฌ์•ผ ํ•จ

    โš™๏ธ Step 2. ์ „์ฒด Debug ๋ฉ”์„œ๋“œ ๋ž˜ํ•‘ํ•˜๊ธฐ

    ๊ธฐ์กด Debug ํด๋ž˜์Šค์—์„œ ์‚ฌ์šฉ๋˜๋˜ ๋ฉ”์„œ๋“œ๋ฅผ Custom Logger์—์„œ ๋งคํ•‘ํ•ด์ค„ ํ•„์š”๊ฐ€ ์žˆ๋‹ค.

    1. ๊ธฐ๋ณธ ๋กœ๊น… ๋ฉ”์„œ๋“œ: Log, LogWarning, LogError
    2. ํฌ๋งท ๋กœ๊น… ๋ฉ”์„œ๋“œ: LogFormat, LogWarningFormat, LogErrorFormat
    3. ์˜ˆ์™ธ/์–ด์„ค์…˜ ๋ฉ”์„œ๋“œ: LogException, LogAssertion, Assert
    4. ์‹œ๊ฐ์  ๋””๋ฒ„๊น… ๋ฉ”์„œ๋“œ: DrawLine, DrawRay
    5. ์œ ํ‹ธ๋ฆฌํ‹ฐ ๋ฉ”์„œ๋“œ: Break, ClearDeveloperConsole

    ์šฐ๋ฆฌ๋Š” ๊ธฐ๋ณธ์„ Unity Debug API์™€ ๋™์ผํ•œ ์ธํ„ฐํŽ˜์ด์Šค๋กœ ์žก๊ณ , ๋ชจ๋“  ๋ฉ”์„œ๋“œ๋ฅผ ๋ž˜ํ•‘ํ•  ๊ฒƒ์ด๋‹ค.

    โœ… ์™œ ๋ชจ๋“  ๋ฉ”์„œ๋“œ๋ฅผ ๋ž˜ํ•‘ํ•ด์•ผ ํ• ๊นŒ?

    1. ์ผ๊ด€์„ฑ ๋ณด์žฅ: ํ”„๋กœ์ ํŠธ ์ „์ฒด์—์„œ ๋™์ผํ•œ ๋กœ๊น… ์‹œ์Šคํ…œ ์‚ฌ์šฉ
    2. ์‰ฌ์šด ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜: ๊ธฐ์กด Debug.Log ์ฝ”๋“œ๋ฅผ ์‰ฝ๊ฒŒ ๊ต์ฒด ๊ฐ€๋Šฅ
    3. ํ™•์žฅ์„ฑ: ๋‚˜์ค‘์— ํŒŒ์ผ ๋กœ๊น…์ด๋‚˜ ์›๊ฒฉ ๋กœ๊น… ๊ธฐ๋Šฅ ์ถ”๊ฐ€ ์‹œ ์œ ๋ฆฌ

    ์œ ๋‹ˆํ‹ฐ Debug Methods๋Š” ๊ณต์‹๋ฌธ์„œ์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

    [Debug - Unity ์Šคํฌ๋ฆฝํŒ… API

    Class containing methods to ease debugging while developing a game.

    docs.unity3d.com](https://docs.unity3d.com/kr/2021.3/ScriptReference/Debug.html)

    ์ ์šฉ๋ฐฉ๋ฒ•

    [Conditional("ENABLE_LOG")]
    public static void LogWarning(object message, Object context)
    {
        UnityEngine.Debug.LogWarning(message, context);
    }
    
    [Conditional("ENABLE_LOG")]
    public static void DrawLine(Vector3 start, Vector3 end, Color color = default(Color), float duration = 0.0f, bool depthTest = true)
    {
        UnityEngine.Debug.DrawLine(start, end, color == default(Color) ? Color.white : color, duration, depthTest);
    }

    ๐Ÿ“„ Step 3. ํ”„๋กœ์ ํŠธ์— ์ ์šฉ ๋ฐ ์‹ฌ๋ณผ ์ •์˜ํ•˜๊ธฐ

    ํ”„๋กœ์ ํŠธ ์„ค์ • ๋ฐฉ๋ฒ•

    1. ์Šคํฌ๋ฆฝํŠธ ์ถ”๊ฐ€: CustomLogger.cs ํŒŒ์ผ์„ ํ”„๋กœ์ ํŠธ์— ์ถ”๊ฐ€
    2. ์‹ฌ๋ณผ ์ •์˜: Player Settings โ†’ Other Settings โ†’ Scripting Define Symbols์— ENABLE_LOG ์ถ”๊ฐ€ (๊ฐœ๋ฐœ์šฉ)
    3. ๊ธฐ์กด ์ฝ”๋“œ ๊ต์ฒด: Debug.Log โ†’ CustomLogger.Log๋กœ ๋ณ€๊ฒฝ

    Scripting Define Symbols์— ENABLE_LOG ์ถ”๊ฐ€

    ๋ฆด๋ฆฌ์ฆˆ ๋นŒ๋“œ ์„ค์ •

    • ๋ฆด๋ฆฌ์ฆˆ์šฉ ๋นŒ๋“œ ์„ค์ •์—์„œ๋Š” ENABLE_LOG ์‹ฌ๋ณผ์„ ์ œ๊ฑฐ
    • ๋ชจ๋“  CustomLogger ํ˜ธ์ถœ์ด ์ปดํŒŒ์ผ ์‹œ์ ์— ์™„์ „ํžˆ ์ œ๊ฑฐ๋จ

    Unity 6 ๋ถ€ํ„ฐ๋Š” ๋นŒ๋“œ ์ฐฝ์—์„œ ๋นŒ๋“œ ํ”„๋กœํ•„์„ ์—ฌ๋Ÿฌ๊ฐœ๋กœ ๊ตฌ์„ฑํ•˜๋Š” ๊ฒƒ์„ ์ง€์›ํ•œ๋‹ค.
    ํ…Œ์ŠคํŠธ ๋นŒ๋“œ ํ”„๋กœํ•„ / ๋ฆด๋ฆฌ์ฆˆ ๋นŒ๋“œ ํ”„๋กœํ•„์„ ๊ตฌ๋ถ„ํ•˜์—ฌ ์‚ฌ์šฉํ•˜๋ฉด ํŽธ๋ฆฌํ•˜๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

    ๋ฆด๋ฆฌ์ฆˆ ๋นŒ๋“œ ์„ค์ •

    ์ด์ œ ํ…Œ์ŠคํŠธ๋ฅผ ์ง„ํ–‰ํ•ด๋ณด์ž.
    ์”ฌ์—์„œ ๊ฐ„๋‹จํ•œ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋งŒ๋“ค๊ณ , CustomLogger๋ฅผ ์‚ฌ์šฉํ•ด๋ณด์ž

    using UnityEngine;
    
    public class TestC : MonoBehaviour
    {
        private int playerHealth = 100;
        void Start()
        {
            // ๊ธฐ์กด ์ฝ”๋“œ
            Debug.Log("[Debug]ํ”Œ๋ ˆ์ด์–ด HP: " + playerHealth);
    
            // CustomLogger ์‚ฌ์šฉ
            CustomLogger.Log("[CustomLogger]ํ”Œ๋ ˆ์ด์–ด HP: " + playerHealth);
        }
    
      
    }

    ์ฝ˜์†” ์ฐฝ

    ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ž˜ ์ ์šฉ๋œ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค!

    โš ๏ธ์ฃผ์˜์‚ฌํ•ญ

    ----Logger ํด๋ž˜์Šค๋กœ ์ •์˜ํ•˜๊ณ , ๋ฉ”์†Œ๋“œ๋Š” Log๋กœ ์‹œ์ž‘ํ•ด์•ผ ์ฝ˜์†” ์ฐฝ์—์„œ ์ฝ”๋“œ๋กœ ๋ฐ”๋กœ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•˜๋‹ค. 

    Logging ๊ณผ ๊ฐ™์ด ์ •์˜ํ•˜๋ฉด ์ฝ˜์†”์—์„œ ๋”๋ธ” ํด๋ฆญ ์‹œ Logging ํด๋ž˜์Šค๋กœ ๋„˜์–ด๊ฐ€๋Š” ์ƒํ™ฉ์ด ๋ฐœ์ƒํ•œ๋‹ค. 

    **๊ณต์‹ ๋‚ด์šฉ์€ ์•„๋‹ˆ์ง€๋งŒ, Logging ํด๋ž˜์Šค๋กœ ํ…Œ์ŠคํŠธ ํ•ด๋ดค์„ ๋•Œ ํ•ด๋‹น ํ˜„์ƒ์ด ๋ฐœ์ƒํ•˜์˜€๋‹ค. 

    https://www.reddit.com/r/Unity3D/comments/17eikh0/i_found_a_way_to_go_to_the_right_line_in_your/

     

    From the Unity3D community on Reddit: I found a way to go to the "right line in your code" when double-clicking a custom log mes

    Explore this post and more from the Unity3D community

    www.reddit.com

     

    โœ… ๊ฒฐ๊ณผ ์š”์•ฝ

    • ๊ฐœ๋ฐœ ํ™˜๊ฒฝ: ENABLE_LOG ์‹ฌ๋ณผ ์ •์˜ ์‹œ ๋ชจ๋“  ๋กœ๊ทธ๊ฐ€ ์ •์ƒ ์ถœ๋ ฅ
    • ๋ฆด๋ฆฌ์ฆˆ ๋นŒ๋“œ: ์‹ฌ๋ณผ ๋ฏธ์ •์˜ ์‹œ ๋กœ๊ทธ ์ฝ”๋“œ๊ฐ€ ์™„์ „ํžˆ ์ œ๊ฑฐ๋˜์–ด ์„ฑ๋Šฅ ํ–ฅ์ƒ
    • ์ฝ”๋“œ ์ผ๊ด€์„ฑ: ๊ธฐ์กด Debug API์™€ ๋™์ผํ•œ ์ธํ„ฐํŽ˜์ด์Šค๋กœ ์‰ฌ์šด ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ๊ฐ€๋Šฅ

    ๐Ÿ“Œ ๋งˆ๋ฌด๋ฆฌ

    ์—ฌ๊ธฐ๊นŒ์ง€ ์กฐ๊ฑด๋ถ€ ์ปดํŒŒ์ผ์„ ํ™œ์šฉํ•œ CustomLogger ํด๋ž˜์Šค ๊ตฌํ˜„ ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด์•˜๋‹ค.
    ์ด ๊ณผ์ •์„ ํ†ตํ•ด, ๊ฐœ๋ฐœ ์‹œ์—๋Š” ํ’๋ถ€ํ•œ ๋กœ๊ทธ ์ •๋ณด๋ฅผ ํ™•์ธํ•˜๋ฉด์„œ๋„, ๋ฆด๋ฆฌ์ฆˆ ๋นŒ๋“œ์—์„œ๋Š” ์„ฑ๋Šฅ ์ €ํ•˜ ์—†์ด ๊น”๋”ํ•œ ์ฝ”๋“œ๋ฅผ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜์—ˆ๊ณ , Unity ํ”„๋กœ์ ํŠธ ์ตœ์ ํ™”๋ฅผ ์œ„ํ•œ ๊ธฐ๋ฐ˜์„ ๋‹ค์กŒ๋‹ค๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

    ๐ŸŒฑ ์ถ”๊ฐ€์ ์œผ๋กœ ํ•ด๋ณผ๋งŒํ•œ ํ™•์žฅ

    • CustomLogger๋ฅผ ํ™•์žฅํ•˜์—ฌ ํŒŒ์ผ ๋กœ๊น… ๊ธฐ๋Šฅ ์ถ”๊ฐ€ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ๋””๋ฒ„๊น… ๊ณ ๋„ํ™”
    • ์›๊ฒฉ ๋กœ๊น… ์‹œ์Šคํ…œ ๊ตฌํ˜„์œผ๋กœ ์‹ค์ œ ์‚ฌ์šฉ์ž ํ™˜๊ฒฝ์—์„œ์˜ ๋กœ๊ทธ ์ˆ˜์ง‘
    • ๋กœ๊ทธ ๋ ˆ๋ฒจ๋ณ„ ํ•„ํ„ฐ๋ง ์‹œ์Šคํ…œ์œผ๋กœ ๋” ์„ธ๋ฐ€ํ•œ ๋กœ๊ทธ ๊ด€๋ฆฌ
    • ๋กœ๊ทธ ์ถœ๋ ฅ ํฌ๋งท ์ปค์Šคํ„ฐ๋งˆ์ด์ง•์œผ๋กœ ๊ฐ€๋…์„ฑ ํ–ฅ์ƒ

    ์ด ๊ธ€์ด, Unity ์„ฑ๋Šฅ ์ตœ์ ํ™”๋กœ ๊ณ ํ†ต๋ฐ›๋˜ ๊ฐœ๋ฐœ์ž๋“ค์—๊ฒŒ ๋„์›€์ด ๋˜๊ธธ ๋ฐ”๋ผ๋ฉด์„œ,

    ๐Ÿ˜˜ ์ฆ์ฝ”(์ฆ๊ฑฐ์šด ์ฝ”๋”ฉ ๋˜์„ธ์š”)!

    ๐Ÿ“„ CustomLogger.cs ์ „์ฒด ์†Œ์Šค์ฝ”๋“œ ๋ณด๊ธฐ
    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    using System.Diagnostics;
    
    public static class CustomLogger
    {
        [Conditional("ENABLE_LOG")]
        public static void Log(object message)
        {
            UnityEngine.Debug.Log(message);
        }
    
        [Conditional("ENABLE_LOG")]
        public static void Log(object message, Object context)
        {
            UnityEngine.Debug.Log(message, context);
        }
    
        [Conditional("ENABLE_LOG")]
        public static void LogFormat(string format, params object[] args)
        {
            UnityEngine.Debug.LogFormat(format, args);
        }
    
        [Conditional("ENABLE_LOG")]
        public static void LogFormat(Object context, string format, params object[] args)
        {
            UnityEngine.Debug.LogFormat(context, format, args);
        }
    
        [Conditional("ENABLE_LOG")]
        public static void LogWarning(object message)
        {
            UnityEngine.Debug.LogWarning(message);
        }
    
        [Conditional("ENABLE_LOG")]
        public static void LogWarning(object message, Object context)
        {
            UnityEngine.Debug.LogWarning(message, context);
        }
    
        [Conditional("ENABLE_LOG")]
        public static void LogWarningFormat(string format, params object[] args)
        {
            UnityEngine.Debug.LogWarningFormat(format, args);
        }
    
        [Conditional("ENABLE_LOG")]
        public static void LogWarningFormat(Object context, string format, params object[] args)
        {
            UnityEngine.Debug.LogWarningFormat(context, format, args);
        }
    
        [Conditional("ENABLE_LOG")]
        public static void LogError(object message)
        {
            UnityEngine.Debug.LogError(message);
        }
    
        [Conditional("ENABLE_LOG")]
        public static void LogError(object message, Object context)
        {
            UnityEngine.Debug.LogError(message, context);
        }
    
        [Conditional("ENABLE_LOG")]
        public static void LogErrorFormat(string format, params object[] args)
        {
            UnityEngine.Debug.LogErrorFormat(format, args);
        }
    
        [Conditional("ENABLE_LOG")]
        public static void LogErrorFormat(Object context, string format, params object[] args)
        {
            UnityEngine.Debug.LogErrorFormat(context, format, args);
        }
    
        [Conditional("ENABLE_LOG")]
        public static void LogException(System.Exception exception)
        {
            UnityEngine.Debug.LogException(exception);
        }
    
        [Conditional("ENABLE_LOG")]
        public static void LogException(System.Exception exception, Object context)
        {
            UnityEngine.Debug.LogException(exception, context);
        }
    
        [Conditional("ENABLE_LOG")]
        public static void LogAssertion(object message)
        {
            UnityEngine.Debug.LogAssertion(message);
        }
    
        [Conditional("ENABLE_LOG")]
        public static void LogAssertion(object message, Object context)
        {
            UnityEngine.Debug.LogAssertion(message, context);
        }
    
        [Conditional("ENABLE_LOG")]
        public static void LogAssertionFormat(string format, params object[] args)
        {
            UnityEngine.Debug.LogAssertionFormat(format, args);
        }
    
        [Conditional("ENABLE_LOG")]
        public static void LogAssertionFormat(Object context, string format, params object[] args)
        {
            UnityEngine.Debug.LogAssertionFormat(context, format, args);
        }
    
        [Conditional("ENABLE_LOG")]
        public static void Assert(bool condition)
        {
            UnityEngine.Debug.Assert(condition);
        }
    
        [Conditional("ENABLE_LOG")]
        public static void Assert(bool condition, object message)
        {
            UnityEngine.Debug.Assert(condition, message);
        }
    
        [Conditional("ENABLE_LOG")]
        public static void Assert(bool condition, object message, Object context)
        {
            UnityEngine.Debug.Assert(condition, message, context);
        }
    
        [Conditional("ENABLE_LOG")]
        public static void AssertFormat(bool condition, string format, params object[] args)
        {
            UnityEngine.Debug.AssertFormat(condition, format, args);
        }
    
        [Conditional("ENABLE_LOG")]
        public static void AssertFormat(bool condition, Object context, string format, params object[] args)
        {
            UnityEngine.Debug.AssertFormat(condition, context, format, args);
        }
    
        [Conditional("ENABLE_LOG")]
        public static void DrawLine(Vector3 start, Vector3 end, Color color = default(Color), float duration = 0.0f, bool depthTest = true)
        {
            UnityEngine.Debug.DrawLine(start, end, color == default(Color) ? Color.white : color, duration, depthTest);
        }
    
        [Conditional("ENABLE_LOG")]
        public static void DrawRay(Vector3 start, Vector3 dir, Color color = default(Color), float duration = 0.0f, bool depthTest = true)
        {
            UnityEngine.Debug.DrawRay(start, dir, color == default(Color) ? Color.white : color, duration, depthTest);
        }
    
        [Conditional("ENABLE_LOG")]
        public static void Break()
        {
            UnityEngine.Debug.Break();
        }
    
        [Conditional("ENABLE_LOG")]
        public static void ClearDeveloperConsole()
        {
            UnityEngine.Debug.ClearDeveloperConsole();
        }
    }
Designed by Tistory.