It’s something I’ve been meaning to do for a while now, a kiting (possibly kite-boarding) simulator, the plan was to originally do it a Wiimote project, but they’re damn expensive on their own, and I already have a (much cheaper) Xbox 360 controller, so I figured I’d use this.
At the moment I’m daunting myself with the task of getting the physics sorted, I’m amazed at how, despite being a kiter for several years now, I’ve never really appreciated how much kites defy the laws of physics. To make the job easier I’ve implemented PhysX, though this means you’ll need PhysX installed on your own PC should you ever want to try out this creation.

First ever screenshot of the project, early days.
I’m currently toying around with PhysX, working out how best to build the kite with what the engine has to offer. Cloths seem an obvious choice for the bridle, except as far as I can work out, PhysX doesn’t yet support non-rectangular cloths, so for now, the bridle only looks remotely kite-like. I’m almost having to use cloths for the lines, as it’s the closest PhysX has to offer in similarity to lines, the problem here is that if i make the lines any less wider than they are in this screenshot, the engine struggles to handle the physics of so many vertices, (the engine works cloth by cutting it up into squares, with thinner lines, the squares are smaller, so a lot more have to be fitted in the length of the lines). There are several work-arounds to this problem,I’ll investigate them in due course. The other problem at the moment is attaching the lines to the kite, I wont go into the details of how it’s done, but you can see the results in the screenshot. For the purpose of this shot, the wind is simulated with an invisible force applied to the cloth, which is pinned into place at 5 points along the top and bottom of it (hence the ridges you can see in the kite). Where I’m going to go from here? Well, despite only just starting, I need to take time off for exam revision, and then I’ll decide.
… OK, so I played a few rounds of Company of Heroes, got bored and thought I’d resume coding, and now I have it flying, sort of. The way it works at the moment is I have five points along the top and bottom, as I squeeze the trigger, a corresponding vertical force is applied to each of these points, lifting the kite up with them, and the lines are dragged with them. another force is applied keeping the points spread out horizontally, or else the cloth would just crumple up as the wind pulls the centre of the kite backwards, bringing the two edges inwards. While it’s true that kites are designed so the wind causes the kite to spread out, thus this part of the simulation is accurate, they’re also designed so that the lift comes from all areas of the top surface of the kite, not just from the leading edge. You can see the five points along the leading edge because of a current problem I’m having with the cloth physics; either the cloth is too heavy, or too elastic, but either way, the result is you can see a sag between the points that shouldn’t be there. You can see I also have the same problem with the lines.

The kite flies, but the physics making it do so are flawed, and it can only go up and down.
The key issue here is there’s no way I can recreate wind tunnel physics to give realistic flight to an aerofoil, not only because I’m not an Aeronautical PhD, but also because my own pc (or anyone else’s, even most sophisticated, gaming rig) wouldn’t be able to handle the physics involved in processing the lift generated from all areas of the surface of the kite depending on wind, while the kiter is, in real-time, adjusting the shape of the kite by steering and adjusting the powers or brakes.
So I’m having to do what all game programmers do in situations like this, which is to cheat a little. I’m going to make a matrix of points across the surface of the kite. I will then need to devise, and tweak much, a formula for deriving an estimation for how much force the points should experience in different directions based on relative wind direction and strength, and the steering done by the kiter, to give a realistic look and feel, regardless of how it was worked out.
