Archival snapshot of the Virtual World Entertainment Tesla cockpit software, 1994-1996: MUNGA engine and L4 pod layer source (Borland C++ 5.0), BT/RP game code, and game content (models, audio, maps, gauges, Division renderer data). Includes third-party libraries: Division dVS/DPL graphics, HMI SOS audio, WATTCP networking. Files are preserved byte-for-byte (.gitattributes disables all line-ending conversion). README.md documents the layout, target hardware, and toolchain. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
148 lines
3.9 KiB
C++
148 lines
3.9 KiB
C++
//===========================================================================//
|
|
// File: l4vidper.hpp //
|
|
// Project: MUNGA Brick: Video Renderer Manager //
|
|
// Contents: Interface specification Video performance monitoring renderables//
|
|
//---------------------------------------------------------------------------//
|
|
// Date Who Modification //
|
|
// -------- --- ---------------------------------------------------------- //
|
|
// 03/05/96 GAC initial code //
|
|
//---------------------------------------------------------------------------//
|
|
// Copyright (C) 1995, Virtual World Entertainment, Inc. //
|
|
// All Rights reserved worldwide //
|
|
// This unpublished sourcecode is PROPRIETARY and CONFIDENTIAL //
|
|
//===========================================================================//
|
|
|
|
#if !defined(L4VIDPER_HPP)
|
|
# define L4VIDPER_HPP
|
|
|
|
# if !defined(L4VIDRND_HPP)
|
|
# include "l4vidrnd.hpp"
|
|
# endif
|
|
|
|
# if !defined(ROTATION_HPP)
|
|
# include <rotation.hpp>
|
|
# endif
|
|
|
|
# if !defined(RETICLE_HPP)
|
|
# include <reticle.hpp>
|
|
# endif
|
|
|
|
# if !defined(SIMULATE_HPP)
|
|
# include <simulate.hpp>
|
|
# endif
|
|
|
|
# if !defined(LINMTRX_HPP)
|
|
# include <linmtrx.hpp>
|
|
# endif
|
|
|
|
#include <dpl.h>
|
|
#include <dplutils.h>
|
|
#include <dpl_2d.h>
|
|
|
|
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
// StripChartRenderable
|
|
//
|
|
class StripChartRenderable:
|
|
public VideoRenderable
|
|
{
|
|
public:
|
|
StripChartRenderable(
|
|
Entity *entity, // Entity to attach the renderable to
|
|
ExecutionType execution_type, // How/when to execute the renderable
|
|
dpl_VIEW *this_view, // the view associated with our eye
|
|
float left,
|
|
float right,
|
|
float top,
|
|
float bottom,
|
|
int max_samples, // The number of samples to hold
|
|
int max_value, // The maximum value allowed
|
|
int min_value, // the minimum value allowed
|
|
int *value_to_chart, // the value we will be graphing
|
|
int update_interval); // How frequently (in frames) to update the graphics
|
|
|
|
~StripChartRenderable();
|
|
|
|
Logical
|
|
TestInstance() const;
|
|
|
|
void
|
|
Execute();
|
|
|
|
protected:
|
|
dpl_VIEW
|
|
*myView;
|
|
dpl2d_DISPLAY
|
|
*mySystemDisplayList,
|
|
*myDisplayList;
|
|
int
|
|
myMaxSamples,
|
|
myMaxValue,
|
|
myMinValue,
|
|
*myValue,
|
|
*myValueStorage,
|
|
myUpdateInterval,
|
|
myFrameCount,
|
|
myCurrentSample;
|
|
float
|
|
myLeft,
|
|
myRight,
|
|
myTop,
|
|
myBottom;
|
|
|
|
};
|
|
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
// RendererChartRenderable
|
|
//
|
|
class RendererChartRenderable:
|
|
public VideoRenderable
|
|
{
|
|
public:
|
|
RendererChartRenderable(
|
|
Entity *entity, // Entity to attach the renderable to
|
|
ExecutionType execution_type, // How/when to execute the renderable
|
|
dpl_VIEW *this_view, // the view associated with our eye
|
|
float left,
|
|
float right,
|
|
float top,
|
|
float bottom,
|
|
int max_samples, // The number of samples to hold
|
|
int max_value, // The maximum value allowed
|
|
int min_value, // the minimum value allowed
|
|
int update_interval); // How frequently (in frames) to update the graphics
|
|
|
|
~RendererChartRenderable();
|
|
|
|
Logical
|
|
TestInstance() const;
|
|
|
|
void
|
|
Execute();
|
|
|
|
protected:
|
|
dpl_VIEW
|
|
*myView;
|
|
dpl2d_DISPLAY
|
|
*mySystemDisplayList,
|
|
*myDisplayList;
|
|
int
|
|
*myCullStorage,
|
|
*myDrawStorage,
|
|
*myFrameStorage,
|
|
*myPixelPlanesStorage,
|
|
*myPrimativeStorage,
|
|
myMaxSamples,
|
|
myMaxValue,
|
|
myMinValue,
|
|
myUpdateInterval,
|
|
myFrameCount,
|
|
myCurrentSample;
|
|
float
|
|
myLeft,
|
|
myRight,
|
|
myTop,
|
|
myBottom;
|
|
|
|
};
|
|
|
|
|
|
#endif |