0% found this document useful (0 votes)
16 views3 pages

CPU Flowchart for 3D Graphics System

The document describes a 3D graphics system with multiple processes for rendering, loading, and updating. The rendering process draws each frame using primitive objects. The loading process splits terrain loading across threads to improve load time. The updating process sets the simulation time and updates physics, AI, and signals each frame.

Uploaded by

blogeraryan
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
16 views3 pages

CPU Flowchart for 3D Graphics System

The document describes a 3D graphics system with multiple processes for rendering, loading, and updating. The rendering process draws each frame using primitive objects. The loading process splits terrain loading across threads to improve load time. The updating process sets the simulation time and updates physics, AI, and signals each frame.

Uploaded by

blogeraryan
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

STARTING

PROGRAM

Main(Act.)

Construct Simulator( for Act.)

Construct Viewer3D( for Sim.)

Construct RenderProcess()

[Link]()

Construct LoaderProcess()

Construct UpdaterProcess()

[Link]()

[Link]()

RenderProcess
( XNA Game Class )
[Link]()

[Link]()

[Link]() Improving Load Time STARTING


[Link]() could benefit from 3D GRAPHICS
[Link]() additional multiprocessing. It is CPU limited
(vs Disk limited ) and it shouldn’t be too hard to
SYSTEM
[Link]() split the loading task off into multiple processor
[Link]() threads, one for each tile.
SceneryDrawerLoad()
TrainDrawerLoad()
[Link]()
[Link]()
LoaderProcess

UpaterProcess
[Link]()

[Link]()
Sets Time – RealTime and ClockTime
RenderFrame
[Link]()
[Link]()
FRAME 1 - physics
- ai
Draws Nothing - signals

[Link]() [Link] UserInput()


- camera
- player loco
- game control

FRAME 2
Must wait for the [Link]()
renderframe data before it - camera
can begin to draw. - sky
- terrain
- scenery
- trains
- info

RenderFrame

[Link]() [Link]()
- terrain
- scenery
RenderFrame - trains
Camera and Train Locations
[Link]() REPEATS EACH FRAME

[Link]() [Link]()
[Link]()
- physics
For each Primitive … - TerrainDrawerLoad()
- ai
- signals
[Link]()
[Link]()
- SceneryDrawerLoad()

[Link]()
[Link]()
- TrainDrawerLoad()
[Link] UserInput() HandleUserInput only runs
[Link]() - camera when RenderProcess signals
[Link]() - player loco new input is ready.
- game control
[Link]()
[Link]()

[Link]() [Link]()
- camera 100 mS
[Link]()
- sky
[Link]() - terrain
- scenery
[Link]()
- trains
[Link]() - info
[Link]()

[Link]()
[Link]()
.
.
.

Shape File Additions/Deletions


[Link]()
- terrain LoaderPrep runs every 100 mS
RenderFrame - scenery or when data is available
- trains
List of Camera and Train Locations
primitives

Normally UpdaterProcess
will be waiting for
[Link]() RenderProcess.
HandleUser
Input runs [Link]()
every 30 ms

[Link]() RenderFrame

You might also like