 4d41da3b81
			
		
	
	
		4d41da3b81
		
			
		
	
	
	
	
		
			
			* Add ray query capability if acceleration structure used Fixes #2430 in non-ray tracing stages and the extension is enabled * Add ray query capability if ray query declared * Fix printing of TypeRayQueryKHR It's no longer spelled with "Provisional"
		
			
				
	
	
		
			174 lines
		
	
	
		
			8.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			174 lines
		
	
	
		
			8.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| rayQuery-no-cse.rgen
 | |
| // Module Version 10000
 | |
| // Generated by (magic number): 8000a
 | |
| // Id's are bound by 107
 | |
| 
 | |
|                               Capability RayQueryKHR
 | |
|                               Capability RayTracingNV
 | |
|                               Extension  "SPV_KHR_ray_query"
 | |
|                               Extension  "SPV_NV_ray_tracing"
 | |
|                1:             ExtInstImport  "GLSL.std.450"
 | |
|                               MemoryModel Logical GLSL450
 | |
|                               EntryPoint RayGenerationKHR 4  "main" 23 28
 | |
|                               Source GLSL 460
 | |
|                               SourceExtension  "GL_EXT_ray_query"
 | |
|                               SourceExtension  "GL_NV_ray_tracing"
 | |
|                               Name 4  "main"
 | |
|                               Name 8  "launchIndex("
 | |
|                               Name 14  "Ray"
 | |
|                               MemberName 14(Ray) 0  "pos"
 | |
|                               MemberName 14(Ray) 1  "tmin"
 | |
|                               MemberName 14(Ray) 2  "dir"
 | |
|                               MemberName 14(Ray) 3  "tmax"
 | |
|                               Name 19  "doInitialize(rq1;struct-Ray-vf3-f1-vf3-f11;"
 | |
|                               Name 17  "rayQuery"
 | |
|                               Name 18  "ray"
 | |
|                               Name 23  "gl_LaunchIDNV"
 | |
|                               Name 28  "gl_LaunchSizeNV"
 | |
|                               Name 50  "rtas"
 | |
|                               Name 69  "index"
 | |
|                               Name 71  "ray"
 | |
|                               Name 72  "Ray"
 | |
|                               MemberName 72(Ray) 0  "pos"
 | |
|                               MemberName 72(Ray) 1  "tmin"
 | |
|                               MemberName 72(Ray) 2  "dir"
 | |
|                               MemberName 72(Ray) 3  "tmax"
 | |
|                               Name 74  "Rays"
 | |
|                               MemberName 74(Rays) 0  "rays"
 | |
|                               Name 76  ""
 | |
|                               Name 89  "rayQuery1"
 | |
|                               Name 90  "param"
 | |
|                               Name 103  "rayQuery2"
 | |
|                               Name 104  "param"
 | |
|                               Decorate 23(gl_LaunchIDNV) BuiltIn LaunchIdKHR
 | |
|                               Decorate 28(gl_LaunchSizeNV) BuiltIn LaunchSizeKHR
 | |
|                               Decorate 50(rtas) DescriptorSet 0
 | |
|                               Decorate 50(rtas) Binding 0
 | |
|                               MemberDecorate 72(Ray) 0 Offset 0
 | |
|                               MemberDecorate 72(Ray) 1 Offset 12
 | |
|                               MemberDecorate 72(Ray) 2 Offset 16
 | |
|                               MemberDecorate 72(Ray) 3 Offset 28
 | |
|                               Decorate 73 ArrayStride 32
 | |
|                               MemberDecorate 74(Rays) 0 Offset 0
 | |
|                               Decorate 74(Rays) BufferBlock
 | |
|                               Decorate 76 DescriptorSet 0
 | |
|                               Decorate 76 Binding 2
 | |
|                2:             TypeVoid
 | |
|                3:             TypeFunction 2
 | |
|                6:             TypeInt 32 0
 | |
|                7:             TypeFunction 6(int)
 | |
|               10:             TypeRayQueryKHR
 | |
|               11:             TypePointer Private 10
 | |
|               12:             TypeFloat 32
 | |
|               13:             TypeVector 12(float) 3
 | |
|          14(Ray):             TypeStruct 13(fvec3) 12(float) 13(fvec3) 12(float)
 | |
|               15:             TypePointer Function 14(Ray)
 | |
|               16:             TypeFunction 2 11(ptr) 15(ptr)
 | |
|               21:             TypeVector 6(int) 3
 | |
|               22:             TypePointer Input 21(ivec3)
 | |
| 23(gl_LaunchIDNV):     22(ptr) Variable Input
 | |
|               24:      6(int) Constant 2
 | |
|               25:             TypePointer Input 6(int)
 | |
| 28(gl_LaunchSizeNV):     22(ptr) Variable Input
 | |
|               29:      6(int) Constant 0
 | |
|               33:      6(int) Constant 1
 | |
|               48:             TypeAccelerationStructureKHR
 | |
|               49:             TypePointer UniformConstant 48
 | |
|         50(rtas):     49(ptr) Variable UniformConstant
 | |
|               52:      6(int) Constant 16
 | |
|               53:             TypeInt 32 1
 | |
|               54:     53(int) Constant 0
 | |
|               55:             TypePointer Function 13(fvec3)
 | |
|               58:     53(int) Constant 1
 | |
|               59:             TypePointer Function 12(float)
 | |
|               62:     53(int) Constant 2
 | |
|               65:     53(int) Constant 3
 | |
|               68:             TypePointer Function 6(int)
 | |
|          72(Ray):             TypeStruct 13(fvec3) 12(float) 13(fvec3) 12(float)
 | |
|               73:             TypeRuntimeArray 72(Ray)
 | |
|         74(Rays):             TypeStruct 73
 | |
|               75:             TypePointer Uniform 74(Rays)
 | |
|               76:     75(ptr) Variable Uniform
 | |
|               78:             TypePointer Uniform 72(Ray)
 | |
|    89(rayQuery1):     11(ptr) Variable Private
 | |
|               94:      6(int) Constant 32
 | |
|   103(rayQuery2):     11(ptr) Variable Private
 | |
|          4(main):           2 Function None 3
 | |
|                5:             Label
 | |
|        69(index):     68(ptr) Variable Function
 | |
|          71(ray):     15(ptr) Variable Function
 | |
|        90(param):     15(ptr) Variable Function
 | |
|       104(param):     15(ptr) Variable Function
 | |
|               70:      6(int) FunctionCall 8(launchIndex()
 | |
|                               Store 69(index) 70
 | |
|               77:      6(int) Load 69(index)
 | |
|               79:     78(ptr) AccessChain 76 54 77
 | |
|               80:     72(Ray) Load 79
 | |
|               81:   13(fvec3) CompositeExtract 80 0
 | |
|               82:     55(ptr) AccessChain 71(ray) 54
 | |
|                               Store 82 81
 | |
|               83:   12(float) CompositeExtract 80 1
 | |
|               84:     59(ptr) AccessChain 71(ray) 58
 | |
|                               Store 84 83
 | |
|               85:   13(fvec3) CompositeExtract 80 2
 | |
|               86:     55(ptr) AccessChain 71(ray) 62
 | |
|                               Store 86 85
 | |
|               87:   12(float) CompositeExtract 80 3
 | |
|               88:     59(ptr) AccessChain 71(ray) 65
 | |
|                               Store 88 87
 | |
|               91:     14(Ray) Load 71(ray)
 | |
|                               Store 90(param) 91
 | |
|               92:           2 FunctionCall 19(doInitialize(rq1;struct-Ray-vf3-f1-vf3-f11;) 89(rayQuery1) 90(param)
 | |
|               93:          48 Load 50(rtas)
 | |
|               95:     55(ptr) AccessChain 71(ray) 54
 | |
|               96:   13(fvec3) Load 95
 | |
|               97:     59(ptr) AccessChain 71(ray) 58
 | |
|               98:   12(float) Load 97
 | |
|               99:     55(ptr) AccessChain 71(ray) 62
 | |
|              100:   13(fvec3) Load 99
 | |
|              101:     59(ptr) AccessChain 71(ray) 65
 | |
|              102:   12(float) Load 101
 | |
|                               RayQueryInitializeKHR 89(rayQuery1) 93 33 94 96 98 100 102
 | |
|              105:     14(Ray) Load 71(ray)
 | |
|                               Store 104(param) 105
 | |
|              106:           2 FunctionCall 19(doInitialize(rq1;struct-Ray-vf3-f1-vf3-f11;) 103(rayQuery2) 104(param)
 | |
|                               Return
 | |
|                               FunctionEnd
 | |
|  8(launchIndex():      6(int) Function None 7
 | |
|                9:             Label
 | |
|               26:     25(ptr) AccessChain 23(gl_LaunchIDNV) 24
 | |
|               27:      6(int) Load 26
 | |
|               30:     25(ptr) AccessChain 28(gl_LaunchSizeNV) 29
 | |
|               31:      6(int) Load 30
 | |
|               32:      6(int) IMul 27 31
 | |
|               34:     25(ptr) AccessChain 28(gl_LaunchSizeNV) 33
 | |
|               35:      6(int) Load 34
 | |
|               36:      6(int) IMul 32 35
 | |
|               37:     25(ptr) AccessChain 23(gl_LaunchIDNV) 33
 | |
|               38:      6(int) Load 37
 | |
|               39:     25(ptr) AccessChain 28(gl_LaunchSizeNV) 29
 | |
|               40:      6(int) Load 39
 | |
|               41:      6(int) IMul 38 40
 | |
|               42:      6(int) IAdd 36 41
 | |
|               43:     25(ptr) AccessChain 23(gl_LaunchIDNV) 29
 | |
|               44:      6(int) Load 43
 | |
|               45:      6(int) IAdd 42 44
 | |
|                               ReturnValue 45
 | |
|                               FunctionEnd
 | |
| 19(doInitialize(rq1;struct-Ray-vf3-f1-vf3-f11;):           2 Function None 16
 | |
|     17(rayQuery):     11(ptr) FunctionParameter
 | |
|          18(ray):     15(ptr) FunctionParameter
 | |
|               20:             Label
 | |
|               51:          48 Load 50(rtas)
 | |
|               56:     55(ptr) AccessChain 18(ray) 54
 | |
|               57:   13(fvec3) Load 56
 | |
|               60:     59(ptr) AccessChain 18(ray) 58
 | |
|               61:   12(float) Load 60
 | |
|               63:     55(ptr) AccessChain 18(ray) 62
 | |
|               64:   13(fvec3) Load 63
 | |
|               66:     59(ptr) AccessChain 18(ray) 65
 | |
|               67:   12(float) Load 66
 | |
|                               RayQueryInitializeKHR 17(rayQuery) 51 29 52 57 61 64 67
 | |
|                               Return
 | |
|                               FunctionEnd
 |