Showing posts with label Development. Show all posts
Showing posts with label Development. Show all posts

Tuesday, 9 December 2008

Some more shader work

Last time I showed the spot light that was working this time round Normal mapping and Parallax mapping are also working.
First up normal mapping:

And parallax mapping:

The only thing the images show off is though that the specular component isn't calculated correctly and that is the next fix. The thing after that is creating a cube map in the application so we can do reflection mapping.

The application I am creating is actually a countdown timer till new year and I want to add a reflection map to the 3d text that is now hidden by this cube.

Wednesday, 3 December 2008

spot light shader

And finally I got my spot light shader to work. The problem I actually had was that I didn't realize that the cos function in HLSL needed a radian instead of degrees, grrrr. It now looks as it should, finnaly got this damn light equations out of the way.

Tuesday, 2 December 2008

Side project

I finally got a spot light shader working. This bugged my last year at this time when I was doing my space sim and is one of the reasons why I didn't include shaders in that project.

In the new year I will probably redo that project based upon a completely shader based render system this time around. This means I can much easier include effects in to this project like parallax mapping. But for this to be able to be put in my light shaders first have to work.

Here is a screen shot of the spot light so far, i still need to add the fall off in between the inner and other cone.

Monday, 28 July 2008

Looking back at a (almost a)year(now) of almost full time coding

Tonight I had an epiphany, and so how much I have developed over the last year as a programmer.
I was looking at some screen shots I made in the beginning of the year as I was starting my first game project. I started this project with no idea how a game engine worked besides of the knowledge of a rasterizer in a game engine.

Some Screen shots of the early development of my space simulator game
This knowledge however gave me a little advantage though as I knew how the graphics pipeline worked. It did not however prepare me for the task of gameplay programming, which is basically the hart of everything. It connects the players input to all the other stuff that is going on like rendering of the scene and physics, to the event system that triggers doors and particle systems.

Some screen shots of the end results of my space simulator game
After this project came three others in the same time span that we had gotten for the first one. This was our very first decent taste of what life as a real game programmer would be like, and I can tell you it's though. Game programming is one of these professions which in the first year or two are not for the faint of harted.
In this second semester we had a Physcis/Network engine to write, do a team project (of which the actual specs came from a real studio, Blackrock Studios) and a shader and AI assignment.

Screenshots of the shader asignment
These four assignments let me learn a lot in managing my own time, doing multiple different tasks at the same time. And increased my coding knowledge and potential a lot.
So yeah after a year I am actually glad I decided to leave my own country and safety net and did this MSc. What I learned was that the game industry is a place where people have to work very hard, but it's also a very rewarding place to work. Imagine you squeezing just that last frame out of your code so your game will run at a constant 30fps, or getting the physics interaction of colliding objects just right so the game looks realistic. These are all techinical achievements which are good in reinforcing your own self esteem.
Then ofcourse there is the showing of to other people this is probably the most rewarding aspect of the whole job. Thats also the reason why I sneak in these pictures of my work. If you want to see more pictures and more details about the actual projects I have done or just want to see if the executables work on your machine go here, or follow the link to my portfolio site.

Tuesday, 22 July 2008

Painting on a 3D model

Well today i got the disseration in such a state that I can start thinking about painting on a 3D model with a soft brush.
Here is a screenshot of the hard brush i am using currently for painting on a 3D model, and the generated rendertarget:

The rendering is done by moving a brush over a 3D model and drawing a circle at the texture coordinates under that point in a shader.
It's not yet anything advanced but the next one is going to either use joint springs or particle systems to achieve a brush like effect.

Wednesday, 16 July 2008

Dissertation Shaders

Ok I found out what went wrong yesterday.
First of all the circle radius is so big that it encompasses the complete model so we won't see a nice circle, that has no been fixed.
Second was that the origin most likely was passed wrong which is now fixed as well. To do here is to get the actual collision point to be circle origin but that isn't a big problem.
The actual thing now looks something like this:

It's input is still all slider based but at least the shader works as I had expected it to work. And the color passing is a bit off but that is an error in bit shifting I think I made.

Tuesday, 15 July 2008

Effect rendering

Today i fixed the effect and shader rendering part of my dissertation it now should look like this:

The fx file adds a circle arround a certain point in the texture passed on parameters like:
  • Circle origen in texture coordinates
  • Circle Radius
  • Circle Color
But the actual end result more look like this, circle color is turqoise in this version:


So my next step is too see what the hell is going wrong in the shader that isn't going wrong in RenderMonkey. :(

Friday, 11 July 2008

Dissertation

As far as the dissertation is going I am now trying to implement shaders through DX effect files. I am doing this as the paint brush is much easier to create inside a shader. After talking to my supervisor we both agreed that the pipeline approach which I was using before wasn't a good idea.
It isn't a good idea mostly because it's slow to develop, when using shaders you can use packages like rendermonkey and fx composer.
Besides the goal was to create the virtual brush using shaders anyway in the end.

Saturday, 14 June 2008

Dissertation progress update

After another ten days the dissertation is finally looking like the end product should. The application now loads an .x file on command and we can change the mesh at run time. The collision detection for the mesh is implemented and the vertex color is changed when the mouse moves over the mesh.
The next tasks to do is to actually render the pen color in to a texture and display that instead of using vertex colors.
Here is a screenshot:

Thursday, 5 June 2008

Projection errors

OK the error I had in the previous post has a very easy solution the projection matrix was setup wrong.
Instead of setting it in "OnD3D9CreateDevice" part of DXUT it needs to be set in "OnD3D9ResetDevice".
It now looks as following:

X files rendering

After a week wrestling with DX 9 again I got an x file to render. When I tried this last Christmas it wouldn't render for the world of me. Apparently the tutorial in the DX sdk are a bit out of date. When I started looking at the function calls involved I found that I wasn't supplying everything. It now renders although I have minor camera problem with the rendering so thats the next step to figure out.
Remeber in the following screenshot light is on in the first and off in the second to show that textures are also working:

Monday, 5 May 2008

Resurrection

Today we finished the team project which this time has an installer so you all can try it out at home.
Do read the readme though as this installer needs to install OpenAll first if it isn't present on the machine and if it has to you need to run it again to install the game.
Link is here. And link for the redistributable msvcrt.dll is here. Copy the contents of the folder in the second zip over to the installation directory.

Monday, 28 April 2008

AI

I finally found the bug in my AI ACW last night after 3 solid days of working on it, as I fixed it I am now at a winning rate of 5/5 for no, 1 and 2 ghost 4/5 for 3 ghost and now testing 4 ghosts. At least is can win now it didn't do that for the last couple of days.
The first version I had could complete the no ghost one, but the next versions couldn't even do that. And i think i still have a minor bug in the path finding when it can't find a path with a value now it always goes to the left bottom corner instead of searching the full grid to see if it can find a path with a dot in it. I also think I need to decrease the value for the bonus when there aren't that many dots left. It will now almost always go for the bonus. I definitely have a problem in the full search as you can see from a the screen shots.
Ah well here is a screen shot:

Wednesday, 19 March 2008

Portofolio, Family Visits

Well today and yesterday i have been working on my portfolio site, which is now almost done and the link to it can be found on the right.
From tomorrow on till 25th of March I will finally be having a bit of vacation as my Mother and brother are coming over from NL. This semester is even worse than last one as they have given us so much todo and not enough time to do it in. Well at least i got my Shaders almost done and Physics is coming along nicely as well.

Monday, 10 March 2008

Shaders Continued

I changed the shader i showed you yesterday into looking a bit more realistic. This is done by actually texturing the terrain with its approriate texture instead of assigning colors to heights, although that approach is still used for the water color. I also added a transparent reflection map for the water implemented as a pixel shader, i later still wish to add refraction to it so it looks more realistic. Here is a current screen shot:

Sunday, 9 March 2008

Birthday and Shaders

So last Friday i held my birthday party here at Cranbrook Avenue, it actually turned out to be a better party than i had expected. I got so drunk that i cant even remember the last part of the evening, its all a blur now. And to finish the birthday we went to a metal club last night, which is always good as the drinks there are cheap.

On another note i have been doing a bit of shader programming and here is a screen shot of a procedurally colored terrain:

Wednesday, 13 February 2008

New Video of The ACW

I uploaded a new version of the video of my game today this is the final version and high and low quality versions are found at http:://paul.walterheck.com/

Thursday, 13 December 2007

It's done

Finally i am about to hand in my coursework and have vacation. I really need a vacation at the moment, i have never in my life worked so hard.
Last two days were spend coding and cleaning up my code. I am really glad it's is done tomorrow or the day after I will put up the executables and resource files so you all can play it. It will be about 50Megs.

Thursday, 6 December 2007

Controller

Since I have my laptop I had to walk around my game with the keyboard. This is not easy when your used to using a game pad for this for 2 months, so I went out and bought a game pad today. I ended up buying an xbox 360 pad for windows, chose this because I kinda like the xbox controller anyway. The only thing is that the xbox controllers need a massive dead zone, and you can't calibrate it out with the windows controller options. So I had to code this out, although the main code is the same as a normal controller the buttons and axis on a xbox controller are different, so that required a new class. Only I made some stupid mistakes like returning the value for moving left or right on the left thumb stick instead of the up down value. That cost me two hours of work to figure out. Well I finally have it working.
It beats the shit out of moving around with the keyboard it's a lot easier and smother you will probably notice that in the next movie I put up. If i got time to make another movie because the deadline to hand it in is Friday next week, and i still have a lot to do.

Wednesday, 5 December 2007

Mini map screen dumps

As promised here are the screen dumps for the mini map.

And here is the you tube movie. You can get the file here http://paul.walterheck.com/