Archives for: June 2005


New Projects and Everything

Permalink 07:55:30, Categories: General  

I did it again! I started yet another new project. As if I don't have enough todo already smile

The new project is CrystalBlend. It is an alternative to the GameBlender project which you can use to create games from within Blender. The problem with GameBlender is that it is no longer maintained well and is showing its age. A Crystal Space based version of that promises a lot more for the future. Especially since it will use CEL and thus have access to the CEL game entity system. The first version will be compatible with the current GameBlender but the plan is to move to a new CEL based version pretty soon. In the end I hope we can even get a new CrystalBlend game UI in Blender itself. That would really be nice.

As to my other projects. All is still in progress. I'm waiting for the new levels from Xotic and when I get those I will start working on the first tech demo for Crystal Core?.



Things TODO

Permalink 20:36:05, Categories: General  

Now that the celtest demo is released I can start thinking about what to do next. Here is a list of things that I have in my head and that I would like to do:

  • Extend genmesh with alpha channel support for every color (similar to spr3d).
  • Redesign the collision detection system in CS so that it will become possible to initialize more efficient colliders for well known primitives like boxes and heightmaps. It is specifically for the last example that this will be useful as doing CD on a huge terrain is now a costly operation due to the high amount of triangles needed to represent the terrain for the CD plugin.
  • Add a new flag to disable rendering a mesh after a certain distance. This is particulary useful for portals. In the celtestdemo that I made there are several portals that are only visible in close range due to the way the level is made but the sectors all use frustvis so they are not culled at all except when they go outside view frustum.
  • Make a new visibility culler that tries to find out when portals are invisible and doesn't worry a lot about the rest. A more general version of this would be a culler that only attempts to cull 'expensive' objects.
  • I'm considering adding a more general flag system for objects. Currently there are three ways to attach flags to a mesh. You can attach it to iMeshWrapper, to the iMeshObject, or to iVisibilityObject. The problem is that you can't choose. Some flags go to that interface and cannot be used elsewhere. From the interpretation of the flag it is not always easy to guess where it should go. I wonder if we shouldn't have a more generic flag system that is based on string ID's similar to how the event system will work.
  • I also want to work on the CEL pathfinding class. I need to find out how to use it and I would like to redesign it a bit.
  • CEL needs a new trigger for Line Of Sight.
  • CEL needs a new trigger for when two objects collide.
  • I would also like a 'notification' property class in CEL that can be used as a kind of reporter for in game messages.
  • I need to work on pcmover, pcspawn, and pcnpcmove in CEL too.
  • And finally I still have so many ideas for my celtest demo level smile

So. I think I still have a little bit of work to do.




Twisted Levels

Permalink 21:52:31, Categories: General  

Yesterday and a bit of today I worked hard on a complicated corridor in my new celtest level. It was complicated because it had to follow the curve of another object and in the mean time I had to open windows between the corridor and the other object. When I later tried out the level I discovered that the new corridor ran straight through another part of the level that I put in another sector for optimization purposes. Since the new corridor was so complicated to make I had no choice but to change the older corridors that intersected the new areas. Luckily they were not complicated so this part was not very hard. But in addition to those corridors there was also an elevator that intersected the new corridors. I couldn't easily move that elevator so I decided to cut the new corridor in two sections with the elevator in the middle. All in all it turned out nicely.

I just upgraded to blender 2.37. I'm really starting to like this tool a lot. In 2.37 there are again a few new additional tools that make it a lot easier to manipulate and transform your meshes. My favorite functions in Blender are extrude, subdivide, and split. Extrude is extremely useful to enlarge areas and give walls thickness. The only thing is that you need to be careful that all normals are facing the right direction. Subdivide is very useful if you have made some room or corridor and you want to add a new door in a wall. First you split the wall from the rest of the mesh and then you subdivide it (with or without the 'Beauty' option). After that you can go to edge select mode and drag the edges so that you get the right size for the door. Then you remove the face and you have a door. The reason to split the wall before doing a subdivide is to make sure that the subdivision will not cause adjacent faces to be triangulized. You first want to subdivide the wall on its own. Later on you can then remove double vertices in the mesh to ensure that all is connected properly again.




And the story continues

Permalink 21:00:39, Categories: General  

Well the new level is progressing very nicely now. I'm using the textures from Xotic which he made for the Crystal Core levels and with those textures it is very easy for me to make a very big Star Wars lookalike level. It looks a lot cooler then current celtest level biggrin When I started making the level I didn't think of using the textures from Xotic so the first part of the level doesn't look as nice. I'm probably going to create that again.

Currently I'm fully concentrating on the level but during building of that level I found out that there are still lots of things to do on the code side. Here is a small summary:

  • Fix blend2cs for hierarchical transformations. It is hard to find information on how to correctly interprete the loc, dloc, parentinv, orig, and other fields in the .blend file though.
  • Add support for pseudo-dynamic lights to blend2cs.
  • Add support for animating lights in the quest sequence manager. Also a pclight property class is required for persistence.
  • Add a solution for the stuck-in-door problem. Most likely I'm just going to disable CD on the door as soon as it is open.
  • A new quest reward to reposition an entity (can be used for a teleporter device).

Today I fixed an important bug in the static lightmap calculator. Apparently shadows didn't cast through portals. For some obscure reason the code that marked shadows relevant was removed. It was not easy to revive that code so I just consider all shadows relevant now.

That's it for now.


June 2005
Mon Tue Wed Thu Fri Sat Sun
 << < Current> >>
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30      




XML Feeds

What is this?

powered by