Changeset View
Changeset View
Standalone View
Standalone View
source/blender/draw/intern/shaders/common_debug_print_lib.glsl
| Show First 20 Lines • Show All 65 Lines • ▼ Show 20 Lines | void drw_print_char4(uint data) | ||||
| /* Convert into char stream. */ | /* Convert into char stream. */ | ||||
| for (; data != 0u; data >>= 8u) { | for (; data != 0u; data >>= 8u) { | ||||
| uint char1 = data & 0xFFu; | uint char1 = data & 0xFFu; | ||||
| /* Check for null terminator. */ | /* Check for null terminator. */ | ||||
| if (char1 == 0x00) { | if (char1 == 0x00) { | ||||
| break; | break; | ||||
| } | } | ||||
| uint cursor = atomicAdd(drw_debug_print_cursor, 1u); | uint cursor = atomicAdd(drw_debug_print_cursor, 1u); | ||||
| /* NOTE: Skip the header manually. */ | cursor += drw_debug_print_offset; | ||||
| cursor += 4; | |||||
| if (cursor < DRW_DEBUG_PRINT_MAX) { | if (cursor < DRW_DEBUG_PRINT_MAX) { | ||||
| /* For future usage. (i.e: Color) */ | /* For future usage. (i.e: Color) */ | ||||
| uint flags = 0u; | uint flags = 0u; | ||||
| uint col = drw_print_col++; | uint col = drw_print_col++; | ||||
| uint drw_print_header = (flags << 24u) | (drw_print_row << 16u) | (col << 8u); | uint drw_print_header = (flags << 24u) | (drw_print_row << 16u) | (col << 8u); | ||||
| drw_debug_print_buf[cursor] = drw_print_header | char1; | drw_debug_print_buf[cursor] = drw_print_header | char1; | ||||
| /* Break word. */ | /* Break word. */ | ||||
| if (drw_print_col > DRW_DEBUG_PRINT_WORD_WRAP_COLUMN) { | if (drw_print_col > DRW_DEBUG_PRINT_WORD_WRAP_COLUMN) { | ||||
| ▲ Show 20 Lines • Show All 306 Lines • Show Last 20 Lines | |||||