Introduction to DirectX 11

DirectX

DirectX

In this article, I will introduce the reader to DirectX 11. We will create a simple demo application that can be used to create more complex DirectX examples and demos. After reading this article, you should be able to create a DirectX application and render geometry using a simple vertex shader and pixel shader.

Continue reading

Texturing and Lighting with OpenGL and GLSL

OpenGL GLSL Texturing and Lighting

OpenGL GLSL Texturing and Lighting

In this article I will demonstrate how to apply 2D textures to your 3D models. I will also show how to define lights that are used to illuminate the objects in your scene.
I assume that the reader has a basic knowledge of C++ and how to create and compile C++ programs. If you have never created an OpenGL program, then I suggest that you read my previous article titled [Introduction to OpenGL and GLSL] before continuing with this article.

Continue reading

Introduction to OpenGL and GLSL

OpenGL

OpenGL

In this article I will introduce the reader to the OpenGL rendering API (application programming interface). I will also introduce GLSL (OpenGL Shading Language). We will create a simple vertex shader and fragment shader that can be used to render very basic 3D primitives. By the end of this article you will know how to create a simple OpenGL application and render 3D objects using shaders.

Continue reading

Transformation and Lighting in Cg 3.1

Lighting with Cg 3.1

Lighting with Cg 3.1

In this article I will demonstrate how to implement a basic lighting model using the Cg shader language. If you are unfamiliar with using Cg in your own applications, then please refer to my previous article titled Introduction to Shader Programming with Cg 3.1.

This article is an updated version of the previous article titled Transformation and Lighting in Cg. In this article, I will not use any deprecated features of OpenGL. I will only use the core OpenGL 3.1 API.

Continue reading

Introduction to Shader Programming with Cg 3.1

NVIDIA Cg

NVIDIA Cg

In this article I will introduce the reader to shader programming using the Cg shader programming language. I will use OpenGL graphics API to communicate with the Cg shaders. This article does not explain how use OpenGL. If you require an introduction to OpenGL, you can follow my previous article titled Introduction to OpenGL.

Continue reading

Using OpenGL Vertex Buffer Objects

Vertex Buffer Object

Vertex Buffer Object


In this article, I will explain how to use the ARB_vertex_buffer_object extension to efficiently render geometry in OpenGL.
If you are not sure how to use extensions in OpenGL, you can refer to my previous article titled OpenGL Extensions. If you have never programmed an OpenGL application before, you can refer to my previous article titled Introduction to OpenGL.

Continue reading

OpenGL Extensions

OpenGL Extensions

OpenGL Extensions


In this article I will talk about OpenGL extensions. Every extension is defined by an extension specification. I will explain how to read the extension specification so that you will know how to use the extensions. I will also show how you can check for the existence of extensions and how to initialize extensions in your own source code. I will show how you can use GLEW to query and use extensions with very little extra effort.
I assume the reader is familiar with the C++ programming language. If you want to know how to start programming in OpenGL, refer to my previous article titled Introduction to OpenGL.

Continue reading

Texturing and Lighting in OpenGL

Texturing and Lighting

Texturing and Lighting


In this article, I will demonstrate how to apply 2D textures to your 3D models. I will also show how to define lights in your scene that are used to illuminate the objects in your scene.
I assume that the reader has a basic knowledge of C++ and how to create and compile C++ programs. If you have never created an OpenGL program, then I suggest that you read my previous article titled “Introduction to OpenGLhere before continuing with this article.

Continue reading

Rendering Primitives with OpenGL

Rendering Primitives

Rendering Primitives


In this article, I will examine multiple methods for rendering primitives in OpenGL. The first method I will look at is using immediate-mode rendering to render simple primitives in 3D. Another method of rending primitives in OpenGL uses vertex arrays. And finally I will also examine the use of display lists to generate a set of render calls that can be executed at another point in time. The reader is expected to have a basic understanding of programming techniques in C++. If you want to know how you can get started with OpenGL, you can refer to my previous article titled [Introduction to OpenGL].

Continue reading