这是个基于OPENGL ES2.0的游戏开发包,里面带的范例有这么一段,不太明白下面是个用来创建角色实例的类,ShaderProgram 和 GraphicsContext 都是API中提供的类型。CreateSimpleSpriteShader()这个方法中的Assembly和Stream,查资料说是反射和字节流,但还是很糊涂,反射有人讲是起查看未知类型的信息的作用。下面这段代码中,这两个东西是必要的还是可选的头一次请教问题,字儿有点多,怕表达不清,先谢谢各位啦~
public class SimpleSprite
{
static ShaderProgram shaderProgram;

protected GraphicsContext graphics;        …………………………………………
 
private static ShaderProgram CreateSimpleSpriteShader()
{
string resourceName = "TutoLib.shaders.SimpleSprite.cgx";

Assembly resourceAssembly = Assembly.GetExecutingAssembly();
if (resourceAssembly.GetManifestResourceInfo(resourceName) == null)
{
throw new FileNotFoundException("File not found.", resourceName);
}

Stream fileStream = resourceAssembly.GetManifestResourceStream(resourceName);
Byte[] dataBuffer = new Byte[fileStream.Length];

//@e Read files into the dataBuffer.
fileStream.Read(dataBuffer, 0, dataBuffer.Length);

var shaderProgram = new ShaderProgram(dataBuffer);
shaderProgram.SetUniformBinding(0, "u_WorldMatrix");

return shaderProgram;
}
}