Loading [MathJax]/extensions/tex2jax.js
ProtoTracer  1.0
Real-time 3D rendering and animation engine
All Classes Namespaces Files Functions Variables Enumerations Enumerator Friends Macros Pages
GalaxyAnimation Class Reference

#include <GalaxyAnimation.h>

Inheritance diagram for GalaxyAnimation:
Collaboration diagram for GalaxyAnimation:

Public Member Functions

 GalaxyAnimation ()
 
uint8_t GetAccentBrightness ()
 
uint8_t GetBrightness ()
 
void FadeIn (float stepRatio) override
 
void FadeOut (float stepRatio) override
 
Object3DGetObject ()
 
void SetCameraMirror (bool mirror)
 
void Update (float ratio) override
 

Private Member Functions

void LinkEasyEase ()
 
void LinkParameters ()
 
void ChangeInterpolationMethods ()
 
void SetMaterialLayers ()
 
void UpdateKeyFrameTracks ()
 
void Default ()
 
void Blush ()
 
void EyeBack ()
 
void EyeBack2 ()
 
void Happy ()
 
void HappyRainbow ()
 
void SpectrumAnalyzerFace ()
 
void AudioReactiveGradientFace ()
 
void OscilloscopeFace ()
 
void UpdateFFTVisemes ()
 
void SetMaterialColor ()
 

Private Attributes

GalaxyFace pM
 
Background background
 
EasyEaseAnimator< 20 > eEA = EasyEaseAnimator<20>(EasyEaseInterpolation::Overshoot, 1.0f, 0.35f)
 
Ellipse blush = Ellipse(Vector2D(98.0f, 26.0f), Vector2D(60.0f, 45.0f), 0.0f)
 
RainbowNoise rainbowNoise
 
RainbowSpiral rainbowSpiral
 
SimpleMaterial redMaterial = SimpleMaterial(RGBColor(255, 0, 0))
 
SimpleMaterial orangeMaterial = SimpleMaterial(RGBColor(255, 165, 0))
 
SimpleMaterial whiteMaterial = SimpleMaterial(RGBColor(255, 255, 255))
 
SimpleMaterial greenMaterial = SimpleMaterial(RGBColor(0, 255, 0))
 
SimpleMaterial blueMaterial = SimpleMaterial(RGBColor(0, 0, 255))
 
SimpleMaterial yellowMaterial = SimpleMaterial(RGBColor(255, 255, 0))
 
SimpleMaterial purpleMaterial = SimpleMaterial(RGBColor(255, 0, 255))
 
RGBColor gradientSpectrum [2] = {RGBColor(5, 162, 232), RGBColor(10, 170, 255)}
 
GradientMaterial< 2 > gradientMat = GradientMaterial<2>(gradientSpectrum, 350.0f, false)
 
MaterialMask blushMask = MaterialMask(&redMaterial, &gradientMat, &blush)
 
MaterialAnimator< 10 > materialAnimator
 
MaterialAnimator< 4 > backgroundMaterial
 
SpectrumAnalyzer sA = SpectrumAnalyzer(Vector2D(200, 100), Vector2D(100, 50), true, true)
 
AudioReactiveGradient aRG = AudioReactiveGradient(Vector2D(160, 160), Vector2D(0, 0), true, true)
 
Oscilloscope oSC = Oscilloscope(Vector2D(200, 100), Vector2D(0, 0))
 
BlinkTrack< 1 > blink
 
EyeMoveTrack< 1 > eyeMove
 
FunctionGenerator fGenMatPos = FunctionGenerator(FunctionGenerator::Sine, -10.0f, 10.0f, 4.0f)
 
FunctionGenerator fGenRotation = FunctionGenerator(FunctionGenerator::Sine, -30.0f, 30.0f, 2.6f)
 
FunctionGenerator fGenScale = FunctionGenerator(FunctionGenerator::Sine, 3.0f, 8.0f, 4.2f)
 
FunctionGenerator fGenMatXMove = FunctionGenerator(FunctionGenerator::Sine, -2.0f, 2.0f, 2.3f)
 
FunctionGenerator fGenMatYMove = FunctionGenerator(FunctionGenerator::Sine, -2.0f, 2.0f, 2.7f)
 
FunctionGenerator fGenMatHue = FunctionGenerator(FunctionGenerator::Triangle, 0.0f, 360.0f, 17.3f)
 
FunctionGenerator fGenEyeLook1 = FunctionGenerator(FunctionGenerator::Sine, 0.0f, 1.0f, 2.5f)
 
APDS9960 boop
 
ObjectAlign objA = ObjectAlign(Vector2D(0.0f, 0.0f), Vector2D(170.0f, 125.0f), Quaternion())
 
float offsetFace = 0.0f
 
float offsetFaceSA = 0.0f
 
float offsetFaceARG = 0.0f
 
float offsetFaceOSC = 0.0f
 
float eyeMoveParameter = 0.0f
 
float eyeBack = 0.0f
 
float eyePos = 0.0f
 
uint8_t offsetFaceInd = 50
 
uint8_t offsetFaceIndSA = 51
 
uint8_t offsetFaceIndARG = 52
 
uint8_t offsetFaceIndOSC = 53
 
uint8_t eyeForwardInd = 54
 
bool mirror = false
 

Detailed Description

Definition at line 29 of file GalaxyAnimation.h.

Constructor & Destructor Documentation

◆ GalaxyAnimation()

Member Function Documentation

◆ AudioReactiveGradientFace()

◆ Blush()

void Blush ( )
inlineprivate

Definition at line 147 of file GalaxyAnimation.h.

References EasyEaseAnimator< maxParameters >::AddParameterFrame(), and eEA.

Referenced by Update().

◆ ChangeInterpolationMethods()

void ChangeInterpolationMethods ( )
inlineprivate

◆ Default()

void Default ( )
inlineprivate

Definition at line 145 of file GalaxyAnimation.h.

Referenced by Update().

◆ EyeBack()

void EyeBack ( )
inlineprivate

◆ EyeBack2()

void EyeBack2 ( )
inlineprivate

Definition at line 156 of file GalaxyAnimation.h.

References EasyEaseAnimator< maxParameters >::AddParameterFrame(), and eEA.

Referenced by Update().

◆ FadeIn()

void FadeIn ( float  stepRatio)
inlineoverride

Definition at line 257 of file GalaxyAnimation.h.

◆ FadeOut()

void FadeOut ( float  stepRatio)
inlineoverride

Definition at line 258 of file GalaxyAnimation.h.

◆ GetAccentBrightness()

uint8_t GetAccentBrightness ( )
inline

Definition at line 249 of file GalaxyAnimation.h.

References Menu::GetAccentBrightness().

◆ GetBrightness()

uint8_t GetBrightness ( )
inline

Definition at line 253 of file GalaxyAnimation.h.

References Menu::GetBrightness().

◆ GetObject()

Object3D * GetObject ( )
inline

Definition at line 260 of file GalaxyAnimation.h.

References pM.

◆ Happy()

void Happy ( )
inlineprivate

Definition at line 160 of file GalaxyAnimation.h.

References EasyEaseAnimator< maxParameters >::AddParameterFrame(), and eEA.

Referenced by Update().

◆ HappyRainbow()

◆ LinkEasyEase()

◆ LinkParameters()

void LinkParameters ( )
inlineprivate

◆ OscilloscopeFace()

◆ SetCameraMirror()

void SetCameraMirror ( bool  mirror)
inline

Definition at line 264 of file GalaxyAnimation.h.

References mirror.

◆ SetMaterialColor()

◆ SetMaterialLayers()

◆ SpectrumAnalyzerFace()

◆ Update()

◆ UpdateFFTVisemes()

void UpdateFFTVisemes ( )
inlineprivate

◆ UpdateKeyFrameTracks()

void UpdateKeyFrameTracks ( )
inlineprivate

Definition at line 140 of file GalaxyAnimation.h.

References blink, eyeMove, and AnimationTrack< maxParameters, maxKeyFrames >::Update().

Referenced by Update().

Member Data Documentation

◆ aRG

Definition at line 57 of file GalaxyAnimation.h.

Referenced by AudioReactiveGradientFace(), SetMaterialLayers(), and Update().

◆ background

Background background
private

Definition at line 32 of file GalaxyAnimation.h.

Referenced by GalaxyAnimation().

◆ backgroundMaterial

◆ blink

BlinkTrack<1> blink
private

Definition at line 61 of file GalaxyAnimation.h.

Referenced by LinkParameters(), and UpdateKeyFrameTracks().

◆ blueMaterial

SimpleMaterial blueMaterial = SimpleMaterial(RGBColor(0, 0, 255))
private

Definition at line 44 of file GalaxyAnimation.h.

Referenced by SetMaterialColor(), and SetMaterialLayers().

◆ blush

Ellipse blush = Ellipse(Vector2D(98.0f, 26.0f), Vector2D(60.0f, 45.0f), 0.0f)
private

Definition at line 35 of file GalaxyAnimation.h.

◆ blushMask

Definition at line 51 of file GalaxyAnimation.h.

Referenced by SetMaterialLayers(), and Update().

◆ boop

APDS9960 boop
private

Definition at line 72 of file GalaxyAnimation.h.

Referenced by GalaxyAnimation(), and Update().

◆ eEA

◆ eyeBack

float eyeBack = 0.0f
private

Definition at line 81 of file GalaxyAnimation.h.

Referenced by LinkEasyEase(), and Update().

◆ eyeForwardInd

uint8_t eyeForwardInd = 54
private

Definition at line 87 of file GalaxyAnimation.h.

Referenced by ChangeInterpolationMethods().

◆ eyeMove

EyeMoveTrack<1> eyeMove
private

Definition at line 62 of file GalaxyAnimation.h.

Referenced by LinkParameters(), and UpdateKeyFrameTracks().

◆ eyeMoveParameter

float eyeMoveParameter = 0.0f
private

Definition at line 80 of file GalaxyAnimation.h.

Referenced by LinkParameters(), and Update().

◆ eyePos

float eyePos = 0.0f
private

Definition at line 82 of file GalaxyAnimation.h.

Referenced by Update().

◆ fGenEyeLook1

FunctionGenerator fGenEyeLook1 = FunctionGenerator(FunctionGenerator::Sine, 0.0f, 1.0f, 2.5f)
private

Definition at line 70 of file GalaxyAnimation.h.

Referenced by Update().

◆ fGenMatHue

FunctionGenerator fGenMatHue = FunctionGenerator(FunctionGenerator::Triangle, 0.0f, 360.0f, 17.3f)
private

Definition at line 69 of file GalaxyAnimation.h.

◆ fGenMatPos

FunctionGenerator fGenMatPos = FunctionGenerator(FunctionGenerator::Sine, -10.0f, 10.0f, 4.0f)
private

Definition at line 64 of file GalaxyAnimation.h.

◆ fGenMatXMove

FunctionGenerator fGenMatXMove = FunctionGenerator(FunctionGenerator::Sine, -2.0f, 2.0f, 2.3f)
private

Definition at line 67 of file GalaxyAnimation.h.

Referenced by Update().

◆ fGenMatYMove

FunctionGenerator fGenMatYMove = FunctionGenerator(FunctionGenerator::Sine, -2.0f, 2.0f, 2.7f)
private

Definition at line 68 of file GalaxyAnimation.h.

Referenced by Update().

◆ fGenRotation

FunctionGenerator fGenRotation = FunctionGenerator(FunctionGenerator::Sine, -30.0f, 30.0f, 2.6f)
private

Definition at line 65 of file GalaxyAnimation.h.

◆ fGenScale

FunctionGenerator fGenScale = FunctionGenerator(FunctionGenerator::Sine, 3.0f, 8.0f, 4.2f)
private

Definition at line 66 of file GalaxyAnimation.h.

◆ gradientMat

GradientMaterial<2> gradientMat = GradientMaterial<2>(gradientSpectrum, 350.0f, false)
private

Definition at line 49 of file GalaxyAnimation.h.

◆ gradientSpectrum

RGBColor gradientSpectrum[2] = {RGBColor(5, 162, 232), RGBColor(10, 170, 255)}
private

Definition at line 48 of file GalaxyAnimation.h.

◆ greenMaterial

SimpleMaterial greenMaterial = SimpleMaterial(RGBColor(0, 255, 0))
private

Definition at line 43 of file GalaxyAnimation.h.

Referenced by SetMaterialColor(), and SetMaterialLayers().

◆ materialAnimator

MaterialAnimator<10> materialAnimator
private

◆ mirror

bool mirror = false
private

Definition at line 88 of file GalaxyAnimation.h.

Referenced by SetCameraMirror(), and Update().

◆ objA

ObjectAlign objA = ObjectAlign(Vector2D(0.0f, 0.0f), Vector2D(170.0f, 125.0f), Quaternion())
private

Definition at line 74 of file GalaxyAnimation.h.

Referenced by GalaxyAnimation(), and Update().

◆ offsetFace

float offsetFace = 0.0f
private

Definition at line 76 of file GalaxyAnimation.h.

Referenced by LinkEasyEase(), and Update().

◆ offsetFaceARG

float offsetFaceARG = 0.0f
private

Definition at line 78 of file GalaxyAnimation.h.

Referenced by AudioReactiveGradientFace(), and LinkEasyEase().

◆ offsetFaceInd

uint8_t offsetFaceInd = 50
private

◆ offsetFaceIndARG

uint8_t offsetFaceIndARG = 52
private

Definition at line 85 of file GalaxyAnimation.h.

Referenced by AudioReactiveGradientFace(), and LinkEasyEase().

◆ offsetFaceIndOSC

uint8_t offsetFaceIndOSC = 53
private

Definition at line 86 of file GalaxyAnimation.h.

Referenced by LinkEasyEase(), and OscilloscopeFace().

◆ offsetFaceIndSA

uint8_t offsetFaceIndSA = 51
private

Definition at line 84 of file GalaxyAnimation.h.

Referenced by LinkEasyEase(), and SpectrumAnalyzerFace().

◆ offsetFaceOSC

float offsetFaceOSC = 0.0f
private

Definition at line 79 of file GalaxyAnimation.h.

Referenced by LinkEasyEase(), and OscilloscopeFace().

◆ offsetFaceSA

float offsetFaceSA = 0.0f
private

Definition at line 77 of file GalaxyAnimation.h.

Referenced by LinkEasyEase(), and SpectrumAnalyzerFace().

◆ orangeMaterial

SimpleMaterial orangeMaterial = SimpleMaterial(RGBColor(255, 165, 0))
private

Definition at line 41 of file GalaxyAnimation.h.

Referenced by SetMaterialColor(), and SetMaterialLayers().

◆ oSC

Oscilloscope oSC = Oscilloscope(Vector2D(200, 100), Vector2D(0, 0))
private

Definition at line 58 of file GalaxyAnimation.h.

Referenced by OscilloscopeFace(), SetMaterialLayers(), and Update().

◆ pM

GalaxyFace pM
private

Definition at line 31 of file GalaxyAnimation.h.

Referenced by GalaxyAnimation(), GetObject(), LinkEasyEase(), LinkParameters(), and Update().

◆ purpleMaterial

SimpleMaterial purpleMaterial = SimpleMaterial(RGBColor(255, 0, 255))
private

Definition at line 46 of file GalaxyAnimation.h.

Referenced by SetMaterialColor(), and SetMaterialLayers().

◆ rainbowNoise

RainbowNoise rainbowNoise
private

Definition at line 38 of file GalaxyAnimation.h.

Referenced by SetMaterialColor(), SetMaterialLayers(), and Update().

◆ rainbowSpiral

RainbowSpiral rainbowSpiral
private

Definition at line 39 of file GalaxyAnimation.h.

Referenced by HappyRainbow(), SetMaterialColor(), SetMaterialLayers(), and Update().

◆ redMaterial

SimpleMaterial redMaterial = SimpleMaterial(RGBColor(255, 0, 0))
private

Definition at line 40 of file GalaxyAnimation.h.

Referenced by SetMaterialColor(), and SetMaterialLayers().

◆ sA

SpectrumAnalyzer sA = SpectrumAnalyzer(Vector2D(200, 100), Vector2D(100, 50), true, true)
private

Definition at line 56 of file GalaxyAnimation.h.

Referenced by SetMaterialLayers(), SpectrumAnalyzerFace(), and Update().

◆ whiteMaterial

SimpleMaterial whiteMaterial = SimpleMaterial(RGBColor(255, 255, 255))
private

Definition at line 42 of file GalaxyAnimation.h.

Referenced by SetMaterialColor(), and SetMaterialLayers().

◆ yellowMaterial

SimpleMaterial yellowMaterial = SimpleMaterial(RGBColor(255, 255, 0))
private

Definition at line 45 of file GalaxyAnimation.h.

Referenced by SetMaterialColor(), and SetMaterialLayers().


The documentation for this class was generated from the following file: