Warning: Undefined array key "HTTP_ACCEPT_LANGUAGE" in /home/clients/50536745d503cc9bd290722a231d5f8f/web/includes/o3_common.php on line 79

Deprecated: strpos(): Passing null to parameter #1 ($haystack) of type string is deprecated in /home/clients/50536745d503cc9bd290722a231d5f8f/web/includes/o3_common.php on line 79
oZone3D.Net Tutorials - OpenGL and Direct3D - C++ 3D Lighting Mesh Texturing Vertex Buffer Blending Alpha Test VBO DevIL




GeeXLab
Current version: 0.45.1
>GeeXLab homepage

FurMark
Current version: 1.30.0
>FurMark homepage

GPU Caps Viewer
Current version: 1.55.0.0
>GPU Caps Viewer homepage

GPU Shark
Current version: 0.26.0.0
>GPU Shark homepage


Blogs
>JeGX's HackLab

Geeks3D's Articles
>GPU Memory Speed Demystified

>Multi-Threading Programming Resources

>GeForce and Radeon OpenCL Overview

>How to Get your Multi-core CPU Busy at 100%

>How To Make a VGA Dummy Plug

>Night Vision Post Processing Filter

PhysX FluidMark
Current version: 1.5.4
>FluidMark homepage

TessMark
Current version: 0.3.0
>TessMark homepage

ShaderToyMark
Current version: 0.3.0
>ShaderToyMark homepage
>ShaderToyMark Scores

Demoniak3D
Current Version: 1.23.0
>Demoniak3D
>Download
>Libraries and Plugins
>Demos
>Online Help - Reference Guide
>Codes Samples
 
oZone3D.Net Tutorials - OpenGL and Direct3D
OpenGL & Direct3D Tutorials


These tutorials aim to show the common stuffs (and differences...) between the two most frequently used API in real time 3D. It is not about saying that one is better than the other, which is a nonsense. Those libraries are just tools for transforming our imagination into something visible on the screen. Using one API instead of the other is just a question of feeling, and maybe also of technical constraints (OpenGl would be more suitable for developing a 3D application on Unix for example). In my opinion, I prefer OpenGL because of its simplicity and Direct3D because of its speed (on Windows ...).

Tutorials relating to Direct3D have been developed with the DirectX 8.0 SDK. They can be converted quite easily into the latest 9.0 version.

And now, have a nice code!
JeGX

Note: the following tutorials do not use oZone3D engine. They are coded directly with OpenGL and Direct3D API .



OpenGL Gouraud TriangleTuto 01 OpenGL
This tutor shows how to render in gouraud-shading mode a simple triangle.

Direct3D Gouraud TriangleTuto 01 Direct3D
This tutor shows how to render in gouraud-shading mode a simple triangle.




OpenGL Wireframe Mesh Rendering.Tuto 02 OpenGL
This tutor shows how to render a mesh in wireframe.

Direct3D Wireframe Mesh Rendering.Tuto 02 Direct3D
This tutor shows how to render a mesh in wireframe.




OpenGL Mesh Rendering with Ligthing.Tuto 03 OpenGL
This tutor shows how to render a mesh with lighting.

OpenGL Mesh Rendering with Ligthing.Tuto 03 Direct3D
This tutor shows how to render a mesh with lighting.




OpenGL Mesh Rendering With TexturingTuto 04 OpenGL
This tutor shows how to render a mesh with texturing.

Direct3D Mesh Rendering With TexturingTuto 04 Direct3D
This tutor shows how to render a mesh with texturing.




OpenGL Mesh Rendering With Lighting And Texturing.Tuto 05 OpenGL
This tutor shows how to render a mesh with texturing and lighting and shows how to render specular highlights with multipass-rendering. The specular highlights can be rendered in one pass with a specfic OpenGL extension but this subjet will be seen in another tutor.

Direct3D Mesh Rendering With Lighting And Texturing.Tuto 05 Direct3D
This tutor shows how to render a mesh with texturing and lighting. Direct3D can render the specular highlights in one pass.




OpenGL Blending And texturing - VertexBuffer.Tuto 07 OpenGL
This tutor shows the basis of Blending to make transparent faces and shows how to fill the Vertex Buffer manually.

Direct3D Blending And texturing - VertexBuffer.Tuto 07 Direct3D
This tutor shows the basis of Blending to make transparent faces and shows how to fill the Vertex Buffer manually.




OpenGL Multitexturing And Lightmapping.Tuto 08 OpenGL
This tutor show how setup Multitexturing (with an OpenGL extension) in order to achieve some kind of lightmapping effect.

Direct3D Multitexturing And Lightmapping.Tuto 08 Direct3D
This tutor show how setup Multitexturing (it is a native feature of Direct3D) in order to achieve some kind of lightmapping effect.




OpenGL Stencil Buffer And Viewport.Tuto 09 OpenGL
This tutor shows the use of the Stencil Buffer and how to play with the viewport.

Direct3D Stencil Buffer And Viewport.Tuto 09 Direct3D
This tutor shows the use of the Stencil Buffer and how to play with the viewport.




OpenGL Sphere Mapping And Stencil BufferTuto 10 OpenGL
This tutor shows the Sphere Mapping texGen and the use of the Stencil Buffer.

Direct3D Sphere Mapping And Stencil BufferTuto 10 Direct3D
This tutor shows the Sphere Mapping texGen and the use of the Stencil Buffer.




OpenGL EXT_swap_control extension.Tuto 11 OpenGL
Speed up the FPS: EXT_swap_control extension. This tutor shows how to setup the OpenGL extension that allows us to control the vertical synchronization (vsync) in order to increase the fps.

Direct3D Speed up the FPS: no extension needed.Tuto 11 Direct3D
Speed up the FPS: no extension needed. By default, Direct3D has the vsync disabled




OpenGL Alpha testingTuto 12 OpenGL
This tutor shows how to discard pixels with Alpha Testing




OpenGL DevIL Image LibraryTuto 13 OpenGL
This tutor shows how to setup and use the DevIL Image Library to load various image formats.
For details about this cool library, see http://openil.sourceforge.net




OpenGL - LynX 3D Viewer Lite - GL_EXT_separate_specular_color - DevIL Image LibraryTuto 14 OpenGL
This tutor uses the LynX 3D Viewer Lite for loading a 3D model and exporting it to a C code (teapot.c). This code is directly used in the project. The mesh exported contains the normals (for lighting) then the loading is straightforward. The tutor shows how to render specular highlights in one pass using GL_EXT_separate_specular_color extension. The texture is loaded using DevIL Image Library.




OpenGL - glCompressedTexImage2D - GL_EXT_texture_compression_s3tcTuto 15 OpenGL
This tutor shows how to load a compressed texture in the O3TC format using the glCompressedTexImage2D function. This texture format is described in detail in the following tutorial Normal Map Compression. The O3TC format has the same features than the DDS and is really simple to load. This tutor shows also how to setup the trilinear filtering.




OpenGL - glBufferData - glBindBuffer - GL_ARB_vertex_buffer_object - GL_STATIC_DRAWTuto 16 OpenGL
This tutorial shows the use of OpenGL VBO (Vertex Buffer Objects) and the GLSL (OpenGL Shading Language).

Tutorial Page: Vertex Buffer Object - GLSL.


GeeXLab demos


GLSL - Mesh exploder


PhysX 3 cloth demo


Normal visualizer with GS


Compute Shaders test on Radeon


Raymarching in GLSL



Misc
>Texture DataPack #1
>Asus Silent Knight CPU Cooler
Page generated in 0.0031039714813232 seconds.