CsGL着色的三角形

转自NeHe教程

public override void Draw() {                                                    // Here‘s Where We Do All The Drawing
            glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);                            // Clear Screen And Depth Buffer
            glLoadIdentity();                                                            // Reset The Current Modelview Matrix

            glTranslatef(0.0f, 0.0f, -6.0f);                                            // Move Into The Screen 6.0

            glRotatef(angle, 0.0f, 1.0f, 0.0f);                                            // Rotate The Triangle On The Y Axis By angle
            for(rot1 = 0; rot1 < 2; rot1++) {                                            // 2 Passes For Two Sets Of Triangles
                glRotatef( 90.0f, 0.0f, 1.0f, 0.0f);                                    // Rotate 90 Degrees On The Y-Axis
                glRotatef(180.0f, 1.0f, 0.0f, 0.0f);                                    // Rotate 180 Degress On The X-Axis
                for(rot2 = 0; rot2 < 2; rot2++) {                                        // 2 Passes For Each Of The Sets, Draw Two Triangles
                    glRotatef(180.0f, 0.0f, 1.0f, 0.0f);                                // Rotate 180 Degrees On The Y-Axis
                    glBegin(GL_TRIANGLES);                                                // Begin Drawing Triangles
                    glColor3f(1.0f, 0.0f, 0.0f);  glVertex3f( 0.0f,  1.0f, 0.0f);        // Draw The Red Vertex
                    glColor3f(0.0f, 1.0f, 0.0f);  glVertex3f(-1.0f, -1.0f, 1.0f);        // Draw The Green Vertex
                    glColor3f(0.0f, 0.0f, 1.0f);  glVertex3f( 1.0f, -1.0f, 1.0f);        // Draw The Blue Vertex
                    glEnd ();                                                            // Done Drawing Triangles
                }
            }

            angle += 0.2f;                                                                // Update angle
            glFlush();                                                                    // Flush The GL Rendering Pipeline
        }
时间: 2024-10-20 02:36:30

CsGL着色的三角形的相关文章

OpenGL超级宝典笔记——画三角形(转)

http://my.oschina.net/sweetdark/blog/161002 学习了画线的知识,我们可以使用GL_LINE_LOOP来画闭合的多边形.但是使用这种方式画出来的只有线框,多边形没有填充颜色.OpenGL支持绘制实心的多边形,并使用当前的颜色进行填充. 三角形 简单的三角形,需要指定三个顶点. 1: glBegin(GL_TRIANGLES); 2: glVertex2f(0.0f, 0.0f); // V0 3: glVertex2f(25.0f, 25.0f); //

NeHe OpenGL教程 第三课:颜色渲染

转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线教程的编写,以及yarn的翻译整理表示感谢. 第三课:颜色渲染 添加颜色: 作为第二课的扩展,我将叫你如何使用颜色.你将理解两种着色模式,在左图中,三角形用的是光滑着色,四边形用的是平面着色. 上一课中我教给您三角形和四边形的绘制方法.这一课我将教您给三角形和四边形添加2种不同类型的着色方法.使用F

第03课 OpenGL 添加颜色

添加颜色: 作为第二课的扩展,我将叫你如何使用颜色.你将理解两种着色模式,在下图中,三角形用的是光滑着色,四边形用的是平面着色 上一课中我教给您三角形和四边形的绘制方法.这一课我将教您给三角形和四边形添加2种不同类型的着色方法.使用Flat coloring(单调着色)给四边形涂上固定的一种颜色.使用Smooth coloring(平滑着色)将三角形的三个顶点的不同颜色混合在一起,创建漂亮的色彩混合. 继续在上节课的DrawGLScene例程上修改.下面将整个例程重写了一遍.如果您计划修改上节课

OpenGL ES 2.0渲染管线

http://codingnow.cn/opengles/1504.html Opengl es 2.0实现了可编程的图形管线,比起1.x的固定管线要复杂和灵活很多,由两部分规范组成:Opengl es 2.0 API规范和Opengl es着色语言规范.下图是Opengl es 2.0渲染管线,阴影部分是opengl es 2.0的可编程阶段. 1. 顶点着色器(VertexShader) 顶点着色器对顶点实现了一种通用的可编程方法. 顶点着色器的输入数据由下面组成: Attributes:使

opengl绘图,画一个旋转的四边形和一个旋转的三角形,平滑着色和单一着色

opengl单一着色和平滑着色,以及图形的旋转 package com.example.zp.myapplication;   import java.nio.FloatBuffer;     import javax.microedition.khronos.egl.EGLConfig; import javax.microedition.khronos.opengles.GL10;   import android.opengl.GLSurfaceView.Renderer;   publi

DirectX学习笔记(五):利用平面着色和Gouraud着色模式绘制具有颜色的三角形

前言: 图元的颜色是由构成该图元的顶点的颜色所决定的,而物体是由图元索组成.那么如果我们要绘制一个具有颜色的三角形,我们就需要为三角形图元顶点附加颜色属性. 1.Direct3D中颜色的表示: 在Direct3D中,颜色用RGB来表示(这个大家都知道,咳咳.)通畅人为颜色可以分为红色(red).绿色(green).蓝色(bule).这三个分量进行混合,以达到我们想要的颜色取得目的.RGB的数据可以用两种方式来进行存储一种是D3DCOLOR ,另一种是:DWORD.这是因为D3DCOLOR完全等同

SharpDX初学者教程第5部分:着色三角形

原文 http://www.johanfalk.eu/blog/sharpdx-beginners-tutorial-part-5-coloring-the-triangle 在第4部分中,我们创建了一个三角形,我们可以在像素着色器中为整个三角形设置单一颜色.在本教程中,我们将看到如何为三角形的每个顶点添加单独的颜色.我们将继续处理上一个教程中的代码,您也可以在此处找到该代码. 最终结果如下: 1.创建顶点结构 请记住,当我们渲染三角形时,我们上传了一个数组Vector3,因为每个顶点只是一个位

Directx11学习笔记【十】 画一个简单的三角形

本篇笔记要实现的是在屏幕上渲染出一个三角形,重点要学习的是渲染一个几何体的流程方式. 为了渲染几何图形,需要一个顶点缓存和一个描述顶点布局的输入层,还有着色器(主要是顶点着色器和像素着色器),下面来看看具体Demo的实现. 新建一个Win32项目 ,新建一个类我们叫做TriangleDemo,继承自前面教程我们实现的基类Dx11DemoBase. TriangleDemo.h头文件 #pragma once #include "Dx11DemoBase.h" class Triangl

第4章:缓冲区、着色器、GLSL

原文链接: http://www.rastertek.com/gl40tut04.html Tutorial 4: Buffers, Shaders, and GLSL This tutorial will be the introduction to writing vertex and pixel shaders in OpenGL 4.0. It will also be the introduction to using vertex and index buffers in OpenG