Cyl Techdemo #2

It’s been a while, but we’ve got something special for you: Our second techdemo!

Our focus for this techdemo:

  • Better dialog system.
  • Sounds
  • Bigger room.
  • (Dynamic) Lighting.
  • Postprocessing (Edge Detection).

We haven’t established any goals for our next demo. Anyhows, the system requirements have changed a bit. A pixel shader 3.0 video card is now required to run the demo. Also you need to have the following frameworks installed on your machine. These are the same as the last time:

Download link: Cyl Techdemo #2

And of course, a gameplay video for the people incapable of running the demo themselves:

Hope you all enjoy it. We’re going to celebrate the holidays with our families now. Merry Christmas and a happy new year!


Exporting object properties with Blender

Time for a small technical article for our fellow XNA programmers.

A few days ago I read about exporting Opaque Data from 3ds max/Maya to XNA (link). Till now, we interpreted the names of the objects in Blender for special objects (for example the spawn point of the player would be named spawn_player). The drawback is that the length of the name is limited, and the names will get very messy when using multiple tags.

When looking around in Blender I found that there is the option to give each object in the scene some properties. These options are located under the Logic Panel (F4). And looks like this:

Object Properties in Blender

Object Properties in Blender

As you can see, I’ve added a boolean property with the name “spawnpoint” and the value true to the object. Now I’ve modified the the FBX exporter modified for XNA to also export these properties (download available at the bottom of the post). All types, except for the timer, are supported.

Now I can import this model in XNA using a Custom Model Processor. The code for this example should look something like this:

public class CustomModelProcessor : ModelProcessor
public override ModelContent Process(NodeContent input,
ContentProcessorContext context)
Vector3? spawnpoint = null;
for (int i = 0; i < input.Children.Count; i++) { NodeContent child = input.Children[i]; if (child.OpaqueData.ContainsKey("spawnpoint")) { bool isSpawnpoint = (bool)child.OpaqueData["spawnpoint"]; if (isSpawnpoint) { spawnpoint = child.Transform.Translation; input.Children.Remove(child); } } } ModelContent model = base.Process(input, context); if (spawnpoint != null) { model.Tag = (Vector3) spawnpoint; } return model; } } [/sourcecode] Also, Blender's Y-axis is XNA's Z-Axis, and vice-versa. The exporter can also rotate the model, so up in Blender is up in XNA. I've just commented out the line, just edit the exporer script with your favorite text editor and uncomment (remove the '#') the following line: # GLOBAL_MATRIX = GLOBAL_MATRIX * RotationMatrix(-90, 4, 'x') Download the exporter script: HERE

(Windows users: Put it in your %APPDATA%\Blender Foundation\Blender\.blender\scripts folder).

Special thanks to Lynch3 at #xna on EFnet for helping me out with the FBX file syntax.


Fiddeling with XNA effects

I know we’ve released our tech demo yesterday, but we haven’t stopped there. Today I cleaned up the code a lot, and started messing around with different effects in XNA. Just wanted to share our cel-shaded Cyl!

Cyl Cel Shaded

Cel-Shaded Cyl

This does not mean the final game will be fully cel-shaded. We’re just exploring our possibilities ;-).


Techdemo #1

Hello! This is my first post for Project Cyl, and I hope I have something exciting for you all.

When insanityensues started blogging a few weeks ago, I started to learn how to develop games in XNA. Since I’ve got no prior (3D) game programming experience, there was a lot for me to learn. We now have a small demo to show you what we’ve been up too.

Our main focus with this “Techdemo” is to show you how the game would feel like to play. After going through a lot of different options, we decided to go with a rather classic point and click interface, but in a 3D environment.

Implemented features:

  • Point and click mouse control.
  • Camera moving along a rail which has been created in Blender.
  • Interaction with an NPC using a very simple dialog system
  • Animation works, but we’re still using the SkinnedModelProcessor, example provided by the XNA Creators Club.

We’ve not yet implemented any kind of special lightning, postprocessing, particles, sounds, etcetera. This is going to be the first of many techdemos, to share with you our progress in creating the game engine.

Fair bit of things to know:

  • Lots of bugs to squash and no, there’s no special points or thingy when you get them all.
  • It comes with an editable config.ini, where you can set your resolution and a bit of settings. Yes, in notepad. We’ll work on that too. Don’t make any spelling errors. It’s quite a delicate little config file.
  • There’s a little bug with collision detection. If you try hard enough, you can walk through the big floating head. But we’ll be overhauling the collision system anyways soon, so, suck it up and deal with it! Heh, nah, we just wanted to give you this now, we’ll fix it in the next techdemo.


Okay, now you want to get it. But hold your horses, you need two extra applications to be able to run the demo:

(Yes, I know, sorry, it’s windows only)

The techdemo can be downloaded: here. Just extract it and run CylTechDemo1.exe.


For the non-Windows users and the people who just don’t feel like downloading, have a youtube:

If you have any question feel free to reply to this post, or email me: michiel |at| emon |dot| nl

Enjoy the demo!



Because, I hate my own work and it’s kinda hard to explain to a concept artist what exactly it is we’re looking for!

Project Cyl - Moodboard

Mood board

Click it to see the full thing. It’s quite… big. Hope this’ll help!


Second Concept Art!

Oh boy, oh boy. We need a concept artist, but until then, I will be doing all this stuff so, here’s a new piece of concept art. The first phase of Cyl! Sorta worked out! All detailed like and whatnot! Have a look, comment, critique, give me ideas! Tell me what you think!

Concept art of Cyl Phase 1

Concept art of Cyl Phase 1


Open Development (YAY)

Project Cyl will feature something we’d like to call “Open Development”. It’s kind of like Open-Source, but not… quite. We won’t be sharing coding with you, so you won’t be able to recreate our game, but we will tell you nearly everything. And when I say that, I mean it. We will tell you the story (first draft got unlocked this morning, after having been password protected for a day, it’s here: https://projectcyl.wordpress.com/2008/12/01/the-story-so-far/ Warning: May Contain Spoilers), we will tell you what we’re working on in XNA (currently, collision detection), and we’ll share any and all art with you! Well, not 3D files, but concept art, renders, little movies, everything. We’ve got a lot of work ahead of us and any and all feedback is welcome. So, we’ll try and post here every single day, sometimes twice a day, and expect some videos from the engine soon!

Keep looking everyone! Thanks for checking up on us.


First concept art

I feel special. Like a daddy special. I am making babies! IT LIVES! Okay, no, it doesn’t. It’s just a static image showing the (current) evolution of our main character. Hit me up with ideas for changes, better progression, different looks. Heck, don’t hesitate to sketch some stuff and put it online, or mail it to me at:


Anyways, here goes:

Cyl's Concept Art

Cyl's Concept Art

October 2020