Skip to content

Summary

Members Descriptions
classACarPawnBase
classAIntervieweeActor AIntervieweeActor
classFSE100Capstone
classUAIConversationOrchestratorSubsystem UAIConversationOrchestratorSubsystem
classUAIToolInterpreterSubsystem UAIToolInterpreterSubsystem
classUAudioInputSubsystem UAudioInputSubsystem
classUAudioProcessingSubsystem
classUMyUnrealEdEngine
classUOpenAiApiSubsystem UOpenAiApiSubsystem
classUWebSocketSubsystem UWebSocketSubsystem

class ACarPawnBase

class ACarPawnBase
  : public APawn

Summary

Members Descriptions
publicACarPawnBase()
public virtual voidTick(float DeltaTime)
public virtual voidSetupPlayerInputComponent(class UInputComponent * PlayerInputComponent)
public voidLook(const FInputActionValue & Value)
public voidDisableLook(const FInputActionValue & Value)
public voidEnableLook(const FInputActionValue & Value)
protected class UInputAction *LookAction
protected class UInputAction *LookHoldAction
protected boolbLookEnabled
protected class UCameraComponent *DriverCamera
protected class USceneComponent *Root
protected UInputMappingContext *DefaultMappingContext
protected virtual voidBeginPlay()
protected virtual voidNotifyControllerChanged()

Members

publicACarPawnBase()

public virtual voidTick(float DeltaTime)

public virtual voidSetupPlayerInputComponent(class UInputComponent * PlayerInputComponent)

public voidLook(const FInputActionValue & Value)

public voidDisableLook(const FInputActionValue & Value)

public voidEnableLook(const FInputActionValue & Value)

protected class UInputAction *LookAction

protected class UInputAction *LookHoldAction

protected boolbLookEnabled

protected class UCameraComponent *DriverCamera

protected class USceneComponent *Root

protected UInputMappingContext *DefaultMappingContext

protected virtual voidBeginPlay()

protected virtual voidNotifyControllerChanged()

class AIntervieweeActor

class AIntervieweeActor
  : public AActor

AIntervieweeActor

A class representing an interviewee actor in the game. This actor handles audio responses, subtitles, and interactions with AI subsystems.

Summary

Members Descriptions
public FOnSubtitleUpdatedOnSubtitleUpdated Delegate triggered when subtitles are updated.
public FOnResponseTranscriptDeltaReceivedOnTranscriptDeltaReceived Delegate triggered when a transcript delta is received.
public FOnInputSpeechStartedOnInputSpeechStarted Delegate triggered when input speech starts.
public FOnTalkingStartedOnTalkingStarted Delegate triggered when talking starts.
public FOnTalkingStoppedOnTalkingStopped Delegate triggered when talking stops.
public FOnSetEmotionOnSetEmotion Delegate triggered to set the emotion of the actor.
public USoundWaveProcedural *AIResponseSoundWave Sound wave used for AI responses.
public UAudioComponent *AudioComponent Audio component used to play audio responses.
publicAIntervieweeActor()
public virtual voidTick(float DeltaTime)
protected virtual voidBeginPlay()

Members

public FOnSubtitleUpdatedOnSubtitleUpdated

Delegate triggered when subtitles are updated.

public FOnResponseTranscriptDeltaReceivedOnTranscriptDeltaReceived

Delegate triggered when a transcript delta is received.

public FOnInputSpeechStartedOnInputSpeechStarted

Delegate triggered when input speech starts.

public FOnTalkingStartedOnTalkingStarted

Delegate triggered when talking starts.

public FOnTalkingStoppedOnTalkingStopped

Delegate triggered when talking stops.

public FOnSetEmotionOnSetEmotion

Delegate triggered to set the emotion of the actor.

public USoundWaveProcedural *AIResponseSoundWave

Sound wave used for AI responses.

public UAudioComponent *AudioComponent

Audio component used to play audio responses.

publicAIntervieweeActor()

public virtual voidTick(float DeltaTime)

protected virtual voidBeginPlay()

class FSE100Capstone

class FSE100Capstone
  : public ModuleRules

Summary

Members Descriptions
public inlineFSE100Capstone(ReadOnlyTargetRules Target)

Members

public inlineFSE100Capstone(ReadOnlyTargetRules Target)

class UAIConversationOrchestratorSubsystem

class UAIConversationOrchestratorSubsystem
  : public UGameInstanceSubsystem

UAIConversationOrchestratorSubsystem

A game instance subsystem that orchestrates AI conversations by coordinating between audio input and OpenAI API subsystems. This subsystem manages the flow of audio data from capture to processing by the AI system.

Summary

Members Descriptions
public virtual voidInitialize(FSubsystemCollectionBase & Collection) Initializes the subsystem and sets up necessary dependencies.
public virtual voidDeinitialize() Cleans up the subsystem and releases resources.

Members

public virtual voidInitialize(FSubsystemCollectionBase & Collection)

Initializes the subsystem and sets up necessary dependencies.

Parameters

  • Collection The collection of subsystems being initialized.

public virtual voidDeinitialize()

Cleans up the subsystem and releases resources.

class UAIToolInterpreterSubsystem

class UAIToolInterpreterSubsystem
  : public UGameInstanceSubsystem

UAIToolInterpreterSubsystem

A game instance subsystem that interprets and executes AI tool calls from the OpenAI API. This subsystem listens for function calls from the AI and handles them accordingly, such as updating emotions or other game state based on AI decisions.

Summary

Members Descriptions
public FOnSetEmotionOnSetEmotion Delegate triggered when the AI requests an emotion change. Broadcasts the emotion string to be applied to relevant actors.
public virtual voidInitialize(FSubsystemCollectionBase & Collection) Initializes the subsystem and sets up connections to other subsystems.
public virtual voidDeinitialize() Cleans up the subsystem and releases resources.

Members

public FOnSetEmotionOnSetEmotion

Delegate triggered when the AI requests an emotion change. Broadcasts the emotion string to be applied to relevant actors.

public virtual voidInitialize(FSubsystemCollectionBase & Collection)

Initializes the subsystem and sets up connections to other subsystems.

Parameters

  • Collection The collection of subsystems being initialized.

public virtual voidDeinitialize()

Cleans up the subsystem and releases resources.

class UAudioInputSubsystem

class UAudioInputSubsystem
  : public UGameInstanceSubsystem

UAudioInputSubsystem

A game instance subsystem that manages audio input capture from the microphone. This subsystem captures audio in real-time, processes it (downsamples to 24kHz mono and converts to PCM16 format), and broadcasts the audio chunks as base64-encoded strings for consumption by AI systems or other audio processing pipelines.

Summary

Members Descriptions
public FOnAudioCaptureStartedOnAudioCaptureStarted Delegate triggered when audio capture has started successfully.
public FOnAudioCaptureStoppedOnAudioCaptureStopped Delegate triggered when audio capture has stopped.
public FOnAudioChunkCapturedOnAudioChunkCaptured Delegate triggered when a new audio chunk has been captured and processed. The audio chunk is provided as a base64-encoded PCM16 string.
public virtual voidInitialize(FSubsystemCollectionBase & Collection) Initializes the subsystem and sets up audio capture components.
public virtual voidDeinitialize() Cleans up the subsystem, stops any active capture, and releases resources.
public voidStartCapturing() Starts capturing audio from the default microphone device. Triggers OnAudioCaptureStarted delegate when capture begins.
public voidStopCapturing() Stops capturing audio from the microphone. Triggers OnAudioCaptureStopped delegate when capture ends.

Members

public FOnAudioCaptureStartedOnAudioCaptureStarted

Delegate triggered when audio capture has started successfully.

public FOnAudioCaptureStoppedOnAudioCaptureStopped

Delegate triggered when audio capture has stopped.

public FOnAudioChunkCapturedOnAudioChunkCaptured

Delegate triggered when a new audio chunk has been captured and processed. The audio chunk is provided as a base64-encoded PCM16 string.

public virtual voidInitialize(FSubsystemCollectionBase & Collection)

Initializes the subsystem and sets up audio capture components.

Parameters

  • Collection The collection of subsystems being initialized.

public virtual voidDeinitialize()

Cleans up the subsystem, stops any active capture, and releases resources.

public voidStartCapturing()

Starts capturing audio from the default microphone device. Triggers OnAudioCaptureStarted delegate when capture begins.

public voidStopCapturing()

Stops capturing audio from the microphone. Triggers OnAudioCaptureStopped delegate when capture ends.

class UAudioProcessingSubsystem

class UAudioProcessingSubsystem
  : public UGameInstanceSubsystem

Summary

Members Descriptions
public virtual voidInitialize(FSubsystemCollectionBase & Collection)
public virtual voidDeinitialize()

Members

public virtual voidInitialize(FSubsystemCollectionBase & Collection)

public virtual voidDeinitialize()

class UMyUnrealEdEngine

class UMyUnrealEdEngine
  : public UUnrealEdEngine

Summary

Members Descriptions
public virtual voidInit(IEngineLoop * InEngineLoop)

Members

public virtual voidInit(IEngineLoop * InEngineLoop)

class UOpenAiApiSubsystem

class UOpenAiApiSubsystem
  : public UGameInstanceSubsystem

UOpenAiApiSubsystem

A game instance subsystem that manages real-time communication with OpenAI's Realtime API via WebSocket. This subsystem handles bidirectional streaming of audio and text data, processes AI responses including audio deltas and transcripts, and manages function calls from the AI. It supports session configuration updates and conversation item creation.

Summary

Members Descriptions
public FOnConnectedOnConnected Delegate triggered when successfully connected to the OpenAI WebSocket API.
public FOnResponseAudioDeltaReceivedOnResponseAudioDeltaReceived Delegate triggered when an audio response delta is received from OpenAI. Audio data is provided as base64-encoded PCM16 chunks.
public FOnResponseTranscriptDeltaReceivedOnResponseTranscriptDeltaReceived Delegate triggered when a transcript response delta is received from OpenAI. Text data is provided as string chunks representing the AI's spoken response.
public FOnInputSpeechStartedOnInputSpeechStarted Delegate triggered when the AI detects that user input speech has started.
public FOnInputSpeechStoppedOnInputSpeechStopped Delegate triggered when the AI detects that user input speech has stopped.
public FOnNewResponseOnNewResponse Delegate triggered when a new AI response has been created and is ready to process.
public FOnFunctionCallReceivedOnFunctionCallReceived Delegate triggered when the AI requests a function call. Contains a JSON object with function name and arguments.
public virtual voidInitialize(FSubsystemCollectionBase & Collection) Initializes the subsystem and sets up WebSocket connections.
public virtual voidDeinitialize() Cleans up the subsystem, closes WebSocket connections, and releases resources.
public voidSendAudioInputToAI(const FString & AudioChunkBase64) Sends audio input data to the OpenAI API for processing.
public voidCreateConversationItem(const TSharedPtr< FJsonObject > & ItemObject) Creates a new conversation item in the OpenAI session. Used to inject messages, function call results, or other conversation elements.
public voidUpdateSessionConfiguration(const TSharedPtr< FJsonObject > & SessionObject) Updates the OpenAI session configuration. Can be used to change settings like tools, instructions, etc.
public voidSendRawWebSocketMessage(const FString & PayloadString) Sends a raw JSON message through the WebSocket connection.

Members

public FOnConnectedOnConnected

Delegate triggered when successfully connected to the OpenAI WebSocket API.

public FOnResponseAudioDeltaReceivedOnResponseAudioDeltaReceived

Delegate triggered when an audio response delta is received from OpenAI. Audio data is provided as base64-encoded PCM16 chunks.

public FOnResponseTranscriptDeltaReceivedOnResponseTranscriptDeltaReceived

Delegate triggered when a transcript response delta is received from OpenAI. Text data is provided as string chunks representing the AI's spoken response.

public FOnInputSpeechStartedOnInputSpeechStarted

Delegate triggered when the AI detects that user input speech has started.

public FOnInputSpeechStoppedOnInputSpeechStopped

Delegate triggered when the AI detects that user input speech has stopped.

public FOnNewResponseOnNewResponse

Delegate triggered when a new AI response has been created and is ready to process.

public FOnFunctionCallReceivedOnFunctionCallReceived

Delegate triggered when the AI requests a function call. Contains a JSON object with function name and arguments.

public virtual voidInitialize(FSubsystemCollectionBase & Collection)

Initializes the subsystem and sets up WebSocket connections.

Parameters

  • Collection - The collection of subsystems being initialized.

public virtual voidDeinitialize()

Cleans up the subsystem, closes WebSocket connections, and releases resources.

public voidSendAudioInputToAI(const FString & AudioChunkBase64)

Sends audio input data to the OpenAI API for processing.

Parameters

  • AudioChunkBase64 - Base64-encoded audio chunk (PCM16 format, 24kHz mono).

public voidCreateConversationItem(const TSharedPtr< FJsonObject > & ItemObject)

Creates a new conversation item in the OpenAI session. Used to inject messages, function call results, or other conversation elements.

Parameters

  • ItemObject - JSON object representing the conversation item.

public voidUpdateSessionConfiguration(const TSharedPtr< FJsonObject > & SessionObject)

Updates the OpenAI session configuration. Can be used to change settings like tools, instructions, etc.

Parameters

  • SessionObject - JSON object containing the session configuration parameters.

public voidSendRawWebSocketMessage(const FString & PayloadString)

Sends a raw JSON message through the WebSocket connection.

Parameters

  • PayloadString - JSON string payload to send to the OpenAI API.

class UWebSocketSubsystem

class UWebSocketSubsystem
  : public UGameInstanceSubsystem

UWebSocketSubsystem

A game instance subsystem that manages WebSocket connections for real-time bidirectional communication with external services. This subsystem handles connection lifecycle, message sending/receiving, and error handling.

Summary

Members Descriptions
public FOnConnectedOnConnected Delegate triggered when the WebSocket connection is successfully established.
public FOnConnectionErrorOnConnectionError Delegate triggered when a connection error occurs. Provides the error message for debugging and user feedback.
public FOnMessageReceivedOnMessageReceived Delegate triggered when a message is received from the WebSocket server. Messages are provided as string data (typically JSON).
public FOnClosedOnClosed Delegate triggered when the WebSocket connection is closed. Provides status code, reason, and whether the closure was clean.
public virtual voidInitialize(FSubsystemCollectionBase & Collection) Initializes the subsystem and sets up the WebSocket connection.
public virtual voidDeinitialize() Cleans up the subsystem, closes the WebSocket connection, and releases resources.
public boolIsConnected() Checks if the WebSocket is currently connected.
public voidSendMessage(const FString & Message) Sends a message through the WebSocket connection.

Members

public FOnConnectedOnConnected

Delegate triggered when the WebSocket connection is successfully established.

public FOnConnectionErrorOnConnectionError

Delegate triggered when a connection error occurs. Provides the error message for debugging and user feedback.

public FOnMessageReceivedOnMessageReceived

Delegate triggered when a message is received from the WebSocket server. Messages are provided as string data (typically JSON).

public FOnClosedOnClosed

Delegate triggered when the WebSocket connection is closed. Provides status code, reason, and whether the closure was clean.

public virtual voidInitialize(FSubsystemCollectionBase & Collection)

Initializes the subsystem and sets up the WebSocket connection.

Parameters

  • Collection The collection of subsystems being initialized.

public virtual voidDeinitialize()

Cleans up the subsystem, closes the WebSocket connection, and releases resources.

public boolIsConnected()

Checks if the WebSocket is currently connected.

Returns

True if connected, false otherwise.

public voidSendMessage(const FString & Message)

Sends a message through the WebSocket connection.

Parameters

  • Message The message string to send (typically JSON).

Generated by Moxygen