Skip to content

Source code for Quantic Dream's in-house engine. This copy is combined from copies dated from April and July of 2006.

Notifications You must be signed in to change notification settings

data-dungeon/qdengine

Repository files navigation

Quantic Dream Engine Sources

Source code for Quantic Dream's in-house engine. This copy is combined from copies dated from April and July of 2006, which were obtained and sorted from an earlier leak from Sony's private developer forum.

A mirror with the original archives is available here.

This is available here for the sake of preservation, research and nothing more. Assets are not included (not that they were even available).

Mind that the source files seem to use ISO-8859-1 encoding, so be sure to configure that in your editor if you don't want to mess things up!

Further Observations

Missing Modules

Unfortunately this isn't 100% complete, as will become immediately evident on either trying to compile it or looking at Root.h (which includes nasty macros for mapping includes). Below is a list of modules I've confirmed are missing.

  • Plug-ins
  • COMTools
  • ExportTools
  • iam4_1
  • IAMAdmin
  • iamapp
  • iamlite
  • IAMEngine
  • IAMDatabaseBox
  • IamMiscEditors
  • IamViewers
  • IamGraphTool
  • IAMSourceControl
  • KernelCom
  • KernelNetwork
  • KernelPhysics
  • KernelServ
  • KernelSound
  • LUAEngine
  • mfc_wrapper
  • NonRegression
  • nonregressionLib
  • OldRenderer
  • QDDataSafe
  • ScriptInterface
  • SqlDb
  • StatTools
  • TestCore
  • Vm
  • XmlTools

So what's here is essentially a fraction of everything that would've existed originally.

While I've not attempted to compile it myself, having already suspected it was incomplete, it looks like some of the more critical things that are missing are the remaining Kernel* modules (such as KernelCom) and ScriptInterface, though these may have further dependencies (ScriptInterface may depend on LUAEngine, for instance).

If you follow anything back far enough through its parent class, you'll eventually likely find something that's missing. For instance, many of the entity classes have a COMMUNICATOR parent class, which would've been implemented under KernelCom; again, that's missing.

KernelPhysics would've also likely depended on Ageia's PhysX engine, which would've been a library called Novodex at the time (there are leaked copies of this though).

History

Mind that this code would be from an incredibly early period of Heavy Rain's development, given that game didn't even release until 2010. It's from the same year that Quantic Dream produced their "The Casting" tech demo.

It appears that QD started developing this engine in the late 2000s (November perhaps), so it doesn't appear to have any ancestory with the technology behind Omikron, at least not directly. It's likely this engine was originally developed and first used alongside Fahrenheit.

As a mantter of fact, there are two references to Fahrenheit here. One under StreamHandleBlendShapeAnim.cpp and another under RuntimeXBox.vcproj.

Another game that QD worked on prior to Fahrenheit, but never shipped, was Quark, but there don't seem to be any references to that game though it's not outside the realms of possibilities that game was using this technology too - however this seems to post-date it (Quark was revealed in August of 2000, but this technology seems to have started development in November 2000).

That said, there is a very minor reference to Nomad Soul 2 under RuntimeHeader.cpp.

About

Source code for Quantic Dream's in-house engine. This copy is combined from copies dated from April and July of 2006.

Topics

Resources

Stars

Watchers

Forks

Languages