JurassicParkTrespasser

A git-based fork of the Jurassic Park: Trespasser source code.

jurassic-park · jurassic-park-trespasser
入门
GitHub在线演示
Stars:112
License:未知
更新:2025/10/23

README

Jurassic Park: Trespasser

A git-based fork of the Jurassic Park: Trespasser source code.

Discord Server

Click the banner or link below to join the server

Link: https://discord.gg/5EngSvu

Solution Overview

ProjectsGeneratesNotes:
AIArtificial Intelligence subsystemA lot of code unused since most traits had to be disabled.
AI TestJP2_PC.exeA standalone program allowing to test AI with graphics.
AudioAudio.libThe audio sub-system static library featuring the "real-time Foley".
BugBugs.exeA project concentrating all compiler errors. Since the team switched from VS4 to VS4.1 to VS4.2 to VS6.0 it was useful
CollisionEditorCollisionEditor.exeSound effects editor to test the audio engine (very powerful at the time)
EntityDBaseEntityDBase.libClasses representing all objects in the game.
FileFile.libAbstraction classes for File and Images used to build the Groff archives.
File TestFileTest for the file and image abstractions.
GameGame.libGlue, triggers, Player, Gun classes.
GeomDBaseGeomDBase.libThe 3D representation (Geometry) of all objects defined in EntityDBase.
GroffBuildGroffBuild.exeThe tool in charge of gathering all game assets (3D, sounds, maps) in one GOFF file.
GroffExpGroffExp.dleThe DLL loaded by 3DS Max that export all data to GOFF sections. This was originally outsourced to another dev and is standalone.
GUIAppGUIApp.exeA wrapper around the game. The GUI allows changing the game values at runtime for testing. Like the console allowing to change the CVAR in Quake engines.
LoaderLoader.libThe library loading GOFF assets to RAM.
MathMath.libThe math library (features a fInvSqrt that is not as good as Quake III's InvSqrt since it uses a lookup table but also uses Newton-Raphson).
Math TestMathTest.exeA few functions to test the speed of the math routines.
PhysicsPhysics.libThe pelvis heavy, penalty force-based Physic engine library.
PhysicsTestPhysicsTest.exeA sandbox level where physic can be tested.
PipeLineTestPipeLineTest.exeTestbed for the rendering pipeline
ProcessorProcessor.dllUses CPUID to detect 8086, 80286, 28386 or a 80486, Pentium, K6-3and K7, Detect Floating Point Unit and CPU speed. Loaded at runtime by System project in order to set automatically details level (based on CPU Mhz).
QuantizerToolQuantizerTool.exeAborted project. Does nothing.
Render3DRender3D.libThe hybrid software/Direct3D renderer.
ScreenRenderDWIScreenRenderDWI.libPentium, PentiumPro and K6_3D specific code ASM optimized code for scanline and cache rendering. Direct3D code.
StdStd.libExtension of STL. A horrible mess of specific containers of containers of set of hashmap. Arg.
SystemSystem.libContains scheduler, Virtual Memory. Thread control. SetupForSelfModifyingCode (via modifying the page tables associated with the application). Many things are not used.
trespasstrespass.exeThe game we played.
ViewView.libRaster to window code. Blitter, DirectDraw, Direct3D, software palette viewers.
WaveTestWaveTest.exeShell to test wave modeling.
WinShellWinShell.libwin32 windows creation and management library

Production Pipeline

Sanglard, F. (2014). "Solution Overview" [list] & "Production Pipeline" [image].
Available at: http://fabiensanglard.net/trespasser [Accessed 17 Oct. 2018].