Axiom.SceneManagers.Bsp.Quake3Level.ReadShaders C# (CSharp) Method

ReadShaders() private method

private ReadShaders ( InternalBspLump lump, BinaryReader reader ) : void
lump InternalBspLump
reader System.IO.BinaryReader
return void
		private void ReadShaders( InternalBspLump lump, BinaryReader reader )
		{
			reader.BaseStream.Seek( lump.offset, SeekOrigin.Begin );
			shaders = new InternalBspShader[ lump.size / Marshal.SizeOf( typeof( InternalBspShader ) ) ];

			for ( int i = 0; i < shaders.Length; i++ )
			{
				char[] name = Encoding.ASCII.GetChars( reader.ReadBytes( 64 ) );

				shaders[ i ] = new InternalBspShader();
				shaders[ i ].surfaceFlags = (SurfaceFlags)Enum.Parse( typeof( SurfaceFlags ), reader.ReadInt32().ToString() );
				shaders[ i ].contentFlags = (ContentFlags)Enum.Parse( typeof( ContentFlags ), reader.ReadInt32().ToString() );

				foreach ( char c in name )
				{
					if ( c == '\0' )
						break;

					shaders[ i ].name += c;
				}
			}
		}