## Organization Principles
- OOP
- Constructor
- MVC pipeline ?
- Set relevant data
- Update views
### Question
hihi i've been working on setting up different obs scenes in one "scene file" and was curious to hear how other people manage their blueprint flows. when i switch to a scene i have the following things i need to update:
- environment on/off
- related assets
- character position
- enabling and switching to a camera
i come from a front-end/react development background and have been starting to follow an object-oriented principles
## Nodes
- Sequences are for splitting
## Naming conventions
### Lights
- `XL` where X is the type of light
- D irectional
- V olumetric
- P oint
- Extras
- D irectional
- Just share the direction it is
- P oint
- V olumetric
- Scene-specific (desk window) or static !
#### Directional
## Plugins
### Looking at cameras
- Adjusted in mediapipe character look at target
- Can maybe toggle on and off ? or always update to active camera? hmm
- I don't mind the existing settings but then how would you override it if you wanted stagnant pomodoro hmm
- Maybe set a custom anchor point to look at depending on the scene
### Flows
- https://steamcommunity.com/sharedfiles/filedetails/?id=3006299936
- Teleporter would be useful across different blueprints ?
## Switching scenes
- **Galaxy top spotlight can be dynamic?**
- Just need to move camera and light relative no?
- Would be fun as a quick transition
- Will work on it later
### Variables
- set variables based on strings ?
- where should the variables be set?
- if i want to add a new scene what would be most helpful?
- Just like OOP, in constructor when you switch to a new scene, just like when a new "object" is created
- currentAssets
- might have to move them around in the future but for now can just be simple toggles
- currentPosition
### Flow
- websocket
- initial logic
- set variables
- enabledAssets
- currentVariable
- call setAssets
- iterate through assets. if in list then enable, otherwise disable
- call setCharacter
- call setCamera
#### setDefaults
- disable all assets
- set environment
#### setCharacter
- Animation
- Pose
#### setCamera
- Enable camera
- Set as active
#### setAssets
- Environment
- based on variable
### Questions
- How should these be grouped?
- For each asset, have a logic gate to enable if string = ?
- scene = galaxy ? only enable these two
- or
- if i'm creating a new scene which one would be easier
- depends on how reusable the scenes are
- i think organization based on asset might end up running a lot of checks, but would have cleaner code since i can just add it there