John Kessenich | 054378d | 2017-06-19 15:13:26 -0600 | [diff] [blame] | 1 | cbuffer buf1 { |
John Kessenich | 3d157c5 | 2016-07-25 16:05:33 -0600 | [diff] [blame] | 2 | float4 v1; |
John Kessenich | 2fcdd64 | 2017-06-19 15:41:11 -0600 | [diff] [blame^] | 3 | }; // extraneous ; |
John Kessenich | 3d157c5 | 2016-07-25 16:05:33 -0600 | [diff] [blame] | 4 | |
John Kessenich | 054378d | 2017-06-19 15:13:26 -0600 | [diff] [blame] | 5 | tbuffer buf2 { |
John Kessenich | 3d157c5 | 2016-07-25 16:05:33 -0600 | [diff] [blame] | 6 | float4 v2; |
John Kessenich | 2fcdd64 | 2017-06-19 15:41:11 -0600 | [diff] [blame^] | 7 | }; // extraneous ; |
John Kessenich | 3d157c5 | 2016-07-25 16:05:33 -0600 | [diff] [blame] | 8 | |
John Kessenich | 054378d | 2017-06-19 15:13:26 -0600 | [diff] [blame] | 9 | cbuffer cbufName { |
| 10 | float4 v3 : packoffset(c0); |
| 11 | int i3 : packoffset(c1.y); |
John Kessenich | 2fcdd64 | 2017-06-19 15:41:11 -0600 | [diff] [blame^] | 12 | } |
John Kessenich | 3d157c5 | 2016-07-25 16:05:33 -0600 | [diff] [blame] | 13 | |
John Kessenich | 054378d | 2017-06-19 15:13:26 -0600 | [diff] [blame] | 14 | tbuffer tbufName : register(t8) { |
John Kessenich | 3d157c5 | 2016-07-25 16:05:33 -0600 | [diff] [blame] | 15 | float4 v4 : packoffset(c1); |
John Kessenich | 82d6baf | 2016-07-29 13:03:05 -0600 | [diff] [blame] | 16 | int i4 : packoffset(c3); |
| 17 | float f1 : packoffset(c3.w); |
| 18 | float f3 : packoffset(c4.x); |
| 19 | float f4 : packoffset(c4.y); |
| 20 | float f5 : packoffset(c4.z); |
| 21 | float f6 : packoffset(c); |
John Kessenich | 054378d | 2017-06-19 15:13:26 -0600 | [diff] [blame] | 22 | float f7 : packoffset(c8); |
| 23 | float3x4 m1 : packoffset(c7); |
| 24 | row_major float3x4 m2 : packoffset(c11); |
| 25 | column_major float3x4 m3 : packoffset(c15); |
| 26 | float3x4 m4 : packoffset(c19); |
John Kessenich | 2fcdd64 | 2017-06-19 15:41:11 -0600 | [diff] [blame^] | 27 | } |
| 28 | |
| 29 | float foo() // float looks like identifier, but can't be part of tbuffer |
| 30 | { |
| 31 | return 1.0; |
| 32 | } |
John Kessenich | 3d157c5 | 2016-07-25 16:05:33 -0600 | [diff] [blame] | 33 | |
John Kessenich | 054378d | 2017-06-19 15:13:26 -0600 | [diff] [blame] | 34 | float4 PixelShaderFunction(float4 input : SV_POSITION) : SV_TARGET0 |
John Kessenich | 3d157c5 | 2016-07-25 16:05:33 -0600 | [diff] [blame] | 35 | { |
John Kessenich | 2fcdd64 | 2017-06-19 15:41:11 -0600 | [diff] [blame^] | 36 | return (input + v1 + v2 + v3 + v4) * foo(); |
John Kessenich | 3d157c5 | 2016-07-25 16:05:33 -0600 | [diff] [blame] | 37 | } |