	.file	"102024.c"
	.intel_syntax noprefix
	.text
	.globl	datatoc_gpu_shader_2D_line_dashed_geom_glsl_size
	.data
	.align 4
	.type	datatoc_gpu_shader_2D_line_dashed_geom_glsl_size, @object
	.size	datatoc_gpu_shader_2D_line_dashed_geom_glsl_size, 4
datatoc_gpu_shader_2D_line_dashed_geom_glsl_size:
	.long	1659
	.globl	datatoc_gpu_shader_2D_line_dashed_geom_glsl
	.align 32
	.type	datatoc_gpu_shader_2D_line_dashed_geom_glsl, @object
	.size	datatoc_gpu_shader_2D_line_dashed_geom_glsl, 1660
datatoc_gpu_shader_2D_line_dashed_geom_glsl:
	.ascii	"\r\n/*\r\n * Geometry Shader for dashed lines, with uniform "
	.ascii	"multi-color(s), or any single-color, and unary thickness.\r\n"
	.ascii	" *\r\n * Dashed is performed in screen space.\r\n */\r\n\r\n"
	.ascii	"\r\n/* Make to be used with dynamic batching so no Model Mat"
	.ascii	"rix needed */\r\nuniform mat4 ModelViewProjectionMatrix;\r\n"
	.ascii	"uniform vec2 viewport_size;\r\n\r\n/* Uniforms from fragment"
	.ascii	" shader, used here to optimize out useless computation in ca"
	.ascii	"se of solid line. */\r\nuniform float dash_factor;  /* if > "
	.ascii	"1.0, solid line. */\r\nuniform int colors_len;  /* Enabled i"
	.ascii	"f > 0, 1 for solid line. */\r\n\r\nlayout(lines) in;\r\n\r\n"
	.ascii	"in vec4 color_vert[];\r\n\r\nlayout(line_strip, max_vertices"
	.ascii	" = 2) out;\r\nnoperspective out float distance_along_line;\r"
	.ascii	"\nnoperspective out vec4 color_geom;\r\n\r\nvoid main()\r\n{"
	.ascii	"\r\n\tvec4 v1 = gl_in[0].gl_Position;\r\n\tvec4 v2 = gl_in[1"
	.ascii	"].gl_Position;\r\n\r\n\tgl_Position = v1;\r\n\tcolor_geom = "
	.ascii	"color_vert[0];\r\n\tdistance_along_line = 0.0f;\r\n\tEmitVer"
	.ascii	"tex();\r\n\r\n\tgl_Position = v2;\r\n\tcolor_geom = color_ve"
	.ascii	"rt[1];\r\n\tif ((colors_len == 1) || (dash_factor >= 1.0f)) "
	.ascii	"{\r\n\t\t/* Solid line, optimize out distance computation! *"
	.ascii	"/\r\n\t\tdistance_along_line = 0.0f;\r\n\t}\r\n\telse {\r\n\t"
	.ascii	"\tvec2 p1 = (v1.xy / v1.w) * 0.5 + 0.5;  // <- device coordi"
	.ascii	"nates in [0..1] range.\r\n\t\tp1 = p1 * viewport_size;  // <"
	.ascii	"- 'virtual' screen coordinates.\r\n\r\n\t\tvec2 p2 = (v2.xy "
	.ascii	"/ v2.w) * 0.5 + 0.5;  // <- device coordinates in [0..1] ran"
	.ascii	"ge.\r\n\t\tp2 = p2 * viewport_size;  // <- 'virtual' screen "
	.ascii	"coordinates.\r\n"
	.string	"\r\n\t\tdistance_along_line = distance(p1, p2);\r\n\t}\r\n\tEmitVertex();\r\n\r\n\tEndPrimitive();\r\n\r\n\t/* Note: we could also use similar approach as diag_stripes_frag, but this would give us dashed 'anchored'\r\n\t * to the screen, and not to one end of the line... */\r\n}\r\n"
	.ident	"GCC: (Ubuntu 10.5.0-1ubuntu1~20.04) 10.5.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	 1f - 0f
	.long	 4f - 1f
	.long	 5
0:
	.string	 "GNU"
1:
	.align 8
	.long	 0xc0000002
	.long	 3f - 2f
2:
	.long	 0x3
3:
	.align 8
4:

	.arch armv5t
	.eabi_attribute 20, 1
	.eabi_attribute 21, 1
	.eabi_attribute 23, 3
	.eabi_attribute 24, 1
	.eabi_attribute 25, 1
	.eabi_attribute 26, 2
	.eabi_attribute 30, 6
	.eabi_attribute 34, 0
	.eabi_attribute 18, 4
	.file	"102024.c"
	.text
	.global	datatoc_gpu_shader_2D_line_dashed_geom_glsl_size
	.data
	.align	2
	.type	datatoc_gpu_shader_2D_line_dashed_geom_glsl_size, %object
	.size	datatoc_gpu_shader_2D_line_dashed_geom_glsl_size, 4
datatoc_gpu_shader_2D_line_dashed_geom_glsl_size:
	.word	1659
	.global	datatoc_gpu_shader_2D_line_dashed_geom_glsl
	.align	2
	.type	datatoc_gpu_shader_2D_line_dashed_geom_glsl, %object
	.size	datatoc_gpu_shader_2D_line_dashed_geom_glsl, 1660
datatoc_gpu_shader_2D_line_dashed_geom_glsl:
	.ascii	"\015\012/*\015\012 * Geometry Shader for dashed lin"
	.ascii	"es, with uniform multi-color(s), or any single-colo"
	.ascii	"r, and unary thickness.\015\012 *\015\012 * Dashed "
	.ascii	"is performed in screen space.\015\012 */\015\012\015"
	.ascii	"\012\015\012/* Make to be used with dynamic batchin"
	.ascii	"g so no Model Matrix needed */\015\012uniform mat4 "
	.ascii	"ModelViewProjectionMatrix;\015\012uniform vec2 view"
	.ascii	"port_size;\015\012\015\012/* Uniforms from fragment"
	.ascii	" shader, used here to optimize out useless computat"
	.ascii	"ion in case of solid line. */\015\012uniform float "
	.ascii	"dash_factor;  /* if > 1.0, solid line. */\015\012un"
	.ascii	"iform int colors_len;  /* Enabled if > 0, 1 for sol"
	.ascii	"id line. */\015\012\015\012layout(lines) in;\015\012"
	.ascii	"\015\012in vec4 color_vert[];\015\012\015\012layout"
	.ascii	"(line_strip, max_vertices = 2) out;\015\012noperspe"
	.ascii	"ctive out float distance_along_line;\015\012nopersp"
	.ascii	"ective out vec4 color_geom;\015\012\015\012void mai"
	.ascii	"n()\015\012{\015\012\011vec4 v1 = gl_in[0].gl_Posit"
	.ascii	"ion;\015\012\011vec4 v2 = gl_in[1].gl_Position;\015"
	.ascii	"\012\015\012\011gl_Position = v1;\015\012\011color_"
	.ascii	"geom = color_vert[0];\015\012\011distance_along_lin"
	.ascii	"e = 0.0f;\015\012\011EmitVertex();\015\012\015\012\011"
	.ascii	"gl_Position = v2;\015\012\011color_geom = color_ver"
	.ascii	"t[1];\015\012\011if ((colors_len == 1) || (dash_fac"
	.ascii	"tor >= 1.0f)) {\015\012\011\011/* Solid line, optim"
	.ascii	"ize out distance computation! */\015\012\011\011dis"
	.ascii	"tance_along_line = 0.0f;\015\012\011}\015\012\011el"
	.ascii	"se {\015\012\011\011vec2 p1 = (v1.xy / v1.w) * 0.5 "
	.ascii	"+ 0.5;  // <- device coordinates in [0..1] range.\015"
	.ascii	"\012\011\011p1 = p1 * viewport_size;  // <- 'virtua"
	.ascii	"l' screen coordinates.\015\012\015\012\011\011vec2 "
	.ascii	"p2 = (v2.xy / v2.w) * 0.5 + 0.5;  // <- device coor"
	.ascii	"dinates in [0..1] range.\015\012\011\011p2 = p2 * v"
	.ascii	"iewport_size;  // <- 'virtual' screen coordinates.\015"
	.ascii	"\012\015\012\011\011distance_along_line = distance("
	.ascii	"p1, p2);\015\012\011}\015\012\011EmitVertex();\015\012"
	.ascii	"\015\012\011EndPrimitive();\015\012\015\012\011/* N"
	.ascii	"ote: we could also use similar approach as diag_str"
	.ascii	"ipes_frag, but this would give us dashed 'anchored'"
	.ascii	"\015\012\011 * to the screen, and not to one end of"
	.ascii	" the line... */\015\012}\015\012\000"
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
