Jeff Harris

Software engineer, hobbyist game developer

Special volume support

Im halfway most of the way through implementing specvols (special volumes). Special volumes are areas in the map where the environment changes (engine sound, gravity, viscosity etc.) Its how water and tunnels are implemented. They can have entry and exit sounds (the splash sound when going in and out of the water), and also the material for the reflective windscreen.

Im still experimenting with with PhysX forcefields to handle the gravity, otherwise everything else is done except the reflective windscreens which I’m doing next.

It will be a big milestone, as specvols are the last (as far as I know) environment feature outstanding :)

Edit: I’ve also had an idea for how to implement proper directional lighting. Screenshots coming…


Time for new screenshots

Time for some new screenshots! These show material modifiers (which affect bumpiness, skidmarks, tyre smoke, slipperiness etc), and cockpits (no steering animations or controls yet)

The first screenshot shows the default material - white tyre smoke and black skidmarks. I love the skidmarks :) .

In this one, the grass material has green skidmarks, is bumpy, and if you look closely, green tyre smoke (its easier to see in game).

This one shows the Eagle skidding along the frozen lake in the winter map. White smoke and white skid marks, and very slippery.

And now a couple of cockpit views. It took ages to figure out the placement of the cockpit image (the dashboard/steering wheel) compared to the 3d bonnet model, but comparing screenshots of the original game to these I think I’ve got it as good as I’m going to ever get it. There are some pretty cryptic lines in the car file describing the placement and configuration of the speedo and tacho - I think for now I’ll get the steering wheel actually steering then leave it for now.


C1 text file encryption

I finally tracked down Shayde! Shayde wrote the timedemo crack and encrypted file decoders for the C1 demo and full version. He very nicely dug around his old source code (this was 10 years ago now), found them, and sent me the code. I ported it to C#, and now it means that OpenCarma will be able to read both encrypted and unencrypted files.

This is awesome, because I want to release my engine along with the completely original, unmodified Carmageddon 1 demo files. This means you don’t have to have an old copy of Carmageddon lying around to try out my engine, and also I hopefully don’t annoy anyone at Stainless by distributing content from the full game!

Thanks again Shayde - even now I don’t know how you managed to work the encryption out :)

Edit: And tire tracks are now done, and look awesome :)