本文整理汇总了C#中OpenGL.LightModel方法的典型用法代码示例。如果您正苦于以下问题:C# OpenGL.LightModel方法的具体用法?C# OpenGL.LightModel怎么用?C# OpenGL.LightModel使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类OpenGL
的用法示例。
在下文中一共展示了OpenGL.LightModel方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: SetAttributes
/// <summary>
/// Sets the attributes.
/// </summary>
/// <param name="gl">The OpenGL instance.</param>
public override void SetAttributes(OpenGL gl)
{
if (enable.HasValue) gl.EnableIf(OpenGL.GL_LIGHTING, enable.Value);
if (ambientLight != null) gl.LightModel(LightModelParameter.Ambient, ambientLight);
if (localViewer.HasValue) gl.LightModel(LightModelParameter.LocalViewer, localViewer.Value == true ? 1 : 0);
if (twoSided.HasValue) gl.LightModel(LightModelParameter.TwoSide, twoSided.Value == true ? 1 : 0);
}
示例2: InitialiseHighQuality
/// <summary>
/// Initialises the supplied OpenGL instance for high quality rendering.
/// </summary>
/// <param name="gl">The OpenGL instance.</param>
public static void InitialiseHighQuality(OpenGL gl)
{
// Set parameters that give us some high quality settings.
gl.Enable(OpenGL.GL_DEPTH_TEST);
gl.Enable(OpenGL.GL_NORMALIZE);
gl.Enable(OpenGL.GL_LIGHTING);
gl.Enable(OpenGL.GL_TEXTURE_2D);
gl.ShadeModel(OpenGL.GL_SMOOTH);
gl.LightModel(OpenGL.GL_LIGHT_MODEL_TWO_SIDE, OpenGL.GL_TRUE);
gl.Enable(OpenGL.GL_BLEND);
gl.BlendFunc(OpenGL.GL_SRC_ALPHA, OpenGL.GL_ONE_MINUS_SRC_ALPHA);
}
示例3: Set
public override void Set(OpenGL gl)
{
base.Set(gl);
gl.PushAttrib(AttributeBit);
if(enable)
{
gl.Enable(OpenGL.LIGHTING);
gl.LightModel(OpenGL.LIGHT_MODEL_AMBIENT, ambientLight);
gl.LightModel(OpenGL.LIGHT_MODEL_LOCAL_VIEWER, localViewer == true ? 1 : 0);
gl.LightModel(OpenGL.LIGHT_MODEL_TWO_SIDE, twoSided == true ? 1 : 0);
}
else
gl.Disable(OpenGL.LIGHTING);
}