Complete disaster-recovery snapshot: engine/game source, game data assets, VC6 toolchain + DX SDKs, build outputs, deployed game, and _UNUSED archive. Large binaries in Git LFS; text preserved byte-for-byte (core.autocrlf=false, no eol attributes). See RECOVERY.md for the one-clone rebuild procedure.
60 lines
2.2 KiB
C++
60 lines
2.2 KiB
C++
//===========================================================================//
|
|
// File: audiorenderer.hpp //
|
|
//---------------------------------------------------------------------------//
|
|
// Date Who Modification //
|
|
// -------- --- ---------------------------------------------------------- //
|
|
// 03/22/99 SMJ Initial coding. //
|
|
//---------------------------------------------------------------------------//
|
|
// Copyright (C) 1999, Microsoft Corporation //
|
|
// All Rights reserved worldwide //
|
|
// This unpublished sourcecode is PROPRIETARY and CONFIDENTIAL //
|
|
//===========================================================================//
|
|
|
|
#pragma once
|
|
|
|
#include "Adept.hpp"
|
|
#include "AudioChannel.hpp"
|
|
|
|
namespace Adept {
|
|
|
|
//##########################################################################
|
|
//######################### SpatializedChannel #######################
|
|
//##########################################################################
|
|
|
|
class SpatializedChannel:
|
|
public AudioChannel
|
|
{
|
|
public:
|
|
typedef AudioChannel BaseClass;
|
|
|
|
static void InitializeClass();
|
|
static void TerminateClass();
|
|
|
|
static ClassData *DefaultData;
|
|
|
|
void TestInstance() const;
|
|
|
|
SpatializedChannel(ClassData *class_data, int channel, int type);
|
|
~SpatializedChannel();
|
|
|
|
void Activate(AudioCommand *command);
|
|
|
|
void Execute(Stuff::Time till);
|
|
|
|
Stuff::Point3D m_position;
|
|
Stuff::Vector3D m_velocity;
|
|
Stuff::YawPitchRange m_bearing;
|
|
|
|
void SetPosition(const Stuff::Point3D &position)
|
|
{m_position = position; gosAudio_SetChannelSlider(m_channel, gosAudio_Position, -m_position.x, m_position.y, m_position.z);}
|
|
void SetVelocity(const Stuff::Vector3D &velocity)
|
|
{m_velocity = velocity; gosAudio_SetChannelSlider(m_channel, gosAudio_Velocity, -m_velocity.x, m_velocity.y, m_velocity.z);}
|
|
void SetBearing();
|
|
|
|
enum {
|
|
SpatializedProperties = gosAudio_Common|gosAudio_Volume|gosAudio_Position|gosAudio_MinMaxDistance, // |gosAudio_Velocity
|
|
};
|
|
};
|
|
|
|
}
|