60 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			60 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			C#
		
	
	
	
| #if UNITY_5_4_OR_NEWER || (UNITY_5 && !UNITY_5_0)
 | |
| 	#define UNITY_HELPATTRIB
 | |
| #endif
 | |
| 
 | |
| using UnityEngine;
 | |
| 
 | |
| //-----------------------------------------------------------------------------
 | |
| // Copyright 2015-2018 RenderHeads Ltd.  All rights reserverd.
 | |
| //-----------------------------------------------------------------------------
 | |
| 
 | |
| 
 | |
| namespace RenderHeads.Media.AVProVideo
 | |
| {
 | |
| 	/// <summary>
 | |
| 	/// Draws video over the whole background using the special "background" tag on the shader.
 | |
| 	/// Useful for augmented reality.
 | |
| 	/// NOTE: This doesn't work with the camera clear mode set to 'skybox'
 | |
| 	/// </summary>
 | |
| 	[AddComponentMenu("AVPro Video/Display Background", 200)]
 | |
| #if UNITY_HELPATTRIB
 | |
| 	[HelpURL("http://renderheads.com/product/avpro-video/")]
 | |
| #endif
 | |
| 	[ExecuteInEditMode]
 | |
| 	public class DisplayBackground : MonoBehaviour
 | |
| 	{
 | |
| 		public IMediaProducer _source;
 | |
| 
 | |
| 		public Texture2D _texture;
 | |
| 		public Material _material;
 | |
| 		
 | |
| 		//-------------------------------------------------------------------------
 | |
| 
 | |
| 		void OnRenderObject()
 | |
| 		{
 | |
| 			if (_material == null || _texture == null)
 | |
| 				return;
 | |
| 
 | |
| 			Vector4 uv = new Vector4(0f, 0f, 1f, 1f);
 | |
| 			_material.SetPass(0);
 | |
| 			GL.PushMatrix();
 | |
| 			GL.LoadOrtho();
 | |
| 			GL.Begin(GL.QUADS);
 | |
| 			
 | |
| 			GL.TexCoord2(uv.x, uv.y);
 | |
| 			GL.Vertex3(0.0f, 0.0f, 0.1f);
 | |
| 			
 | |
| 			GL.TexCoord2(uv.z, uv.y);
 | |
| 			GL.Vertex3(1.0f, 0.0f, 0.1f);
 | |
| 			
 | |
| 			GL.TexCoord2(uv.z, uv.w);		
 | |
| 			GL.Vertex3(1.0f, 1.0f, 0.1f);
 | |
| 			
 | |
| 			GL.TexCoord2(uv.x, uv.w);
 | |
| 			GL.Vertex3(0.0f, 1.0f, 0.1f);
 | |
| 			
 | |
| 			GL.End();
 | |
| 			GL.PopMatrix();
 | |
| 		}
 | |
| 	}
 | |
| } |