File: outer-product.comp

package info (click to toggle)
retroarch 1.20.0%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 75,756 kB
  • sloc: ansic: 1,207,646; cpp: 104,166; objc: 8,567; asm: 6,624; python: 3,776; makefile: 2,838; sh: 2,786; xml: 1,408; perl: 393; javascript: 10
file content (37 lines) | stat: -rw-r--r-- 596 bytes parent folder | download | duplicates (81)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#version 450
layout(local_size_x = 1) in;

layout(set = 0, binding = 0, std430) writeonly buffer SSBO
{
	mat2 m22;
	mat2x3 m23;
	mat2x4 m24;
	mat3x2 m32;
	mat3 m33;
	mat3x4 m34;
	mat4x2 m42;
	mat4x3 m43;
	mat4 m44;
};

layout(set = 0, binding = 1, std430) readonly buffer ReadSSBO
{
	vec2 v2;
	vec3 v3;
	vec4 v4;
};

void main()
{
	m22 = outerProduct(v2, v2);
	m23 = outerProduct(v3, v2);
	m24 = outerProduct(v4, v2);

	m32 = outerProduct(v2, v3);
	m33 = outerProduct(v3, v3);
	m34 = outerProduct(v4, v3);

	m42 = outerProduct(v2, v4);
	m43 = outerProduct(v3, v4);
	m44 = outerProduct(v4, v4);
}