Wednesday, September 28, 2005

Mid-week update

Added the following:
  • Camera movement using the AWSD keys
  • Adding of Point Light's to the scene (creates the light at the current position of the camera)
  • Added ability to select an X file in the scene with the mouse

Next task on the list:

  • Load more than one x file into the scene

Monday, September 26, 2005

Interactivity.. finally


Here is yet another image of the Sadism Editor... its finally starting to take shape.
I've added support for the Properties Grid, which allows on the fly changes to the current scene.
I've also got the Tree View working, the root item is called "Scene", clicking this gives you the propertis for the scene, the same goes for clicking the Skybox, Light, or Camera node.

So here is what I've added:
  • Enable / Disable Fog in the scene
  • Selecting the fog colour from a color picker
  • Setting the fog start and end position
  • Enable / Disable light in the scene
  • Ability to load a single x file (no properties yet)
  • Loads a light (no properties yet)
  • Can set the camera position and position its looking at
  • Can remove textures from the skybox
  • Can set texture level of detail per texture for the skybox
  • Can hide/show the skybox

Tomorrow I will try add support to add more than one object and light, also need to add support to move the camera around using the "WASD" keys, and I still need to add support to select an object in the DX view using the mouse.

Sunday, September 25, 2005

Mouse Control


Well I've fully implemented mouse movement from within the editor, which basically means that you click within the 3D View and hold the mouse button to look around. This took a good few hours to get work exactly as I wanted it, but its finally done... so now im moving going to be working on the following in the editor:
  • Loading an X file into the scene
  • Selecting the mesh file using the mouse
  • Displaying a selection box around the selected mesh object

I also changed the editor look a bit more as you can see above, and got some cool new icons from Neil (he does all the artwork).

Friday, September 23, 2005

This weeks updates.

Fixed a problem I was having with Direct Input within a windows form control.

Changed the layout of the Sadism Editor, decided to drop the original 4 window layout and go with a single larger "DirectX" window but have the option of changing to wireframe and selecting Top / Front / Left view from within that window.

I changed it because its a game editor and not a 3D CAD program, in other words it for placing models instead of drawing models.

Here is an updated screenshot, still a lot of work to be done as I've spent very little time on the editor so far. The big grey window will be used to browse textures/entities/music/sfx/scripting etc. The blue section will probably be a properties or about section.

I've also added Animation support to the engine but it does not seem to be working quite right just yet.

Sunday, September 18, 2005

Lighting

Well i've added the rotation and scale properties support for the entities, I also added a Light class to handle all lighting... still needs a load of work and features, here is a screenshot of the same scene as before but now with a directional light:















Probably going to add the animation next and then come back to the light class later. Some extra features I want to implement for the light class:
  • Flickering (to emulate candles, faulty lights, etc.)
  • Pulse (select min & max radius and rate of pulse, also min & max colour option)
  • Chronos (pass in the sprite to be used)
  • Lens flare

Saturday, September 17, 2005

Saturday Night

Well, spent the Friday night partying, so decided to spend the Saturday night working on The Sadism Engine.

Spent quite a bit of time working on it, mainly tweaks and improvements to the coding to make it more generic.

There are no new features, however I have moved everything engine related over to the Engine DLL. Oh and I started improving the EntityManager a bit, I have added two new properties:
  • Position (Vector3 - Controls the current position in world space)
  • isVisible (bool - True by default)
So now if you want to hide an object "entity" all you have to do is say: ex. Barrel.isVisible = False
and the engine will stop drawing it.

If I get some time on Sunday I will add a few more properties like Scale and Rotation, after that I'm going to try add a light supports, animation with bones, and normal mapping.

And once all that's done I will start looking at implementing some functionality into the Sadism Editor to make use of the Engines features.

Thursday, September 15, 2005

Quick update

Well its been a few weeks without an update... and thats mainly because I have nothing to update on!

Been really busy at work lately, something I have stuffed around with recently was face traking using a PS2 Eye-Toy camera to track where the persons head is. I'll post more info on that when it eventually becomes part of the engine.

The good news is that im not as busy anymore, so got some spare time again to work on the engine. Spent last night moving some more code into the SadismEngine.DLL.

Tonight I will try implement Tom Millers rendering loop (supposedly the fastest) into the DLL.

Hopefully will have a few more regular updates over the next few weeks.