Welcome to the latest edition of the Prey Weekly Update series. A few weeks
ago you were told you'd get an update from Venom games in the UK on the Xbox 360
version of Prey. That's what we're bringing you today. This week's update is not
from Chris at Human Head, but it's by Peter Johnson at Venom Games in the UK.
Chris will return next week with the next Prey Weekly Update. There's plenty to
read in Peter's update, so let's get right to it....
We started work in earnest on bringing Prey to the 360 in late June 2005,
although we had been looking at the code a little before that to ready ourselves
and plan our attack. It was amusing to see on some gaming forums that some
posters seemed to think that the announcement about it last month meant that we
had just started work on it, this is far from the case.
As our aim was to keep everything as faithful to the PC original as possible, we
knew it would be mainly a coding job, with relatively little work needed on the
art side. It broke down into a number of tasks - converting the engine itself to
get it running on the 360 platform, and the areas where we needed to make
changes to better suit the platform - such as the control system, the front end
and the integration of Xbox Live.
Peter Johnson of Venom Games
THE ENGINE
As I am sure regular readers of Chris’ column will know, “Prey” is based on an
enhanced version of the Doom3 engine. It was initially suggested to us that we
would use the conversion of this engine that was being done over at Raven to
bring “Quake 4” to the 360, but after waiting nearly 3 months for sight of that
code, and it being apparent when we saw it that those guys were very much still
in the process of development, shall we say, at the time- we felt that we had
little choice but to do it ourselves rather than spend the next six months
simply merging their code with Human Head’s without any forward progression
ourselves. Taking this approach meant it was then much more likely that we would
be in a position to resolve any problems we encountered.
In the last week of June 2005 Kevin Franklin, our lead coder here, and Ben Cosh
rolled up their sleeves and started to convert the Prey code base from scratch.
Their first move was to get the engine running on the PC in Direct X rather than
Open GL, and then port that code across onto 360. The approach of hitting the PC
first had the advantage that the turnaround time for compilation and execution
could be much shorter than it currently was on 360 at the time. The guys did a
great job- getting it running on 360, albeit at a low framerates, in around 8 or
9 weeks. There were still plenty of effects and graphical tricks to add at this
point, but already it had the distinctive look of “Prey” and now we could let
the rest of the programming team loose on it.
Prey really stretches the Doom3 engine, sometimes in ways it wasn’t designed
for. It aims to create a convincingly organic-looking alien world full of curves
and natural shapes from an engine designed around box-shaped rooms, and features
many additional shaders and special effects that take the visuals far beyond the
original Doom3 engine. This extra load meant the coding team had to work hard on
optimising the code, removing bottlenecks and spreading the load across the
three cores at the heart of the 360 to hit our target of a constant 30fps
framerate. We have also had one coder, Mick, working for the best part of 6
months using the 360 performance analysis tools to identify the slower areas of
code and rewrite, or in many cases replace routines with low-level machine code
to squeeze the best from the machine.
I feel confident in saying that we are now graphically pixel-perfect with the PC
version.
Page 2 of 3 »