Advertisement
Guest User

Untitled

a guest
Mar 2nd, 2015
22
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 17.98 KB | None | 0 0
  1.  
  2. /*---------------------------------------.
  3. | .-. . .---.. . |
  4. | ( ) _|_ | \ / |
  5. | `-.. . ._.-. .-. | |--- / |
  6. | ( )\ \ / (.-' (.-' | | / \ |
  7. | `-' `' `' `--' `--'`-'' ' ' |
  8. | by CeeJay.dk |
  9. '---------------------------------------*/
  10. /*---------------------------------------.
  11. | :: Using ReShade by Crosire :: |
  12. '---------------------------------------*/
  13.  
  14. /*-----------------------.
  15. | :: Settings :: |
  16. '-----------------------*/
  17.  
  18. #include "SweetFX/Keycodes.txt" //load keycode aliases for the Reshade key bindings
  19. #include "SweetFX/ReShade_settings.txt" //load ReShade settings
  20. #include "SweetFX/SweetFX_settings.txt" //load SweetFX settings
  21.  
  22. /*-----------------------.
  23. | :: Greeting message :: |
  24. '-----------------------*/
  25.  
  26. #include "SweetFX/Shaders/Greeting.h"
  27.  
  28. #if ReShade_ShowStatistics != 0
  29. #pragma reshade statistics
  30. #endif
  31.  
  32. uniform bool depthtoggle < string source = "key"; int keycode = ReShade_DepthToggleKey; >;
  33.  
  34. /*-----------------------.
  35. | :: Globals :: |
  36. '-----------------------*/
  37.  
  38. #include "SweetFX/Shaders/Globals.h" //define global contants and uniforms
  39.  
  40. /*-----------------------.
  41. | :: Textures :: |
  42. '-----------------------*/
  43.  
  44. /*
  45. Default values if explicitly not set are:
  46. Width = 1;
  47. Height = 1;
  48. Format = R8G8B8A8;
  49. MipLevels = 1;
  50. */
  51.  
  52. texture colorTex : SV_Target; //Game texture
  53. texture depthTex : SV_Depth; //Game depth
  54.  
  55. #if USE_TRANSITION == 1
  56. texture transitionTex < string source = "SweetFX/Textures/" Transition_texture ; >
  57. {
  58. Width = Transition_texture_width;
  59. Height = Transition_texture_height;
  60. };
  61. #endif
  62.  
  63.  
  64. #if (USE_SMAA == 1 || USE_SMAA_ANTIALIASING == 1)
  65. texture edgesTex
  66. {
  67. Width = BUFFER_WIDTH;
  68. Height = BUFFER_HEIGHT;
  69. Format = R8G8B8A8;
  70. };
  71.  
  72. texture blendTex
  73. {
  74. Width = BUFFER_WIDTH;
  75. Height = BUFFER_HEIGHT;
  76. Format = R8G8B8A8;
  77. };
  78.  
  79. texture areaTex < string source = "SweetFX/Textures/SMAA_AreaTex.dds"; >
  80. {
  81. Width = 160;
  82. Height = 560;
  83. Format = R8G8;
  84. };
  85.  
  86. texture searchTex < string source = "SweetFX/Textures/SMAA_SearchTex.dds"; >
  87. {
  88. Width = 64;
  89. Height = 16;
  90. Format = R8;
  91. };
  92. #endif
  93.  
  94. /*-----------------------.
  95. | :: Samplers :: |
  96. '-----------------------*/
  97. /* -- Note that DirectX has a maximum number of 16 possible samplers -- */
  98.  
  99.  
  100. sampler colorGammaSampler
  101. {
  102. Texture = colorTex;
  103. AddressU = Clamp; AddressV = Clamp;
  104. MipFilter = Linear; MinFilter = Linear; MagFilter = Linear; //Why Mipfilter linear - shouldn't point be fine?
  105. SRGBTexture = false;
  106. };
  107.  
  108. sampler colorLinearSampler
  109. {
  110. Texture = colorTex;
  111. AddressU = Clamp; AddressV = Clamp;
  112. MipFilter = Point; MinFilter = Linear; MagFilter = Linear;
  113. SRGBTexture = true;
  114. };
  115.  
  116. #if USE_TRANSITION == 1
  117. sampler transitionSampler
  118. {
  119. Texture = transitionTex;
  120. };
  121. #endif
  122.  
  123. #if (USE_SMAA == 1 || USE_SMAA_ANTIALIASING == 1)
  124.  
  125. sampler edgesSampler
  126. {
  127. Texture = edgesTex;
  128. AddressU = Clamp; AddressV = Clamp;
  129. MipFilter = Linear; MinFilter = Linear; MagFilter = Linear;
  130. SRGBTexture = false;
  131. };
  132.  
  133. sampler blendSampler
  134. {
  135. Texture = blendTex;
  136. AddressU = Clamp; AddressV = Clamp;
  137. MipFilter = Linear; MinFilter = Linear; MagFilter = Linear;
  138. SRGBTexture = false;
  139. };
  140.  
  141. sampler areaSampler
  142. {
  143. Texture = areaTex;
  144. AddressU = Clamp; AddressV = Clamp; AddressW = Clamp;
  145. MipFilter = Linear; MinFilter = Linear; MagFilter = Linear;
  146. SRGBTexture = false;
  147. };
  148.  
  149. sampler searchSampler
  150. {
  151. Texture = searchTex;
  152. AddressU = Clamp; AddressV = Clamp; AddressW = Clamp;
  153. MipFilter = Point; MinFilter = Point; MagFilter = Point;
  154. SRGBTexture = false;
  155. };
  156.  
  157. #endif
  158.  
  159. sampler depthSampler
  160. {
  161. Texture = depthTex;
  162. AddressU = Clamp; AddressV = Clamp;
  163. MipFilter = Linear; MinFilter = Linear; MagFilter = Linear; //Why Mipfilter linear - shouldn't point be fine?
  164. // SRGBTexture = true; // The depth buffer is always linear and cannot be set to gamma.
  165. };
  166.  
  167. #define predicationSampler depthSampler //Use the depth sampler as our predication sampler
  168.  
  169. /*-----------------------.
  170. | :: Effects :: |
  171. '-----------------------*/
  172.  
  173. #define s0 colorGammaSampler
  174. #define s1 colorLinearSampler
  175. #define myTex2D tex2D
  176.  
  177. #include "SweetFX/Shaders/Main.h"
  178.  
  179. /*----------------------.
  180. | :: Vertex Shader :: |
  181. '----------------------*/
  182.  
  183. void FullscreenTriangle(in uint id : SV_VertexID, out float4 position : SV_Position, out float2 texcoord : TEXCOORD0)
  184. {
  185. // Basic Buffer/Layout-less fullscreen triangle vertex shader - used for several of the passes.
  186. texcoord.x = (id == 2) ? 2.0 : 0.0;
  187. texcoord.y = (id == 1) ? 2.0 : 0.0;
  188. position = float4(texcoord * float2(2.0, -2.0) + float2(-1.0, 1.0), 0.0, 1.0);
  189. }
  190.  
  191. /*-----------------------.
  192. | :: ASCII :: |
  193. '-----------------------*/
  194.  
  195. #if (USE_ASCII == 1)
  196. // Ascii
  197. #include "SweetFX\Shaders\Ascii.h"
  198. #include "SweetFX\Shaders\AsciiWrap.h"
  199. #endif
  200.  
  201. /*-----------------------.
  202. | :: Paint :: |
  203. '-----------------------*/
  204.  
  205. #if (USE_PAINT == 1)
  206. // Paint
  207. #include "SweetFX\Shaders\Paint.h"
  208. #endif
  209.  
  210. /*-----------------------.
  211. | :: Cartoon :: |
  212. '-----------------------*/
  213.  
  214. #if (USE_CARTOON == 1)
  215. // Cartoon
  216. #include "SweetFX\Shaders\Cartoon.h"
  217. #include "SweetFX\Shaders\CartoonWrap.h"
  218. #endif
  219.  
  220. /*-----------------------.
  221. | :: LumaSharpen :: |
  222. '-----------------------*/
  223.  
  224. #if (USE_LUMASHARPEN == 1)
  225. // LumaSharpen
  226. #include "SweetFX\Shaders\LumaSharpen.h"
  227. #include "SweetFX\Shaders\LumaSharpenWrap.h"
  228. #endif
  229.  
  230. /*-----------------------.
  231. | :: Cel :: |
  232. '-----------------------*/
  233.  
  234. #if (USE_CEL == 1)
  235. // Cel
  236. #include "SweetFX\Shaders\Cel.h"
  237. #endif
  238.  
  239. /*--------------------.
  240. | :: SMAA :: |
  241. '--------------------*/
  242.  
  243. #if (USE_SMAA == 1 || USE_SMAA_ANTIALIASING == 1)
  244.  
  245. #define SMAA_RT_METRICS float4(pixel, screen_size) //let SMAA know the size of a pixel and the screen
  246.  
  247. #define SMAA_HLSL_3 1
  248. #define SMAA_PIXEL_SIZE pixel
  249. #define SMAA_PRESET_CUSTOM 1
  250.  
  251. #include "SweetFX/Shaders/SMAA.hlsl"
  252.  
  253. ////////////////////////////
  254. // Vertex shader wrappers //
  255. ////////////////////////////
  256.  
  257. void SMAAEdgeDetectionVSWrap( in uint id : SV_VertexID,
  258. out float4 position : SV_Position,
  259. out float2 texcoord : TEXCOORD0,
  260. out float4 offset0 : TEXCOORD1,
  261. out float4 offset1 : TEXCOORD2,
  262. out float4 offset2 : TEXCOORD3 )
  263. {
  264. float4 offset[3];
  265. FullscreenTriangle(id, position, texcoord);
  266. SMAAEdgeDetectionVS(texcoord, offset);
  267.  
  268. // Get around OpenGL not accepting array input/outputs
  269. offset0 = offset[0], offset1 = offset[1], offset2 = offset[2];
  270. }
  271.  
  272. void SMAABlendingWeightCalculationVSWrap( in uint id : SV_VertexID,
  273. out float4 position : SV_Position,
  274. out float2 texcoord : TEXCOORD0,
  275. out float2 pixcoord : TEXCOORD1,
  276. out float4 offset0 : TEXCOORD2,
  277. out float4 offset1 : TEXCOORD3,
  278. out float4 offset2 : TEXCOORD4 )
  279. {
  280. float4 offset[3];
  281. FullscreenTriangle(id, position, texcoord);
  282. SMAABlendingWeightCalculationVS(texcoord, pixcoord, offset);
  283.  
  284. // Get around OpenGL not accepting array input/outputs
  285. offset0 = offset[0], offset1 = offset[1], offset2 = offset[2];
  286. }
  287.  
  288. void SMAANeighborhoodBlendingVSWrap(in uint id : SV_VertexID,
  289. out float4 position : SV_Position,
  290. out float2 texcoord : TEXCOORD0,
  291. out float4 offset : TEXCOORD1)
  292. {
  293. FullscreenTriangle(id, position, texcoord);
  294. SMAANeighborhoodBlendingVS(texcoord, offset);
  295. }
  296.  
  297. ///////////////////////////
  298. // Pixel shader wrappers //
  299. ///////////////////////////
  300.  
  301. float2 SMAALumaEdgeDetectionPSWrap( float4 position : SV_Position,
  302. float2 texcoord : TEXCOORD0,
  303. float4 offset0 : TEXCOORD1,
  304. float4 offset1 : TEXCOORD2,
  305. float4 offset2 : TEXCOORD3) : SV_Target
  306. {
  307.  
  308. float4 offset[3] = { offset0, offset1, offset2 };
  309.  
  310. return SMAALumaEdgeDetectionPS(
  311. texcoord,
  312. offset,
  313. colorGammaSampler
  314.  
  315. #if SMAA_PREDICATION == 1
  316. ,predicationSampler
  317. #endif
  318. );
  319. }
  320.  
  321. float2 SMAAColorEdgeDetectionPSWrap(float4 position : SV_Position,
  322. float2 texcoord : TEXCOORD0,
  323. float4 offset0 : TEXCOORD1,
  324. float4 offset1 : TEXCOORD2,
  325. float4 offset2 : TEXCOORD3) : SV_Target
  326. {
  327. float4 offset[3] = { offset0, offset1, offset2 };
  328. return SMAAColorEdgeDetectionPS(
  329. texcoord,
  330. offset,
  331. colorGammaSampler
  332.  
  333. #if SMAA_PREDICATION == 1
  334. ,predicationSampler
  335. #endif
  336. );
  337. }
  338.  
  339. float2 SMAADepthEdgeDetectionPSWrap(float4 position : SV_Position,
  340. float2 texcoord : TEXCOORD0,
  341. float4 offset0 : TEXCOORD1,
  342. float4 offset1 : TEXCOORD2,
  343. float4 offset2 : TEXCOORD3) : SV_Target
  344. {
  345. float4 offset[3] = { offset0, offset1, offset2 };
  346. return SMAADepthEdgeDetectionPS(texcoord, offset, depthSampler);
  347. }
  348.  
  349. float4 SMAABlendingWeightCalculationPSWrap( float4 position : SV_Position,
  350. float2 texcoord : TEXCOORD0,
  351. float2 pixcoord : TEXCOORD1,
  352. float4 offset0 : TEXCOORD2,
  353. float4 offset1 : TEXCOORD3,
  354. float4 offset2 : TEXCOORD4) : SV_Target
  355. {
  356. float4 offset[3] = { offset0, offset1, offset2 };
  357. return SMAABlendingWeightCalculationPS(texcoord, pixcoord, offset, edgesSampler, areaSampler, searchSampler, 0.0);
  358. }
  359.  
  360. float3 SMAANeighborhoodBlendingPSWrap(float4 position : SV_Position,
  361. float2 texcoord : TEXCOORD0,
  362. float4 offset : TEXCOORD1) : SV_Target
  363. {
  364. #if SMAA_DEBUG_OUTPUT == 1
  365. return tex2D(edgesSampler, texcoord); // Show edgesTex
  366. #elif SMAA_DEBUG_OUTPUT == 2
  367. return tex2D(blendSampler, texcoord); // Show blendTex
  368. #elif SMAA_DEBUG_OUTPUT == 3
  369. return tex2D(areaSampler, texcoord); // Show areaTex
  370. #elif SMAA_DEBUG_OUTPUT == 4
  371. return tex2D(searchSampler, texcoord); // Show searchTex
  372. #elif SMAA_DEBUG_OUTPUT == 5
  373. return float3(1.0, 0.0, 0.0); // Show the stencil in red.
  374. #else
  375. return SMAANeighborhoodBlendingPS(texcoord, offset, colorLinearSampler, blendSampler).rgb;
  376. #endif
  377. }
  378.  
  379. #endif
  380.  
  381. /*--------------------.
  382. | :: FXAA :: |
  383. '--------------------*/
  384.  
  385. #if (USE_FXAA == 1 || USE_FXAA_ANTIALIASING == 1)
  386.  
  387. #define FXAA_PC 1
  388. #define FXAA_HLSL_3 1
  389. #define FXAA_GREEN_AS_LUMA 1 //It's better to calculate luma in the previous pass and pass it, than to use this option.
  390.  
  391. #include "SweetFX/Shaders/Fxaa3_11.h"
  392.  
  393. float4 FXAA(in float4 position : SV_Position, in float2 texcoord : TEXCOORD0) : SV_Target
  394. {
  395. return FxaaPixelShader(texcoord, colorGammaSampler, pixel, float4(0.0f, 0.0f, 0.0f, 0.0f), fxaa_Subpix, fxaa_EdgeThreshold, fxaa_EdgeThresholdMin);
  396. }
  397.  
  398. #endif
  399.  
  400. /*-----------------------.
  401. | :: Bloom :: |
  402. '-----------------------*/
  403.  
  404. #if (USE_BLOOM == 1)
  405. #include "SweetFX\Shaders\Bloom.h"
  406. #include "SweetFX\Shaders\BloomWrap.h"
  407. #endif
  408.  
  409.  
  410. /*-----------------------.
  411. | :: HDR :: |
  412. '-----------------------*/
  413.  
  414. #if (USE_HDR == 1)
  415. #include "SweetFX\Shaders\HDR.h"
  416. #include "SweetFX\Shaders\HDRWrap.h"
  417. #endif
  418.  
  419.  
  420. /*---------------------------.
  421. | :: Chromatic Aberration :: |
  422. '---------------------------*/
  423.  
  424. #if (USE_CA == 1)
  425. #include "SweetFX\Shaders\ChromaticAberration.h"
  426. #include "SweetFX\Shaders\ChromaticAberrationWrap.h"
  427. #endif
  428.  
  429. /*-----------------------.
  430. | :: Explosion :: |
  431. '-----------------------*/
  432.  
  433. #if (USE_EXPLOSION == 1)
  434. // Explosion
  435. #include "SweetFX\Shaders\Explosion.h"
  436. #include "SweetFX\Shaders\ExplosionWrap.h"
  437. #endif
  438.  
  439. /*-----------------------.
  440. | :: Advanced CRT :: |
  441. '-----------------------*/
  442.  
  443. #if (USE_ADVANCED_CRT == 1)
  444. // Advanced CRT
  445. #include "SweetFX\Shaders\AdvancedCRT.h"
  446. #include "SweetFX\Shaders\AdvancedCRTWrap.h"
  447. #endif
  448.  
  449. /*-----------------------.
  450. | :: PixelArt CRT :: |
  451. '-----------------------*/
  452.  
  453. #if (USE_PIXELART_CRT == 1)
  454. #include "SweetFX\Shaders\PixelArtCRT.h"
  455. #include "SweetFX\Shaders\PixelArtCRTWrap.h"
  456. #endif
  457.  
  458. /*-----------------------.
  459. | :: Shared :: |
  460. '-----------------------*/
  461.  
  462. void SharedWrap(in float4 position : SV_Position, in float2 texcoord : TEXCOORD0, out float3 color : SV_Target)
  463. {
  464. color = tex2D(colorGammaSampler, texcoord).rgb;
  465.  
  466. //Depth buffer access
  467. float depth = tex2D(depthSampler, texcoord).x;
  468.  
  469. if (depthtoggle)
  470. {
  471. // Linearize depth
  472. const float z_near = 1.0; // camera z near
  473. const float z_far = 100.0; // camera z far
  474. depth = (2.0 * z_near) / ( -(z_far - z_near) * depth + (z_far + z_near) );
  475.  
  476. color.rgb = float3(depth.xxx);
  477. }
  478.  
  479. color = main(texcoord, color.rgbb).rgb; // Add effects. Note : RadeonPro uses main() as the entry point. Renaming it breaks RadeonPro compatibility.
  480. //color = SweetFX_main(texcoord, color); // Add effects
  481. }
  482.  
  483.  
  484. /*-----------------------.
  485. | :: Custom :: |
  486. '-----------------------*/
  487. #if (USE_CUSTOM == 1)
  488. #include "SweetFX\Shaders\Custom.h"
  489. #endif
  490.  
  491. /*----------------------.
  492. | :: Transitions :: |
  493. '----------------------*/
  494.  
  495. #if USE_TRANSITION == 1
  496. #include "SweetFX/Shaders/Transitions.h"
  497. #endif
  498.  
  499. /*-----------------------.
  500. | :: Techniques :: |
  501. '-----------------------*/
  502.  
  503. technique Default < bool enabled = true; int toggle = ReShade_ToggleKey; >
  504. {
  505. #if (USE_ASCII == 1)
  506. pass //Ascii pass
  507. {
  508. VertexShader = FullscreenTriangle;
  509. PixelShader = AsciiWrap;
  510. }
  511. #endif
  512.  
  513. #if (USE_PAINT == 1)
  514. pass //Paint pass
  515. {
  516. VertexShader = FullscreenTriangle;
  517. PixelShader = PaintPass;
  518. }
  519. #endif
  520.  
  521. #if (USE_CARTOON == 1)
  522. pass //Cartoon pass
  523. {
  524. VertexShader = FullscreenTriangle;
  525. PixelShader = CartoonWrap;
  526. }
  527. #endif
  528.  
  529. #if (USE_LUMASHARPEN == 1)
  530. pass //LumaSharpen pass
  531. {
  532. VertexShader = FullscreenTriangle;
  533. PixelShader = LumaSharpenWrap;
  534. }
  535. #endif
  536.  
  537. #if (USE_CEL == 1)
  538. pass //Cel pass
  539. {
  540. VertexShader = FullscreenTriangle;
  541. PixelShader = CelPass;
  542. }
  543. #endif
  544.  
  545. #if (USE_SMAA == 1 || USE_SMAA_ANTIALIASING == 1)
  546.  
  547. // SMAA //
  548. pass SMAA_EdgeDetection //First SMAA Pass
  549. {
  550. VertexShader = SMAAEdgeDetectionVSWrap;
  551.  
  552. #if SMAA_EDGE_DETECTION == 1
  553. PixelShader = SMAALumaEdgeDetectionPSWrap;
  554. #elif SMAA_EDGE_DETECTION == 3
  555. PixelShader = SMAADepthEdgeDetectionPSWrap;
  556. #else
  557. PixelShader = SMAAColorEdgeDetectionPSWrap; //Probably the best in most cases so I default to this.
  558. #endif
  559.  
  560. // We will be creating the stencil buffer for later usage.
  561. StencilEnable = true;
  562. StencilPass = REPLACE;
  563. StencilRef = 1;
  564.  
  565. RenderTarget = edgesTex;
  566. }
  567.  
  568. pass SMAA_BlendWeightCalculation //Second SMAA Pass
  569. {
  570. VertexShader = SMAABlendingWeightCalculationVSWrap;
  571. PixelShader = SMAABlendingWeightCalculationPSWrap;
  572.  
  573. // Here we want to process only marked pixels.
  574. StencilEnable = true;
  575. StencilPass = KEEP;
  576. StencilFunc = EQUAL;
  577. StencilRef = 1;
  578.  
  579. RenderTarget = blendTex;
  580. }
  581.  
  582. pass SMAA_NeighborhoodBlending //Third SMAA Pass
  583. {
  584. VertexShader = SMAANeighborhoodBlendingVSWrap;
  585. PixelShader = SMAANeighborhoodBlendingPSWrap;
  586.  
  587. #if SMAA_DEBUG_OUTPUT == 5
  588. // Use the stencil so we can show it.
  589. StencilEnable = true;
  590. StencilPass = KEEP;
  591. StencilFunc = EQUAL;
  592. StencilRef = 1;
  593. #else
  594. // Process all the pixels.
  595. StencilEnable = false;
  596. #endif
  597.  
  598. SRGBWriteEnable = true;
  599. }
  600. #endif
  601.  
  602. #if (USE_EXPLOSION == 1)
  603. pass //Explosion pass
  604. {
  605. VertexShader = FullscreenTriangle;
  606. PixelShader = ExplosionWrap;
  607. }
  608. #endif
  609.  
  610. #if (USE_FXAA == 1 || USE_FXAA_ANTIALIASING == 1)
  611. //TODO make a luma pass
  612. pass FXAA
  613. {
  614. VertexShader = FullscreenTriangle;
  615. PixelShader = FXAA;
  616. }
  617. #endif
  618.  
  619. #if (USE_BLOOM == 1)
  620. pass //Bloom pass
  621. {
  622. VertexShader = FullscreenTriangle;
  623. PixelShader = BloomWrap;
  624. }
  625. #endif
  626.  
  627. #if (USE_HDR == 1)
  628. pass //HDR pass
  629. {
  630. VertexShader = FullscreenTriangle;
  631. PixelShader = HDRWrap;
  632. }
  633. #endif
  634.  
  635. #if (USE_CA == 1)
  636. pass //CA pass
  637. {
  638. VertexShader = FullscreenTriangle;
  639. PixelShader = ChromaticAberrationWrap;
  640. }
  641. #endif
  642.  
  643. #if (USE_ADVANCED_CRT == 1)
  644. pass //Advanced CRT pass
  645. {
  646. VertexShader = FullscreenTriangle;
  647. PixelShader = AdvancedCRTWrap;
  648. }
  649. #endif
  650.  
  651. #if (USE_PIXELART_CRT == 1)
  652. pass //Pixel Art CRT pass
  653. {
  654. VertexShader = FullscreenTriangle;
  655. PixelShader = PixelArtCRTWrap;
  656.  
  657. SRGBWriteEnable = true; //PixelArtCRT uses linear so we must convert to gamma again
  658. }
  659. #endif
  660.  
  661.  
  662. pass //Shared pass - the effects that don't require a seperate pass are all done in this one.
  663. {
  664. VertexShader = FullscreenTriangle;
  665. PixelShader = SharedWrap;
  666. }
  667.  
  668. #if (USE_CUSTOM == 1) //There is no way of knowing where the users own shader should go so let us just put it at the end for now
  669. pass //Custom pass
  670. {
  671. VertexShader = FullscreenTriangle;
  672. PixelShader = CustomPass;
  673. }
  674. #endif
  675.  
  676.  
  677. }
  678.  
  679. /*---------------------------.
  680. | :: Temporary techniques :: |
  681. '---------------------------*/
  682.  
  683. #if USE_TRANSITION == 1
  684. technique Welcome < bool enabled = true; int timeout = Transition_time; > //sets the timeleft value. When it reaches 0 the technique is disabled.
  685. {
  686. pass
  687. {
  688. VertexShader = FullscreenTriangle;
  689. PixelShader = Transition_type;
  690. }
  691. }
  692. #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement