Sometimes you just need to test a shader without getting into any CPU-side code. There are several programs who allow you to do this. ATI’s RenderMoney is one of these programs. During the second semester in my Master’s I had to create a series of GLSL shaders implementing various techniques. The following are the effects and techniques I managed to implement:
- Phong Lighting
- Bump/Parallax Mapping
- Water Rendering
- Underwater effects (vertex distortion and caustics)
- Cubemap Refractions and Reflections
- Fur mapping
- GPU Partice System
- Flag Animation
I present you my first and last attempt to write some D3D assembly shaders. I can admit that it was fun! But OK… let’s don’t overdo it! HLSL works better for me! 😛 The shaders included are:
- Diffuse lighting
- Diffuse lighting with multiple lights
- Vertex morphing
- Two tone painting
- Phong lighting (ambient+diffuse+specular)
- Cartoon rendering
- Sphere mapping
Accelhullrate is a video-game-wanna-be slot racer game coursework I did for the module “Real Time Graphics” in my Master’s during the first semester. For this project I created a 3D engine from scratch, called EOS. I can admit that I was lazy to do the game logic part for this project. I implemented almost all the graphics features but very few game logic related ones. While the game is using OpenGL 2.0 for rendering, I didn’t use any OpenGL 3.x deprecated functions. The only exception was the code for the GUI rendering where I used fixed function and immediate mode. The following are the main features of the game/engine:
- Shader-based 3D Engine (GLSL)
- Per-pixel lighting
- Sphere mapping reflections
- Sky-dome with dynamic day-night cycle
- OBJ file loading
- Water and fire particle systems
- Simple terrain rendering
- GUI Rendering
EREBUS Engine is a 3D engine I made for my BSc thesis. The name come from a Hellenic mythological figure Erebus. The engine is using Direct 3D 10 and implements some of the fundamental graphics algorithms and techniques in computer graphics.
- Per Pixel Phong Lighting
- Bump Mapping
- Cube Environment Mapping
- Simple QuadTree Terrain Rendering
- Z-fail Shadow Volumes
- Projective Shadows
My BSc thesis document can be found here but it is Hellenic language: 3D Engines and Computer Graphics.
EDIT: Engine was crashing on some machines. I did a quick fix and I also included a required D3DX dll file.
At the end of my first year in university I wanted to make a simple OpenGL 3DS file loader. After I was done I started adding various features… particle systems, per pixel lighting, MD3 model loading, shadow volumes, BSP rendering etc. It might started as a simple 3DS Loader but after some months it became a big (yeah right..) 3D Engine. I was still learning C++, computer graphics and OpenGL and I can admit that I am not proud of my code! 😛 Anyways… these are some of the main features of the engine:
- BSP Rendering
- Per-Pixel lighting parallax mapping
- Z-fail shadow volumes
- Dynamic cube mapping
- 3DS, MD3 and MD5 model loader
- Lens flare effects
- GUI system
Ladies and gentlemen, I present you my first video game! 😀 As you can see, my lack of imagination led to this magnificent name: GLBall. I made this game during my last year in high school while I was still learning C and OpenGL. The technologies used for this game are C, OpenGL, Direct Input and Direct Sound.
My name is George but my friends are calling me Bekos. As you can easily guess from the title of this blog I am a Travelholic Coder. I really like computer programming and especially computer graphics and visualization. My favorite programming languages are C and C++ and I use both OpenGL and Direct3D.
Besides programming, my other passion is travelling! So far I haven’t been in many different countries (only 5) but hopefully one day I will be able to say that I have been all over the world!
So… after very careful consideration, brainstorming, fighting hordes of evil monsters, nose peeking and orange juice drinking I came to the following conclusion:
I need a blog!
In this blog I will share with you my coding and travelling experiences but I will also include other science and travelling related stuff.