Restructure project and expand RalphaData content

- Remove legacy UE5 config files and project scaffolding
- Add new Ralpha directory structure
- Add new recipes: bedroom, cafe, dining, gym, home office, kitchen, outdoor, portrait studio, retail
- Add post-processing presets and scene presets
- Add catalogue, HDRIs, LUTs, and metahumans data
- Update generate_catalogue script and existing recipes
- Add asset sourcing checklist

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
jamestagg 2026-01-27 13:36:50 -08:00
parent ad72081760
commit b6786cf173
154 changed files with 618535 additions and 732 deletions

58
.gitattributes vendored
View File

@ -1,19 +1,30 @@
# UE5 LFS tracking
# Git LFS for Unreal Engine assets
# Large binary files stored in LFS
# Unreal binary assets
# Unreal Engine binary assets
*.uasset filter=lfs diff=lfs merge=lfs -text
*.umap filter=lfs diff=lfs merge=lfs -text
*.ubulk filter=lfs diff=lfs merge=lfs -text
*.uexp filter=lfs diff=lfs merge=lfs -text
# Textures
# Compiled shaders and DDC
*.ush filter=lfs diff=lfs merge=lfs -text
*.ushaderbytecode filter=lfs diff=lfs merge=lfs -text
# Textures (source files if imported)
*.png filter=lfs diff=lfs merge=lfs -text
*.jpg filter=lfs diff=lfs merge=lfs -text
*.jpeg filter=lfs diff=lfs merge=lfs -text
*.tga filter=lfs diff=lfs merge=lfs -text
*.bmp filter=lfs diff=lfs merge=lfs -text
*.psd filter=lfs diff=lfs merge=lfs -text
*.exr filter=lfs diff=lfs merge=lfs -text
*.hdr filter=lfs diff=lfs merge=lfs -text
# 3D formats
*.fbx filter=lfs diff=lfs merge=lfs -text
*.obj filter=lfs diff=lfs merge=lfs -text
*.gltf filter=lfs diff=lfs merge=lfs -text
*.glb filter=lfs diff=lfs merge=lfs -text
# Audio
*.wav filter=lfs diff=lfs merge=lfs -text
*.mp3 filter=lfs diff=lfs merge=lfs -text
@ -22,35 +33,12 @@
# Video
*.mp4 filter=lfs diff=lfs merge=lfs -text
*.mov filter=lfs diff=lfs merge=lfs -text
*.avi filter=lfs diff=lfs merge=lfs -text
# 3D formats
*.fbx filter=lfs diff=lfs merge=lfs -text
*.obj filter=lfs diff=lfs merge=lfs -text
*.gltf filter=lfs diff=lfs merge=lfs -text
*.glb filter=lfs diff=lfs merge=lfs -text
*.abc filter=lfs diff=lfs merge=lfs -text
# Fonts
*.ttf filter=lfs diff=lfs merge=lfs -text
*.otf filter=lfs diff=lfs merge=lfs -text
# Compiled/binary
*.dll filter=lfs diff=lfs merge=lfs -text
*.so filter=lfs diff=lfs merge=lfs -text
*.dylib filter=lfs diff=lfs merge=lfs -text
# UE bulk data
*.ubulk filter=lfs diff=lfs merge=lfs -text
*.uexp filter=lfs diff=lfs merge=lfs -text
*.upk filter=lfs diff=lfs merge=lfs -text
# Keep RalphaData in regular git (not LFS)
# These are small JSON/text files for tooling
# Keep these in regular git (small text files)
RalphaData/** !filter !diff !merge text
RalphaData/**/*.json text
RalphaData/**/*.py text
RalphaData/**/*.md text
# Small thumbnails OK in regular git
RalphaData/thumbnails/*.png !filter !diff !merge -text
*.json text
*.md text
*.py text
*.txt text
*.uplugin text
*.uproject text

45
.gitignore vendored
View File

@ -1,43 +1,26 @@
# UE5 Project .gitignore
# Build artifacts (rebuilt locally)
# Unreal Engine generated files
Binaries/
Intermediate/
DerivedDataCache/
Intermediate/
Saved/
Build/
# Saved data (user-specific, logs, autosaves)
Saved/
# Plugin binaries (rebuilt per machine)
Plugins/**/Binaries/
Plugins/**/Intermediate/
# Visual Studio
# IDE
.idea/
.vs/
.vscode/
*.sln
*.suo
*.sdf
*.VC.db
*.VC.opendb
*.user
# JetBrains Rider
.idea/
# VS Code
.vscode/
# macOS
# OS
.DS_Store
*.DS_Store
# Windows
Thumbs.db
Desktop.ini
# Cooked content (generated)
**/Cooked/
# Temp files
*.log
*.tmp
*~
# Starter content (if using)
**/StarterContent/
repomix-output.txt
# Crashpad
CrashReportClient/

295
ASSET_SOURCING_CHECKLIST.md Normal file
View File

@ -0,0 +1,295 @@
# Asset Sourcing Checklist
## Quick Links
| Source | URL | Account Needed |
|--------|-----|----------------|
| Poly Haven | https://polyhaven.com | No |
| Quixel/Fab | https://www.fab.com | Epic Games |
| Sketchfab | https://sketchfab.com | Yes (free) |
| Mixamo | https://www.mixamo.com | Adobe |
| MetaHuman Creator | https://metahuman.unrealengine.com | Epic Games |
| UE Marketplace | https://www.unrealengine.com/marketplace | Epic Games |
---
## 1. HDRIs (18 needed)
**Source: Poly Haven** (https://polyhaven.com/hdris) - All CC0, Free
### Studio HDRIs
- [ ] `HDRI_Studio_Softbox` - Search: "studio" or "photo studio"
- https://polyhaven.com/a/studio_small_03
- https://polyhaven.com/a/photo_studio_loft_hall
- [ ] `HDRI_Studio_Hard` - Search: "studio" hard lighting
- https://polyhaven.com/a/studio_small_08
- [ ] `HDRI_Studio_Natural` - Search: "studio" window light
- https://polyhaven.com/a/studio_small_09
- [ ] `HDRI_Studio_Gradient` - Search: "gradient"
- https://polyhaven.com/a/studio_small_06
### Outdoor HDRIs
- [ ] `HDRI_Sky_ClearDay` - Search: "blue sky" "clear"
- https://polyhaven.com/a/kloofendal_43d_clear_puresky
- https://polyhaven.com/a/meadow_at_noon
- [ ] `HDRI_Sky_Overcast` - Search: "overcast" "cloudy"
- https://polyhaven.com/a/kloofendal_overcast_puresky
- [ ] `HDRI_Sky_Sunset` - Search: "sunset" "golden hour"
- https://polyhaven.com/a/sunset_fairway
- https://polyhaven.com/a/golden_bay
- [ ] `HDRI_Sky_Night` - Search: "night" "stars"
- https://polyhaven.com/a/moonlit_golf
- https://polyhaven.com/a/starry_night
- [ ] `HDRI_Forest` - Search: "forest"
- https://polyhaven.com/a/forest_slope
- https://polyhaven.com/a/autumn_forest_04
- [ ] `HDRI_Beach` - Search: "beach" "coast"
- https://polyhaven.com/a/cape_hill
- https://polyhaven.com/a/the_sky_is_on_fire
- [ ] `HDRI_Mountain` - Search: "mountain" "alpine"
- https://polyhaven.com/a/table_mountain_1_puresky
- https://polyhaven.com/a/alps_field
- [ ] `HDRI_Desert` - Search: "desert"
- https://polyhaven.com/a/goegap
- https://polyhaven.com/a/desert_highway
### Urban HDRIs
- [ ] `HDRI_City_Day` - Search: "city" "urban"
- https://polyhaven.com/a/potsdamer_platz
- https://polyhaven.com/a/shanghai_bund
- [ ] `HDRI_City_Night` - Search: "city night"
- https://polyhaven.com/a/modern_buildings_night
- [ ] `HDRI_Street` - Search: "street"
- https://polyhaven.com/a/urban_street_01
- [ ] `HDRI_Parking` - Search: "parking" "garage"
- https://polyhaven.com/a/parking_garage
- [ ] `HDRI_Interior_Office` - Search: "office" "interior"
- https://polyhaven.com/a/small_empty_room_1
- [ ] `HDRI_Interior_Home` - Search: "interior" "room"
- https://polyhaven.com/a/brown_photostudio_02
**Download Settings:** 8K resolution, HDR format
---
## 2. LUTs (32 needed)
**Source: Multiple free LUT packs**
### Free LUT Sources
- [ ] **Lutify.me Free Pack** - https://lutify.me/free-luts/
- [ ] **RocketStock 35 Free LUTs** - https://www.rocketstock.com/free-after-effects-templates/35-free-luts-for-color-grading-videos/
- [ ] **PremiumBeat 17 Free LUTs** - https://www.premiumbeat.com/blog/free-luts-color-grading/
- [ ] **Indie Film Hustle LUTs** - https://indiefilmhustle.com/free-luts/
- [ ] **Ground Control Color LUTs** - https://groundcontrolcolor.com/pages/free-luts
### Alternative: Create in DaVinci Resolve
Can export .cube files directly from color grades
---
## 3. Furniture & Props (65+ needed)
**Source: Fab.com (formerly Quixel/UE Marketplace)**
### Free Collections on Fab
- [ ] **Megascans Furniture** - https://www.fab.com/search?q=furniture&price=free
- [ ] **Interior Props** - https://www.fab.com/search?q=interior+props&price=free
- [ ] **Office Furniture** - https://www.fab.com/search?q=office&price=free
### Specific Asset Searches
- [ ] Sofas/Couches - https://www.fab.com/search?q=sofa&price=free
- [ ] Chairs - https://www.fab.com/search?q=chair&price=free
- [ ] Tables - https://www.fab.com/search?q=table&price=free
- [ ] Beds - https://www.fab.com/search?q=bed&price=free
- [ ] Storage/Shelves - https://www.fab.com/search?q=shelf&price=free
### Sketchfab (CC0/CC-BY)
- [ ] https://sketchfab.com/search?features=downloadable&licenses=322a749bcfa841b29dff1571a69a2f8c&q=furniture&type=models
- [ ] https://sketchfab.com/search?features=downloadable&licenses=322a749bcfa841b29dff1571a69a2f8c&q=chair&type=models
---
## 4. Vehicles (40 needed)
**Source: Fab.com + Sketchfab**
### Fab.com Free Vehicles
- [ ] https://www.fab.com/search?q=car&price=free
- [ ] https://www.fab.com/search?q=vehicle&price=free
- [ ] https://www.fab.com/search?q=motorcycle&price=free
### Sketchfab CC0 Vehicles
- [ ] Cars - https://sketchfab.com/search?features=downloadable&licenses=322a749bcfa841b29dff1571a69a2f8c&q=car&type=models
- [ ] Motorcycles - https://sketchfab.com/search?features=downloadable&licenses=322a749bcfa841b29dff1571a69a2f8c&q=motorcycle&type=models
- [ ] Bicycles - https://sketchfab.com/search?features=downloadable&licenses=322a749bcfa841b29dff1571a69a2f8c&q=bicycle&type=models
- [ ] Aircraft - https://sketchfab.com/search?features=downloadable&licenses=322a749bcfa841b29dff1571a69a2f8c&q=airplane&type=models
- [ ] Boats - https://sketchfab.com/search?features=downloadable&licenses=322a749bcfa841b29dff1571a69a2f8c&q=boat&type=models
---
## 5. Nature & Foliage (30 needed)
**Source: Megascans via Fab.com** (Free with UE)
### Trees
- [ ] https://www.fab.com/search?q=tree&price=free
- [ ] https://www.fab.com/search?q=pine+tree&price=free
- [ ] https://www.fab.com/search?q=palm+tree&price=free
- [ ] https://www.fab.com/search?q=oak+tree&price=free
### Plants & Foliage
- [ ] https://www.fab.com/search?q=plant&price=free
- [ ] https://www.fab.com/search?q=bush&price=free
- [ ] https://www.fab.com/search?q=grass&price=free
- [ ] https://www.fab.com/search?q=flower&price=free
### Rocks & Terrain
- [ ] https://www.fab.com/search?q=rock&price=free
- [ ] https://www.fab.com/search?q=boulder&price=free
- [ ] https://www.fab.com/search?q=cliff&price=free
---
## 6. Urban Props (21 needed)
**Source: Fab.com + Sketchfab**
- [ ] Street lights - https://www.fab.com/search?q=street+light&price=free
- [ ] Traffic lights - https://www.fab.com/search?q=traffic+light&price=free
- [ ] Benches - https://www.fab.com/search?q=bench&price=free
- [ ] Fire hydrant - https://www.fab.com/search?q=fire+hydrant&price=free
- [ ] Trash cans - https://www.fab.com/search?q=trash+can&price=free
- [ ] Signs - https://www.fab.com/search?q=street+sign&price=free
- [ ] Barriers - https://www.fab.com/search?q=barrier&price=free
---
## 7. Architecture Elements (25 needed)
**Source: Megascans + Fab.com**
- [ ] Walls - https://www.fab.com/search?q=wall+modular&price=free
- [ ] Floors - https://www.fab.com/search?q=floor&price=free
- [ ] Doors - https://www.fab.com/search?q=door&price=free
- [ ] Windows - https://www.fab.com/search?q=window&price=free
- [ ] Stairs - https://www.fab.com/search?q=stairs&price=free
- [ ] Fences - https://www.fab.com/search?q=fence&price=free
---
## 8. MetaHumans (20 needed)
**Source: MetaHuman Creator** (https://metahuman.unrealengine.com)
### Characters to Create
| ID | Gender | Age | Ethnicity |
|----|--------|-----|-----------|
| MH_M_20_Caucasian | Male | 20s | Caucasian |
| MH_M_35_Caucasian | Male | 30s | Caucasian |
| MH_M_50_Caucasian | Male | 50s | Caucasian |
| MH_M_25_African | Male | 20s | African |
| MH_M_40_African | Male | 40s | African |
| MH_M_30_Asian | Male | 30s | East Asian |
| MH_M_45_Asian | Male | 40s | East Asian |
| MH_M_25_Hispanic | Male | 20s | Hispanic |
| MH_M_35_SouthAsian | Male | 30s | South Asian |
| MH_M_60_Mixed | Male | 60s | Mixed |
| MH_F_20_Caucasian | Female | 20s | Caucasian |
| MH_F_35_Caucasian | Female | 30s | Caucasian |
| MH_F_50_Caucasian | Female | 50s | Caucasian |
| MH_F_25_African | Female | 20s | African |
| MH_F_40_African | Female | 40s | African |
| MH_F_30_Asian | Female | 30s | East Asian |
| MH_F_45_Asian | Female | 40s | East Asian |
| MH_F_25_Hispanic | Female | 20s | Hispanic |
| MH_F_35_SouthAsian | Female | 30s | South Asian |
| MH_F_60_Mixed | Female | 60s | Mixed |
---
## 9. Animations (32 needed)
**Source: Mixamo** (https://www.mixamo.com)
### Idle Animations
- [ ] Standing Idle - search "idle"
- [ ] Sitting Idle - search "sitting idle"
- [ ] Leaning - search "leaning"
### Pose Animations
- [ ] T-Pose
- [ ] A-Pose
- [ ] Various standing poses
### Action Animations
- [ ] Walking - search "walking"
- [ ] Running - search "running"
- [ ] Sitting down - search "sit down"
- [ ] Standing up - search "stand up"
- [ ] Waving - search "wave"
- [ ] Nodding - search "nod"
- [ ] Shrugging - search "shrug"
### Interaction Animations
- [ ] Typing - search "typing"
- [ ] Phone use - search "phone"
- [ ] Drinking - search "drink"
- [ ] Talking gestures - search "talking"
- [ ] Pointing - search "point"
- [ ] Handshake - search "handshake"
- [ ] Clapping - search "clap"
**Export Settings:** FBX, Without Skin (for retargeting to MetaHuman)
---
## 10. Tools, Sports, Animals (42 needed)
### Tools (Sketchfab CC0)
- [ ] https://sketchfab.com/search?features=downloadable&licenses=322a749bcfa841b29dff1571a69a2f8c&q=hammer&type=models
- [ ] https://sketchfab.com/search?features=downloadable&licenses=322a749bcfa841b29dff1571a69a2f8c&q=screwdriver&type=models
- [ ] https://sketchfab.com/search?features=downloadable&licenses=322a749bcfa841b29dff1571a69a2f8c&q=drill&type=models
### Sports Equipment
- [ ] https://sketchfab.com/search?features=downloadable&licenses=322a749bcfa841b29dff1571a69a2f8c&q=basketball&type=models
- [ ] https://sketchfab.com/search?features=downloadable&licenses=322a749bcfa841b29dff1571a69a2f8c&q=soccer+ball&type=models
- [ ] https://sketchfab.com/search?features=downloadable&licenses=322a749bcfa841b29dff1571a69a2f8c&q=tennis&type=models
### Animals (Fab.com)
- [ ] https://www.fab.com/search?q=dog&price=free
- [ ] https://www.fab.com/search?q=cat&price=free
- [ ] https://www.fab.com/search?q=bird&price=free
---
## Download Priority Order
1. **HDRIs from Poly Haven** - Fastest, no account needed, direct download
2. **LUTs** - Download free packs
3. **Megascans/Fab assets** - Requires Epic account, bulk download via Bridge
4. **Mixamo animations** - Requires Adobe account
5. **Sketchfab models** - Requires account for downloads
6. **MetaHumans** - Create in browser, export to UE
---
## Account Requirements
| Service | Account Type | Cost |
|---------|--------------|------|
| Poly Haven | None needed | Free |
| Fab.com | Epic Games | Free |
| Sketchfab | Free account | Free |
| Mixamo | Adobe ID | Free |
| MetaHuman Creator | Epic Games | Free |
---
## Notes
- All Poly Haven assets are CC0 (public domain)
- Megascans are free for Unreal Engine projects
- Sketchfab CC0 license = no attribution required
- Mixamo animations need retargeting for MetaHuman skeleton
- Export MetaHumans at "Medium" quality to balance size/quality

View File

@ -1,10 +0,0 @@
[/Script/UnrealEd.EditorPerformanceSettings]
bMonitorEditorPerformance=True
[/Script/UnrealEd.CrashReporterSettings]
bHideLogFilesOption=False
bHideRestartOption=False
[ContentBrowser]
ShowEngineContent=False
ShowPluginContent=True

View File

@ -1,74 +0,0 @@
[/Script/EngineSettings.GameMapsSettings]
EditorStartupMap=/Game/Maps/Main
GameDefaultMap=/Game/Maps/Main
[/Script/Engine.RendererSettings]
r.DefaultFeature.AutoExposure=True
r.DefaultFeature.MotionBlur=True
r.DefaultFeature.Bloom=True
r.DefaultFeature.AmbientOcclusion=True
r.DefaultFeature.AmbientOcclusionStaticFraction=True
r.Lumen.DiffuseIndirect.Allow=True
r.Lumen.Reflections.Allow=True
r.RayTracing=False
[/Script/WindowsTargetPlatform.WindowsTargetSettings]
DefaultGraphicsRHI=DefaultGraphicsRHI_DX12
-D3D12TargetedShaderFormats=PCD3D_SM5
+D3D12TargetedShaderFormats=PCD3D_SM5
-D3D11TargetedShaderFormats=PCD3D_SM5
+D3D11TargetedShaderFormats=PCD3D_SM5
bGenerateNaniteFallbackMeshes=True
Compiler=Default
AudioSampleRate=48000
AudioCallbackBufferFrameSize=1024
AudioNumBuffersToEnqueue=1
AudioMaxChannels=0
AudioNumSourceWorkers=4
SpatializationPlugin=
SourceDataOverridePlugin=
ReverbPlugin=
OcclusionPlugin=
CompressionOverrides=(bOverrideCompressionTimes=False,DurationThreshold=5.000000,MaxNumRandomBranches=0,SoundCueQualityIndex=0)
CacheSizeKB=65536
MaxChunkSizeOverrideKB=0
bResampleForDevice=False
MaxSampleRate=48000.000000
HighSampleRate=32000.000000
MedSampleRate=24000.000000
LowSampleRate=12000.000000
MinSampleRate=8000.000000
CompressionQualityModifier=1.000000
AutoStreamingThreshold=0.000000
SoundCueCookQualityIndex=-1
[/Script/Engine.Engine]
+ActiveGameNameRedirects=(OldGameName="TP_Blank",NewGameName="/Script/Ralpha")
+ActiveGameNameRedirects=(OldGameName="/Script/TP_Blank",NewGameName="/Script/Ralpha")
[URL]
GameName=Ralpha
[/Script/Engine.GarbageCollectionSettings]
gc.MaxObjectsNotConsideredByGC=1
[ConsoleVariables]
r.Lumen.ScreenProbeGather.FullResolutionJitterWidth=1
r.RayTracing.EnableOnDemandShaderCompilation=0
r.D3D12.DXR.AllowSM6ShaderWarning=0
r.SkinCache.CompileShaders=1
[/Script/AndroidFileServerEditor.AndroidFileServerRuntimeSettings]
bEnablePlugin=True
bAllowNetworkConnection=True
SecurityToken=48F557544C0FBE97F9394186D19510CE
bIncludeInShipping=False
bAllowExternalStartInShipping=False
bCompileAFSProject=False
bUseCompression=False
bLogFiles=False
bReportStats=False
ConnectionType=USBOnly
bUseManualIPAddress=False
ManualIPAddress=

View File

@ -1,8 +0,0 @@
[/Script/EngineSettings.GeneralProjectSettings]
ProjectID=Ralpha2026
ProjectName=Ralpha
CompanyName=Ralpha
CopyrightNotice=Copyright Ralpha Team
Description=AI-driven style transfer for infinite world generation
bStartInVR=False
bStartInAR=False

View File

@ -1,86 +0,0 @@
[/Script/Engine.InputSettings]
-AxisConfig=(AxisKeyName="Gamepad_LeftX",AxisProperties=(DeadZone=0.25,Exponent=1.f,Sensitivity=1.f))
-AxisConfig=(AxisKeyName="Gamepad_LeftY",AxisProperties=(DeadZone=0.25,Exponent=1.f,Sensitivity=1.f))
-AxisConfig=(AxisKeyName="Gamepad_RightX",AxisProperties=(DeadZone=0.25,Exponent=1.f,Sensitivity=1.f))
-AxisConfig=(AxisKeyName="Gamepad_RightY",AxisProperties=(DeadZone=0.25,Exponent=1.f,Sensitivity=1.f))
-AxisConfig=(AxisKeyName="MouseX",AxisProperties=(DeadZone=0.f,Exponent=1.f,Sensitivity=0.07f))
-AxisConfig=(AxisKeyName="MouseY",AxisProperties=(DeadZone=0.f,Exponent=1.f,Sensitivity=0.07f))
-AxisConfig=(AxisKeyName="Mouse2D",AxisProperties=(DeadZone=0.f,Exponent=1.f,Sensitivity=0.07f))
+AxisConfig=(AxisKeyName="Gamepad_LeftX",AxisProperties=(DeadZone=0.250000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="Gamepad_LeftY",AxisProperties=(DeadZone=0.250000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="Gamepad_RightX",AxisProperties=(DeadZone=0.250000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="Gamepad_RightY",AxisProperties=(DeadZone=0.250000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="MouseX",AxisProperties=(DeadZone=0.000000,Sensitivity=0.070000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="MouseY",AxisProperties=(DeadZone=0.000000,Sensitivity=0.070000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="Mouse2D",AxisProperties=(DeadZone=0.000000,Sensitivity=0.070000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="MouseWheelAxis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="Gamepad_LeftTriggerAxis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="Gamepad_RightTriggerAxis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="Gamepad_Special_Left_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="Gamepad_Special_Left_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="Vive_Left_Trigger_Axis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="Vive_Left_Trackpad_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="Vive_Left_Trackpad_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="Vive_Right_Trigger_Axis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="Vive_Right_Trackpad_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="Vive_Right_Trackpad_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="MixedReality_Left_Trigger_Axis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="MixedReality_Left_Thumbstick_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="MixedReality_Left_Thumbstick_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="MixedReality_Left_Trackpad_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="MixedReality_Left_Trackpad_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="MixedReality_Right_Trigger_Axis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="MixedReality_Right_Thumbstick_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="MixedReality_Right_Thumbstick_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="MixedReality_Right_Trackpad_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="MixedReality_Right_Trackpad_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="OculusTouch_Left_Grip_Axis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="OculusTouch_Left_Trigger_Axis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="OculusTouch_Left_Thumbstick_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="OculusTouch_Left_Thumbstick_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="OculusTouch_Right_Grip_Axis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="OculusTouch_Right_Trigger_Axis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="OculusTouch_Right_Thumbstick_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="OculusTouch_Right_Thumbstick_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Left_Grip_Axis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Left_Grip_Force",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Left_Trigger_Axis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Left_Thumbstick_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Left_Thumbstick_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Left_Trackpad_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Left_Trackpad_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Left_Trackpad_Force",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Right_Grip_Axis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Right_Grip_Force",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Right_Trigger_Axis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Right_Thumbstick_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Right_Thumbstick_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Right_Trackpad_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Right_Trackpad_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Right_Trackpad_Force",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
bAltEnterTogglesFullscreen=True
bF11TogglesFullscreen=True
bUseMouseForTouch=False
bEnableMouseSmoothing=True
bEnableFOVScaling=True
bCaptureMouseOnLaunch=True
bEnableLegacyInputScales=True
bEnableMotionControls=True
bFilterInputByPlatformUser=False
bShouldFlushPressedKeysOnViewportFocusLost=True
bAlwaysShowTouchInterface=False
bShowConsoleOnFourFingerTap=True
bEnableGestureRecognizer=False
bUseAutocorrect=False
bEnabledLegacyMappingDeprecationWarnings=True
DefaultViewportMouseCaptureMode=CapturePermanently_IncludingInitialMouseDown
DefaultViewportMouseLockMode=DoNotLock
FOVScale=0.011110
DoubleClickTime=0.200000
DeprecatedActionAndAxisNames=()
DefaultPlayerInputClass=/Script/EnhancedInput.EnhancedPlayerInput
DefaultInputComponentClass=/Script/EnhancedInput.EnhancedInputComponent
DefaultTouchInterface=/Engine/MobileResources/HUD/DefaultVirtualJoysticks.DefaultVirtualJoysticks
-ConsoleKeys=Tilde
+ConsoleKeys=Tilde

View File

@ -1 +0,0 @@
../../ralpha/plugin

231
README.md
View File

@ -1,188 +1,105 @@
# Ralpha UE5 - Kitchen Sink Asset Project
# ralpha-ue5
Comprehensive UE5 asset library and scene templates for AI-controlled rendering with [Ralpha](https://github.com/jamestagg/ralpha).
**Kitchen Sink Starter Project** - Comprehensive UE5 asset library for AI-controlled rendering.
## Quick Start
## Repository Architecture
```bash
# Clone with LFS
git lfs install
git clone https://github.com/jamestagg/ralpha-ue5.git
This project is split across two repositories:
# Open in UE5.4+
# File > Open Project > ralpha-ue5/Ralpha.uproject
```
| Repository | Purpose | Storage |
|------------|---------|---------|
| **ralpha** | Code: plugin, API, website, Redis, Supabase | Regular Git |
| **ralpha-ue5** | Assets: UE5 maps, meshes, textures, MetaHumans | Git LFS |
## Architecture
The split keeps the code repository fast and lean (~50MB) while the asset repository can grow to 50-100GB with full LFS support.
This repo contains **assets only**. The MCP plugin and tooling live in the main [ralpha](https://github.com/jamestagg/ralpha) repo.
## Design Philosophy
```
ralpha-ue5/ <- You are here (assets, templates, presets)
└── Plugins/RalphaPlugin/ <- Symlink to ralpha/plugin
├── MCP Server (port 30010)
└── 69 Command Handlers
> "Any missing element takes hours to find, build, and refine."
ralpha/ <- Main repo (tooling, API, frontend)
├── plugin/ <- UE5 plugin source
├── ralpha-api/ <- Backend API
└── frontend/ <- Web interface
```
This project prioritizes **breadth over perfection**. Every common object, environment, and scenario should have a ready-to-use representation. Speed of iteration matters more than photorealism of any single asset.
## Repository Structure
When matching a reference image, Claude should be able to:
1. Identify what's needed
2. Find it in the catalogue
3. Place and configure it
4. Capture screenshot
All within **seconds**, not minutes or hours.
## Structure
```
ralpha-ue5/
├── RalphaData/ # NOT in LFS - text/JSON files
│ ├── catalogue/
│ │ ├── catalogue.json # Machine-readable asset index
│ │ └── catalogue.schema.json # JSON schema
│ ├── thumbnails/ # Small preview images
│ ├── recipes/ # Scene composition templates
│ │ ├── recipe.schema.json
│ │ ├── living_room_modern.json
│ │ ├── portrait_studio_white.json
│ │ └── office_corporate.json
│ ├── presets/
│ │ ├── lighting/ # Lighting configurations
│ │ ├── post/ # Post-processing profiles
│ │ ├── scene/ # Full scene configs
│ │ └── camera/ # Camera presets
│ └── scripts/
│ └── generate_catalogue.py # Asset indexing tool
├── RalphaData/ # Text files (NOT in LFS)
│ ├── catalogue.json # Machine-readable asset index
│ ├── thumbnails/ # Small preview images
│ ├── recipes/ # Scene composition recipes
│ ├── presets/ # Lighting, post, scene presets
│ └── scripts/ # Asset management tools
├── Content/ # IN LFS - large binary files
│ └── Ralpha/
│ ├── Maps/ # Template levels
│ │ ├── Template_Empty.umap
│ │ ├── Template_Studio.umap
│ │ ├── Template_Outdoor.umap
│ │ └── Template_Interior.umap
│ ├── Assets/ # Props, furniture, etc.
│ │ ├── Furniture/
│ │ ├── Electronics/
│ │ ├── Food/
│ │ ├── Vehicles/
│ │ ├── Nature/
│ │ └── ...
│ ├── Materials/
│ ├── HDRI/
│ └── LUTs/
├── Content/Ralpha/ # UE5 assets (IN LFS)
│ ├── Maps/ # Template levels
│ ├── Assets/ # Props, furniture, vehicles
│ ├── Materials/ # PBR materials
│ ├── HDRI/ # Environment maps
│ └── LUTs/ # Color grading
└── Plugins/
└── RalphaPlugin/ # Symlink to ralpha/plugin
├── Plugins/ # Symlink to ralpha/plugin
└── RalphaProject.uproject
```
## Key Concepts
## Template Maps
### Template Maps vs Heavy Maps
| Map | Purpose |
|-----|---------|
| `Template_Empty` | Bare minimum scene (sky, floor) |
| `Template_Studio` | Lighting rig, backdrop, camera |
| `Template_Outdoor` | Sky atmosphere, terrain base |
| `Template_Interior` | Room shell, interior lighting |
Instead of 50+ bespoke maps, we use **4 templates** + **JSON presets**:
## Setup
| Template | Use Case |
|----------|----------|
| `Template_Empty` | Bare minimum - sky + ground |
| `Template_Studio` | Portrait/product - cyclorama + lights |
| `Template_Outdoor` | Landscapes - terrain + atmosphere |
| `Template_Interior` | Rooms - walls + ceiling + basic lighting |
1. Clone with LFS:
```bash
git lfs install
git clone https://github.com/yourusername/ralpha-ue5.git
```
Scene variation comes from presets, not map duplication.
2. Link the plugin:
```bash
# macOS
ln -s /path/to/ralpha/plugin Plugins/RalphaPlugin
# Windows (as admin)
mklink /J Plugins\RalphaPlugin E:\Github\ralpha\plugin
```
### Recipe System
Recipes define composite scenes that can be spawned instantly:
```json
{
"recipe_id": "living_room_modern",
"components": [
{"asset": "sofa_modern_3seat", "position": "center"},
{"asset": "coffee_table_rect", "position": "in_front_of:sofa"},
{"asset": "tv_65inch", "position": "wall:opposite_sofa"}
],
"lighting_preset": "Interior_Evening"
}
```
MCP command: `{"type":"spawn_recipe","parameters":{"recipe":"living_room_modern"}}`
### Asset Catalogue
All assets are indexed in `catalogue.json` for programmatic discovery:
```json
{
"id": "sofa_modern_3seat",
"name": "Modern 3-Seat Sofa",
"category": "Furniture/Seating",
"unreal_path": "/Game/Ralpha/Assets/Furniture/Seating/Sofa_Modern_3Seat",
"tags": ["sofa", "couch", "seating", "modern", "living room"],
"bounds": {"x": 220, "y": 90, "z": 85},
"placement_modes": ["floor"]
}
```
MCP command: `{"type":"search_catalogue","parameters":{"query":"modern sofa"}}`
3. Open `RalphaProject.uproject` in UE5.4+
## MCP Commands
These commands interface with this asset library:
This project extends the Ralpha MCP protocol with:
| Command | Description |
|---------|-------------|
| `load_template` | Load a base template map |
| `apply_scene_preset` | Apply lighting/post/camera preset |
| `spawn_recipe` | Spawn a full scene composition |
| `spawn_catalogue_item` | Spawn single asset from catalogue |
| `search_catalogue` | Search assets by tags/name |
| `get_version` | Get plugin + catalogue version |
## Asset Standards
All assets must meet these requirements:
- **Scale**: 1 unit = 1 cm
- **Pivot**: Bottom center (for floor items)
- **Collision**: Present for interactive items
- **LODs**: At least 2 levels for complex meshes
- **Materials**: PBR with proper slots
- **Naming**: `Category_Type_Variant` (e.g., `Sofa_Modern_Grey`)
## Regenerating Catalogue
After adding assets, regenerate the catalogue:
```bash
cd ralpha-ue5
python RalphaData/scripts/generate_catalogue.py --scan-only
```json
{"type":"get_version"}
{"type":"load_template","parameters":{"template":"Studio"}}
{"type":"drop_to_floor","parameters":{"actor_id":"Chair_01"}}
{"type":"snap_to_surface","parameters":{"actor_id":"Painting","surface":"wall"}}
{"type":"place_on","parameters":{"actor_id":"Vase","target":"Table_01"}}
{"type":"spawn_recipe","parameters":{"recipe":"living_room_modern"}}
{"type":"search_catalogue","parameters":{"query":"red chair"}}
```
For full metadata extraction (requires UE Editor):
```bash
python RalphaData/scripts/generate_catalogue.py --project Ralpha.uproject --ue-path /path/to/UnrealEditor
```
## Asset Quality Standards
## License Policy
See [LICENSE_POLICY.md](LICENSE_POLICY.md) for asset provenance requirements.
- **CC0/Public Domain**: Preferred, no restrictions
- **CC-BY**: Allowed, attribution in catalogue
- **Megascans**: Allowed (free with UE)
- **Marketplace**: Allowed for purchased assets
- **Restricted**: Separate folder, excluded by default
## Related Repositories
- [ralpha](https://github.com/jamestagg/ralpha) - Main tooling, plugin, API
- [ralpha-ue5-metahumans](https://github.com/jamestagg/ralpha-ue5-metahumans) - MetaHuman characters (optional)
- Game-ready poly counts
- PBR materials (albedo, normal, roughness, metallic)
- Consistent scale (1 unit = 1 cm)
- Pivots at bottom center
- LODs for complex assets
- Collision for interactive items
## Contributing
1. Import asset following standards above
2. Run `generate_catalogue.py`
3. Add to appropriate recipe if applicable
4. Submit PR with asset source/license info
See [CONTRIBUTING.md](CONTRIBUTING.md) for asset import guidelines and naming conventions.

View File

@ -1,21 +0,0 @@
{
"FileVersion": 3,
"EngineAssociation": "5.7",
"Category": "",
"Description": "AI-driven style transfer for infinite world generation",
"Modules": [],
"Plugins": [
{
"Name": "RalphaPlugin",
"Enabled": true
},
{
"Name": "Water",
"Enabled": true
}
],
"TargetPlatforms": [
"Mac",
"Windows"
]
}

View File

@ -0,0 +1,27 @@
[/Script/UnrealEd.LevelEditorViewportSettings]
bInvertMiddleMousePan=True
bTransparentBoxSelection=True
bUseDistanceScaledCameraSpeed=True
[ContentBrowser]
ContentBrowserTab1.SourcesExpanded=True
;Enabling VR Scouting Widgets
[/Script/VREditor.VRModeSettings]
bEnableAutoVREditMode=False
bAutokeySequences=True
InteractorHand=Right
bShowWorldMovementGrid=False
bShowWorldMovementPostProcess=False
bShowWorldScaleProgressBar=True
UIBrightness=1.500000
GizmoScale=0.800000
DoubleClickTime=0.250000
TriggerPressedThreshold_Vive=0.330000
TriggerPressedThreshold_Rift=0.500000
bScaleWorldWithDynamicPivot=True
bAllowSimultaneousWorldScalingAndRotation=True
[/Script/UnrealEd.EditorPerformanceSettings]
;bShowFrameRateAndMemory=True
bThrottleCPUWhenNotForeground=False

View File

@ -0,0 +1,17 @@
[/Script/VREditor.VRModeSettings]
bEnableAutoVREditMode=False
bAutokeySequences=True
InteractorHand=Right
bShowWorldMovementGrid=False
bShowWorldMovementPostProcess=False
bShowWorldScaleProgressBar=True
UIBrightness=1.500000
GizmoScale=0.800000
DoubleClickTime=0.250000
TriggerPressedThreshold_Vive=0.330000
TriggerPressedThreshold_Rift=0.500000
bScaleWorldWithDynamicPivot=True
bAllowSimultaneousWorldScalingAndRotation=True

View File

@ -0,0 +1,210 @@
[/Script/HardwareTargeting.HardwareTargetingSettings]
; quality settings
TargetedHardwareClass=Desktop
AppliedTargetedHardwareClass=Desktop
DefaultGraphicsPerformance=Maximum
AppliedDefaultGraphicsPerformance=Maximum
[/Script/Engine.RendererSettings]
; exposure control and tone mapping settings
r.DefaultFeature.AutoExposure.ExtendDefaultLuminanceRange=True
r.DefaultFeature.AutoExposure.ExtendDefaultLuminanceRange=True
r.DefaultFeature.Bloom=False
r.DefaultFeature.AutoExposure=False
r.DefaultFeature.LocalExposure.HighlightContrastScale=0.8
r.DefaultFeature.LocalExposure.HighlightContrastScale=1.0
r.DefaultFeature.LocalExposure.ShadowContrastScale=0.8
r.DefaultFeature.LocalExposure.ShadowContrastScale=1.0
r.DefaultFeature.MotionBlur=False
r.SceneRenderTargetResizeMethod=2
;dynamic gi settings
r.LightPropagationVolume=0
; quality settings
r.ReflectionCaptureResolution=2048
r.AllowStaticLighting=True
r.HighResScreenshotDelay=8
r.DefaultBackBufferPixelFormat=4
r.AllowGlobalClipPlane=False
r.GBufferFormat=3
; shader settings
r.PostProcessing.PropagateAlpha=1
r.Deferred.SupportPrimitiveAlphaHoldout=True
r.SupportSkyAtmosphereAffectsHeightFog=True
r.DefaultFeature.LensFlare=False
r.ClearCoatNormal=False
r.NormalMapsForStaticLighting=False
r.GenerateMeshDistanceFields=True
r.DynamicGlobalIlluminationMethod=1
r.ReflectionMethod=1
r.SkinCache.CompileShaders=True
r.RayTracing=True
r.RayTracing.RayTracingProxies.ProjectEnabled=True
r.Substrate=True
r.Substrate.ProjectGBufferFormat=0
r.Shadow.Virtual.Enable=1
[/Script/EngineSettings.GameMapsSettings]
;defines what level to be loaded by default in the editor and at playback time
GameDefaultMap=/Game/Maps/RalphaWorld.RalphaWorld
EditorStartupMap=/Game/Maps/RalphaWorld.RalphaWorld
[/Script/UnrealEd.UnrealEdEngine]
; Remove Engine Template maps
-TemplateMapInfos=(ThumbnailTexture=Texture2D'/Engine/Maps/Templates/Thumbnails/VR-Basic.VR-Basic',Map="/Engine/Maps/Templates/VR-Basic")
;Allows for Hardware Accelerated Video Decoding
[/Script/WmfMediaFactory.WmfMediaSettings]
AllowNonStandardCodecs=True
HardwareAcceleratedVideoDecoding=True
LowLatency=False
NativeAudioOut=False
;Adds Virtual Scouting Widget for VR Scouting
[/Script/VPUtilitiesEditor.VPUtilitiesEditorSettings]
VirtualScoutingUI=/VirtualProductionUtilities/Editor/VirtualScoutingWidget.VirtualScoutingWidget_C
; Enables WebControl API
WebControl.EnableServerOnStartup=1
;Adds Remote Session for Vcam
[RemoteSession]
+Channels=(Name=FRemoteSessionFrameBufferChannel,Mode=Write)
+Channels=(Name=FRemoteSessionInputChannel,Mode=Read)
+Channels=(Name=FRemoteSessionXRTrackingChannel,Mode=Read)
;Setup for Media Profiles
[/Script/MediaFrameworkUtilities.MediaProfileSettings]
bApplyInCommandlet=False
MediaSourceProxy=/Game/VprodProject/MediaIO/MediaSource-01.MediaSource-01
MediaSourceProxy=/Game/VprodProject/MediaIO/MediaSource-02.MediaSource-02
MediaOutputProxy=/Game/VprodProject/MediaIO/MediaOutput-01.MediaOutput-01
StartupMediaProfile=None
;Setup for Multiuser
[/Script/Concert.ConcertClientConfig]
bIsHeadless=False
bInstallEditorToolbarButton=True
bAutoConnect=False
DefaultServerURL=
DefaultSessionName=
DefaultSessionToRestore=
DefaultSaveSessionAs=
ClientSettings=(DisplayName="",AvatarColor=(R=1.000000,G=1.000000,B=1.000000,A=1.000000),DesktopAvatarActorClass=/ConcertSyncClient/DesktopPresence.DesktopPresence_C,VRAvatarActorClass=/ConcertSyncClient/VRPresence.VRPresence_C,DiscoveryTimeoutSeconds=5,SessionTickFrequencySeconds=1,LatencyCompensationMs=0.000000,Tags=)
EndpointSettings=(bEnableLogging=False,PurgeProcessedMessageDelaySeconds=30,RemoteEndpointTimeoutSeconds=60)
;Setup for Ndisplay Cluster
[/Script/DisplayClusterEditor.DisplayClusterEditorSettings]
bEnabled=True
[/Script/WindowsTargetPlatform.WindowsTargetSettings]
DefaultGraphicsRHI=DefaultGraphicsRHI_DX12
DefaultGraphicsRHI=DefaultGraphicsRHI_DX12
-D3D12TargetedShaderFormats=PCD3D_SM5
+D3D12TargetedShaderFormats=PCD3D_SM6
-D3D11TargetedShaderFormats=PCD3D_SM5
+D3D11TargetedShaderFormats=PCD3D_SM5
[/Script/LinuxTargetPlatform.LinuxTargetSettings]
-TargetedRHIs=SF_VULKAN_SM5
+TargetedRHIs=SF_VULKAN_SM6
[/Script/AndroidFileServerEditor.AndroidFileServerRuntimeSettings]
bEnablePlugin=True
bAllowNetworkConnection=True
SecurityToken=0EAFB8DB4B4A6ADEED6F1B96CB3CA966
bIncludeInShipping=False
bAllowExternalStartInShipping=False
bCompileAFSProject=False
bUseCompression=False
bLogFiles=False
bReportStats=False
ConnectionType=USBOnly
bUseManualIPAddress=False
ManualIPAddress=
[/Script/Engine.Engine]
+ActiveGameNameRedirects=(OldGameName="TP_ME_VprodBP",NewGameName="/Script/Ralpha")
+ActiveGameNameRedirects=(OldGameName="/Script/TP_ME_VprodBP",NewGameName="/Script/Ralpha")
[/Script/Engine.CollisionProfile]
-Profiles=(Name="NoCollision",CollisionEnabled=NoCollision,ObjectTypeName="WorldStatic",CustomResponses=((Channel="Visibility",Response=ECR_Ignore),(Channel="Camera",Response=ECR_Ignore)),HelpMessage="No collision",bCanModify=False)
-Profiles=(Name="BlockAll",CollisionEnabled=QueryAndPhysics,ObjectTypeName="WorldStatic",CustomResponses=,HelpMessage="WorldStatic object that blocks all actors by default. All new custom channels will use its own default response. ",bCanModify=False)
-Profiles=(Name="OverlapAll",CollisionEnabled=QueryOnly,ObjectTypeName="WorldStatic",CustomResponses=((Channel="WorldStatic",Response=ECR_Overlap),(Channel="Pawn",Response=ECR_Overlap),(Channel="Visibility",Response=ECR_Overlap),(Channel="WorldDynamic",Response=ECR_Overlap),(Channel="Camera",Response=ECR_Overlap),(Channel="PhysicsBody",Response=ECR_Overlap),(Channel="Vehicle",Response=ECR_Overlap),(Channel="Destructible",Response=ECR_Overlap)),HelpMessage="WorldStatic object that overlaps all actors by default. All new custom channels will use its own default response. ",bCanModify=False)
-Profiles=(Name="BlockAllDynamic",CollisionEnabled=QueryAndPhysics,ObjectTypeName="WorldDynamic",CustomResponses=,HelpMessage="WorldDynamic object that blocks all actors by default. All new custom channels will use its own default response. ",bCanModify=False)
-Profiles=(Name="OverlapAllDynamic",CollisionEnabled=QueryOnly,ObjectTypeName="WorldDynamic",CustomResponses=((Channel="WorldStatic",Response=ECR_Overlap),(Channel="Pawn",Response=ECR_Overlap),(Channel="Visibility",Response=ECR_Overlap),(Channel="WorldDynamic",Response=ECR_Overlap),(Channel="Camera",Response=ECR_Overlap),(Channel="PhysicsBody",Response=ECR_Overlap),(Channel="Vehicle",Response=ECR_Overlap),(Channel="Destructible",Response=ECR_Overlap)),HelpMessage="WorldDynamic object that overlaps all actors by default. All new custom channels will use its own default response. ",bCanModify=False)
-Profiles=(Name="IgnoreOnlyPawn",CollisionEnabled=QueryOnly,ObjectTypeName="WorldDynamic",CustomResponses=((Channel="Pawn",Response=ECR_Ignore),(Channel="Vehicle",Response=ECR_Ignore)),HelpMessage="WorldDynamic object that ignores Pawn and Vehicle. All other channels will be set to default.",bCanModify=False)
-Profiles=(Name="OverlapOnlyPawn",CollisionEnabled=QueryOnly,ObjectTypeName="WorldDynamic",CustomResponses=((Channel="Pawn",Response=ECR_Overlap),(Channel="Vehicle",Response=ECR_Overlap),(Channel="Camera",Response=ECR_Ignore)),HelpMessage="WorldDynamic object that overlaps Pawn, Camera, and Vehicle. All other channels will be set to default. ",bCanModify=False)
-Profiles=(Name="Pawn",CollisionEnabled=QueryAndPhysics,ObjectTypeName="Pawn",CustomResponses=((Channel="Visibility",Response=ECR_Ignore)),HelpMessage="Pawn object. Can be used for capsule of any playerable character or AI. ",bCanModify=False)
-Profiles=(Name="Spectator",CollisionEnabled=QueryOnly,ObjectTypeName="Pawn",CustomResponses=((Channel="WorldStatic",Response=ECR_Block),(Channel="Pawn",Response=ECR_Ignore),(Channel="Visibility",Response=ECR_Ignore),(Channel="WorldDynamic",Response=ECR_Ignore),(Channel="Camera",Response=ECR_Ignore),(Channel="PhysicsBody",Response=ECR_Ignore),(Channel="Vehicle",Response=ECR_Ignore),(Channel="Destructible",Response=ECR_Ignore)),HelpMessage="Pawn object that ignores all other actors except WorldStatic.",bCanModify=False)
-Profiles=(Name="CharacterMesh",CollisionEnabled=QueryOnly,ObjectTypeName="Pawn",CustomResponses=((Channel="Pawn",Response=ECR_Ignore),(Channel="Vehicle",Response=ECR_Ignore),(Channel="Visibility",Response=ECR_Ignore)),HelpMessage="Pawn object that is used for Character Mesh. All other channels will be set to default.",bCanModify=False)
-Profiles=(Name="PhysicsActor",CollisionEnabled=QueryAndPhysics,ObjectTypeName="PhysicsBody",CustomResponses=,HelpMessage="Simulating actors",bCanModify=False)
-Profiles=(Name="Destructible",CollisionEnabled=QueryAndPhysics,ObjectTypeName="Destructible",CustomResponses=,HelpMessage="Destructible actors",bCanModify=False)
-Profiles=(Name="InvisibleWall",CollisionEnabled=QueryAndPhysics,ObjectTypeName="WorldStatic",CustomResponses=((Channel="Visibility",Response=ECR_Ignore)),HelpMessage="WorldStatic object that is invisible.",bCanModify=False)
-Profiles=(Name="InvisibleWallDynamic",CollisionEnabled=QueryAndPhysics,ObjectTypeName="WorldDynamic",CustomResponses=((Channel="Visibility",Response=ECR_Ignore)),HelpMessage="WorldDynamic object that is invisible.",bCanModify=False)
-Profiles=(Name="Trigger",CollisionEnabled=QueryOnly,ObjectTypeName="WorldDynamic",CustomResponses=((Channel="WorldStatic",Response=ECR_Overlap),(Channel="Pawn",Response=ECR_Overlap),(Channel="Visibility",Response=ECR_Ignore),(Channel="WorldDynamic",Response=ECR_Overlap),(Channel="Camera",Response=ECR_Overlap),(Channel="PhysicsBody",Response=ECR_Overlap),(Channel="Vehicle",Response=ECR_Overlap),(Channel="Destructible",Response=ECR_Overlap)),HelpMessage="WorldDynamic object that is used for trigger. All other channels will be set to default.",bCanModify=False)
-Profiles=(Name="Ragdoll",CollisionEnabled=QueryAndPhysics,ObjectTypeName="PhysicsBody",CustomResponses=((Channel="Pawn",Response=ECR_Ignore),(Channel="Visibility",Response=ECR_Ignore)),HelpMessage="Simulating Skeletal Mesh Component. All other channels will be set to default.",bCanModify=False)
-Profiles=(Name="Vehicle",CollisionEnabled=QueryAndPhysics,ObjectTypeName="Vehicle",CustomResponses=,HelpMessage="Vehicle object that blocks Vehicle, WorldStatic, and WorldDynamic. All other channels will be set to default.",bCanModify=False)
-Profiles=(Name="UI",CollisionEnabled=QueryOnly,ObjectTypeName="WorldDynamic",CustomResponses=((Channel="WorldStatic",Response=ECR_Overlap),(Channel="Pawn",Response=ECR_Overlap),(Channel="Visibility",Response=ECR_Block),(Channel="WorldDynamic",Response=ECR_Overlap),(Channel="Camera",Response=ECR_Overlap),(Channel="PhysicsBody",Response=ECR_Overlap),(Channel="Vehicle",Response=ECR_Overlap),(Channel="Destructible",Response=ECR_Overlap)),HelpMessage="WorldStatic object that overlaps all actors by default. All new custom channels will use its own default response. ",bCanModify=False)
+Profiles=(Name="NoCollision",CollisionEnabled=NoCollision,bCanModify=False,ObjectTypeName="WorldStatic",CustomResponses=((Channel="Visibility",Response=ECR_Ignore),(Channel="Camera",Response=ECR_Ignore)),HelpMessage="No collision")
+Profiles=(Name="BlockAll",CollisionEnabled=QueryAndPhysics,bCanModify=False,ObjectTypeName="WorldStatic",CustomResponses=,HelpMessage="WorldStatic object that blocks all actors by default. All new custom channels will use its own default response. ")
+Profiles=(Name="OverlapAll",CollisionEnabled=QueryOnly,bCanModify=False,ObjectTypeName="WorldStatic",CustomResponses=((Channel="WorldStatic",Response=ECR_Overlap),(Channel="Pawn",Response=ECR_Overlap),(Channel="Visibility",Response=ECR_Overlap),(Channel="WorldDynamic",Response=ECR_Overlap),(Channel="Camera",Response=ECR_Overlap),(Channel="PhysicsBody",Response=ECR_Overlap),(Channel="Vehicle",Response=ECR_Overlap),(Channel="Destructible",Response=ECR_Overlap)),HelpMessage="WorldStatic object that overlaps all actors by default. All new custom channels will use its own default response. ")
+Profiles=(Name="BlockAllDynamic",CollisionEnabled=QueryAndPhysics,bCanModify=False,ObjectTypeName="WorldDynamic",CustomResponses=,HelpMessage="WorldDynamic object that blocks all actors by default. All new custom channels will use its own default response. ")
+Profiles=(Name="OverlapAllDynamic",CollisionEnabled=QueryOnly,bCanModify=False,ObjectTypeName="WorldDynamic",CustomResponses=((Channel="WorldStatic",Response=ECR_Overlap),(Channel="Pawn",Response=ECR_Overlap),(Channel="Visibility",Response=ECR_Overlap),(Channel="WorldDynamic",Response=ECR_Overlap),(Channel="Camera",Response=ECR_Overlap),(Channel="PhysicsBody",Response=ECR_Overlap),(Channel="Vehicle",Response=ECR_Overlap),(Channel="Destructible",Response=ECR_Overlap)),HelpMessage="WorldDynamic object that overlaps all actors by default. All new custom channels will use its own default response. ")
+Profiles=(Name="IgnoreOnlyPawn",CollisionEnabled=QueryOnly,bCanModify=False,ObjectTypeName="WorldDynamic",CustomResponses=((Channel="Pawn",Response=ECR_Ignore),(Channel="Vehicle",Response=ECR_Ignore)),HelpMessage="WorldDynamic object that ignores Pawn and Vehicle. All other channels will be set to default.")
+Profiles=(Name="OverlapOnlyPawn",CollisionEnabled=QueryOnly,bCanModify=False,ObjectTypeName="WorldDynamic",CustomResponses=((Channel="Pawn",Response=ECR_Overlap),(Channel="Vehicle",Response=ECR_Overlap),(Channel="Camera",Response=ECR_Ignore)),HelpMessage="WorldDynamic object that overlaps Pawn, Camera, and Vehicle. All other channels will be set to default. ")
+Profiles=(Name="Pawn",CollisionEnabled=QueryAndPhysics,bCanModify=False,ObjectTypeName="Pawn",CustomResponses=((Channel="Visibility",Response=ECR_Ignore)),HelpMessage="Pawn object. Can be used for capsule of any playerable character or AI. ")
+Profiles=(Name="Spectator",CollisionEnabled=QueryOnly,bCanModify=False,ObjectTypeName="Pawn",CustomResponses=((Channel="WorldStatic"),(Channel="Pawn",Response=ECR_Ignore),(Channel="Visibility",Response=ECR_Ignore),(Channel="WorldDynamic",Response=ECR_Ignore),(Channel="Camera",Response=ECR_Ignore),(Channel="PhysicsBody",Response=ECR_Ignore),(Channel="Vehicle",Response=ECR_Ignore),(Channel="Destructible",Response=ECR_Ignore)),HelpMessage="Pawn object that ignores all other actors except WorldStatic.")
+Profiles=(Name="CharacterMesh",CollisionEnabled=QueryOnly,bCanModify=False,ObjectTypeName="Pawn",CustomResponses=((Channel="Pawn",Response=ECR_Ignore),(Channel="Vehicle",Response=ECR_Ignore),(Channel="Visibility",Response=ECR_Ignore)),HelpMessage="Pawn object that is used for Character Mesh. All other channels will be set to default.")
+Profiles=(Name="PhysicsActor",CollisionEnabled=QueryAndPhysics,bCanModify=False,ObjectTypeName="PhysicsBody",CustomResponses=,HelpMessage="Simulating actors")
+Profiles=(Name="Destructible",CollisionEnabled=QueryAndPhysics,bCanModify=False,ObjectTypeName="Destructible",CustomResponses=,HelpMessage="Destructible actors")
+Profiles=(Name="InvisibleWall",CollisionEnabled=QueryAndPhysics,bCanModify=False,ObjectTypeName="WorldStatic",CustomResponses=((Channel="Visibility",Response=ECR_Ignore)),HelpMessage="WorldStatic object that is invisible.")
+Profiles=(Name="InvisibleWallDynamic",CollisionEnabled=QueryAndPhysics,bCanModify=False,ObjectTypeName="WorldDynamic",CustomResponses=((Channel="Visibility",Response=ECR_Ignore)),HelpMessage="WorldDynamic object that is invisible.")
+Profiles=(Name="Trigger",CollisionEnabled=QueryOnly,bCanModify=False,ObjectTypeName="WorldDynamic",CustomResponses=((Channel="WorldStatic",Response=ECR_Overlap),(Channel="Pawn",Response=ECR_Overlap),(Channel="Visibility",Response=ECR_Ignore),(Channel="WorldDynamic",Response=ECR_Overlap),(Channel="Camera",Response=ECR_Overlap),(Channel="PhysicsBody",Response=ECR_Overlap),(Channel="Vehicle",Response=ECR_Overlap),(Channel="Destructible",Response=ECR_Overlap)),HelpMessage="WorldDynamic object that is used for trigger. All other channels will be set to default.")
+Profiles=(Name="Ragdoll",CollisionEnabled=QueryAndPhysics,bCanModify=False,ObjectTypeName="PhysicsBody",CustomResponses=((Channel="Pawn",Response=ECR_Ignore),(Channel="Visibility",Response=ECR_Ignore)),HelpMessage="Simulating Skeletal Mesh Component. All other channels will be set to default.")
+Profiles=(Name="Vehicle",CollisionEnabled=QueryAndPhysics,bCanModify=False,ObjectTypeName="Vehicle",CustomResponses=,HelpMessage="Vehicle object that blocks Vehicle, WorldStatic, and WorldDynamic. All other channels will be set to default.")
+Profiles=(Name="UI",CollisionEnabled=QueryOnly,bCanModify=False,ObjectTypeName="WorldDynamic",CustomResponses=((Channel="WorldStatic",Response=ECR_Overlap),(Channel="Pawn",Response=ECR_Overlap),(Channel="Visibility"),(Channel="WorldDynamic",Response=ECR_Overlap),(Channel="Camera",Response=ECR_Overlap),(Channel="PhysicsBody",Response=ECR_Overlap),(Channel="Vehicle",Response=ECR_Overlap),(Channel="Destructible",Response=ECR_Overlap)),HelpMessage="WorldStatic object that overlaps all actors by default. All new custom channels will use its own default response. ")
+Profiles=(Name="WaterBodyCollision",CollisionEnabled=QueryOnly,bCanModify=False,ObjectTypeName="WorldDynamic",CustomResponses=((Channel="WorldDynamic",Response=ECR_Overlap),(Channel="Pawn",Response=ECR_Overlap),(Channel="Visibility",Response=ECR_Ignore),(Channel="Camera",Response=ECR_Ignore),(Channel="PhysicsBody",Response=ECR_Overlap),(Channel="Vehicle",Response=ECR_Overlap),(Channel="Destructible",Response=ECR_Overlap)),HelpMessage="Default Water Collision Profile (Created by Water Plugin)")
-ProfileRedirects=(OldName="BlockingVolume",NewName="InvisibleWall")
-ProfileRedirects=(OldName="InterpActor",NewName="IgnoreOnlyPawn")
-ProfileRedirects=(OldName="StaticMeshComponent",NewName="BlockAllDynamic")
-ProfileRedirects=(OldName="SkeletalMeshActor",NewName="PhysicsActor")
-ProfileRedirects=(OldName="InvisibleActor",NewName="InvisibleWallDynamic")
+ProfileRedirects=(OldName="BlockingVolume",NewName="InvisibleWall")
+ProfileRedirects=(OldName="InterpActor",NewName="IgnoreOnlyPawn")
+ProfileRedirects=(OldName="StaticMeshComponent",NewName="BlockAllDynamic")
+ProfileRedirects=(OldName="SkeletalMeshActor",NewName="PhysicsActor")
+ProfileRedirects=(OldName="InvisibleActor",NewName="InvisibleWallDynamic")
-CollisionChannelRedirects=(OldName="Static",NewName="WorldStatic")
-CollisionChannelRedirects=(OldName="Dynamic",NewName="WorldDynamic")
-CollisionChannelRedirects=(OldName="VehicleMovement",NewName="Vehicle")
-CollisionChannelRedirects=(OldName="PawnMovement",NewName="Pawn")
+CollisionChannelRedirects=(OldName="Static",NewName="WorldStatic")
+CollisionChannelRedirects=(OldName="Dynamic",NewName="WorldDynamic")
+CollisionChannelRedirects=(OldName="VehicleMovement",NewName="Vehicle")
+CollisionChannelRedirects=(OldName="PawnMovement",NewName="Pawn")

View File

@ -0,0 +1,14 @@
[/Script/EngineSettings.GeneralProjectSettings]
bUseBorderlessWindow=True
ProjectID=331D31E00D4FF07D2E5630986DDD9978
ProjectName=Ralpha
CompanyName=Valis
[/Script/MediaFrameworkUtilities.MediaProfileSettings]
bApplyInCommandlet=False
+MediaSourceProxy=/Game/VprodProject/MediaIO/MediaSource-01.MediaSource-01
+MediaSourceProxy=/Game/VprodProject/MediaIO/MediaSource-02.MediaSource-02
+MediaOutputProxy=/Game/VprodProject/MediaIO/MediaOutput-01.MediaOutput-01
StartupMediaProfile=None

View File

@ -0,0 +1,4 @@
[/Script/Engine.InputSettings]
bAlwaysShowTouchInterface=True
DefaultPlayerInputClass=/Script/EnhancedInput.EnhancedPlayerInput
DefaultInputComponentClass=/Script/EnhancedInput.EnhancedInputComponent

View File

@ -0,0 +1,22 @@
; These are tweaked defaults for various lightmass solver and export settings
; Artist oriented lightmass settings are in the editor UI
; Documentation for all of these is in UnrealLightmass / Public / SceneExport.h
; This ini is reloaded every time a lighting build begins, no need to restart
; Warning: overwriting this file with an old version will cause the editor to crash. This file must be in sync with the editor executable.
; Instead, create a DefaultLightmass.ini in your project and override just the values you need, then the overrides will continue to work on version upgrades.
; https://docs.unrealengine.com/latest/INT/Programming/Basics/ConfigurationFiles/
;
; For example, in your project's Config/DefaultLightmass.ini:
; [DevOptions.PrecomputedDynamicObjectLighting]
; SurfaceLightSampleSpacing=400
[DevOptions.StaticLightingSettings]
bCompressLightmaps=False
NumIndirectLightingBounces=5
NumSkyLightingBounces=5
IndirectLightingSmoothness=0.9
IndirectLightingQuality=2.0
[DevOptions.StaticLightingSceneConstants]
StaticLightingLevelScale=0.5

View File

@ -0,0 +1,13 @@
[/Script/VPUtilitiesEditor.VPUtilitiesEditorSettings]
VirtualScoutingUI=/VirtualProductionUtilities/Editor/VirtualScoutingWidget.VirtualScoutingWidget_C
FlightSpeed=0.500000
GripNavSpeed=0.250000
bUseMetric=False
bUseTransformGizmo=False
bUseGripInertiaDamping=True
InertiaDamping=0.950000
bIsHelperSystemEnabled=True
ScoutingSubsystemEdititorUtilityActorClassPath=/VirtualProductionUtilities/VirtualProductionHelpers.VirtualProductionHelpers_C

View File

@ -0,0 +1,6 @@
[/Script/Engine.Engine]
GameEngine=/Script/DisplayCluster.DisplayClusterGameEngine
UnrealEdEngine=/Script/DisplayClusterEditor.DisplayClusterEditorEngine
GameViewportClientClassName=/Script/DisplayCluster.DisplayClusterViewportClient

BIN
Ralpha/Content/Maps/Locations/LVL_Alpine.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_ArtGallery.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Balcony_Window.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Beach.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Bedroom_Bathroom.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Cafe.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Campsite.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Carpark.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_ChefShow.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Church.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Desert.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Diner.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Elevator.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Farm.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Forest.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Garden.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Government.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Hallway.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Home.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Hotel.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Kitchen.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Kyoto.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Lightboard.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Medieval.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_NeonCyber.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Nightclub.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Office.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Outback.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_OverTheShoulder.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_PoolSpa.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_ProKitchen.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Pub.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Racer.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Rooftop.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_SafariZoo.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Starship.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Street.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Studio.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_SubwayMetro.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Urban.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Warehouse.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Maps/Locations/LVL_Workshop_Garage.umap (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,462 @@
{
"version": "1.1",
"description": "Ralpha Location Configuration - 42 themed locations for visual matching",
"hub_level": "/Game/Maps/RalphaWorld",
"locations": [
{
"id": "alpine",
"name": "Alpine Mountains",
"level_path": "/Game/Maps/Locations/LVL_Alpine",
"description": "Snow-capped mountains, alpine meadows, dramatic vistas",
"domains": ["SKY", "TERRAIN", "FOG", "LIGHTING", "SNOW"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": -10000, "y": 0, "z": 0},
"streaming_distance": 15000
},
{
"id": "artgallery",
"name": "Art Gallery",
"level_path": "/Game/Maps/Locations/LVL_ArtGallery",
"description": "Modern art gallery, white walls, spot lighting, minimal aesthetic",
"domains": ["LIGHTING", "OBJECTS", "COMPOSITION"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": -8660, "y": -5000, "z": 0},
"streaming_distance": 4000
},
{
"id": "balcony_window",
"name": "Balcony Window",
"level_path": "/Game/Maps/Locations/LVL_Balcony_Window",
"description": "Interior with balcony/window view, natural light, indoor-outdoor transition",
"domains": ["LIGHTING", "COMPOSITION", "INTERIOR"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": 16000, "y": 4000, "z": 0},
"streaming_distance": 4000
},
{
"id": "beach",
"name": "Beach Island",
"level_path": "/Game/Maps/Locations/LVL_Beach",
"description": "Tropical beach with ocean, sand, palm trees, sunset views",
"domains": ["SKY", "SEA", "TERRAIN", "LIGHTING"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": 10000, "y": 0, "z": 0},
"streaming_distance": 8000
},
{
"id": "bedroom_bathroom",
"name": "Bedroom & Bathroom",
"level_path": "/Game/Maps/Locations/LVL_Bedroom_Bathroom",
"description": "Private residential spaces, intimate lighting, personal setting",
"domains": ["LIGHTING", "OBJECTS", "INTERIOR", "COMPOSITION"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": 16000, "y": -4000, "z": 0},
"streaming_distance": 4000
},
{
"id": "cafe",
"name": "Cafe Restaurant",
"level_path": "/Game/Maps/Locations/LVL_Cafe",
"description": "Cozy cafe/restaurant interior, warm lighting, lifestyle setting",
"domains": ["LIGHTING", "OBJECTS", "FACES", "COMPOSITION"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": -5000, "y": -8660, "z": 0},
"streaming_distance": 4000
},
{
"id": "campsite",
"name": "Campsite",
"level_path": "/Game/Maps/Locations/LVL_Campsite",
"description": "Outdoor camping scene, tent, campfire, night sky",
"domains": ["SKY", "TERRAIN", "LIGHTING", "FOLIAGE", "FIRE"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": 18000, "y": 0, "z": 0},
"streaming_distance": 6000
},
{
"id": "carpark",
"name": "Car Park / Parking Garage",
"level_path": "/Game/Maps/Locations/LVL_Carpark",
"description": "Multi-level parking structure, fluorescent lighting, concrete",
"domains": ["LIGHTING", "URBAN", "VEHICLES"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": 17000, "y": 7000, "z": 0},
"streaming_distance": 5000
},
{
"id": "chefshow",
"name": "Chef Show / Cooking Set",
"level_path": "/Game/Maps/Locations/LVL_ChefShow",
"description": "TV cooking show set, studio kitchen, broadcast lighting",
"domains": ["LIGHTING", "OBJECTS", "FACES", "BROADCAST"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": 14000, "y": 12000, "z": 0},
"streaming_distance": 4000
},
{
"id": "church",
"name": "Church District",
"level_path": "/Game/Maps/Locations/LVL_Church",
"description": "Gothic church interior and exterior, stained glass, dramatic lighting",
"domains": ["LIGHTING", "OBJECTS", "COMPOSITION"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": 8660, "y": 5000, "z": 0},
"streaming_distance": 6000
},
{
"id": "desert",
"name": "Desert Canyon",
"level_path": "/Game/Maps/Locations/LVL_Desert",
"description": "Arid desert landscape, rock formations, dramatic shadows",
"domains": ["SKY", "TERRAIN", "LIGHTING"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": 0, "y": -10000, "z": 0},
"streaming_distance": 12000
},
{
"id": "diner",
"name": "Retro Diner",
"level_path": "/Game/Maps/Locations/LVL_Diner",
"description": "Classic American diner, neon signs, booth seating, nostalgic",
"domains": ["LIGHTING", "OBJECTS", "NEON", "INTERIOR"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": 12000, "y": 14000, "z": 0},
"streaming_distance": 4000
},
{
"id": "elevator",
"name": "Elevator Interior",
"level_path": "/Game/Maps/Locations/LVL_Elevator",
"description": "Enclosed elevator space, tight composition, reflective surfaces",
"domains": ["LIGHTING", "COMPOSITION", "INTERIOR"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": 8000, "y": 16000, "z": 0},
"streaming_distance": 2000
},
{
"id": "farm",
"name": "Farm Countryside",
"level_path": "/Game/Maps/Locations/LVL_Farm",
"description": "Rural farmland, barns, fields, pastoral scenes",
"domains": ["SKY", "TERRAIN", "LIGHTING", "FOLIAGE"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": 5000, "y": -8660, "z": 0},
"streaming_distance": 10000
},
{
"id": "forest",
"name": "Forest Wilderness",
"level_path": "/Game/Maps/Locations/LVL_Forest",
"description": "Dense forest with varied vegetation, paths, clearings",
"domains": ["SKY", "TERRAIN", "FOG", "LIGHTING", "FOLIAGE"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": -8660, "y": 5000, "z": 0},
"streaming_distance": 12000
},
{
"id": "garden",
"name": "Garden Park",
"level_path": "/Game/Maps/Locations/LVL_Garden",
"description": "Manicured gardens, fountains, flower beds, pathways",
"domains": ["TERRAIN", "FOLIAGE", "LIGHTING", "WATER"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": 8660, "y": -5000, "z": 0},
"streaming_distance": 6000
},
{
"id": "government",
"name": "Government Building",
"level_path": "/Game/Maps/Locations/LVL_Government",
"description": "Official government interior, marble, formal architecture",
"domains": ["LIGHTING", "OBJECTS", "COMPOSITION", "INTERIOR"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": 4000, "y": 17000, "z": 0},
"streaming_distance": 5000
},
{
"id": "hallway",
"name": "Hallway Corridor",
"level_path": "/Game/Maps/Locations/LVL_Hallway",
"description": "Long corridor, perspective lines, doorways, institutional",
"domains": ["LIGHTING", "COMPOSITION", "INTERIOR"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": 0, "y": 18000, "z": 0},
"streaming_distance": 4000
},
{
"id": "home",
"name": "Residential Home",
"level_path": "/Game/Maps/Locations/LVL_Home",
"description": "Modern home interior - living room, kitchen, bedroom",
"domains": ["LIGHTING", "OBJECTS", "COMPOSITION"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": 0, "y": 10000, "z": 0},
"streaming_distance": 5000
},
{
"id": "hotel",
"name": "Luxury Hotel",
"level_path": "/Game/Maps/Locations/LVL_Hotel",
"description": "Upscale hotel lobby and suite, elegant interiors",
"domains": ["LIGHTING", "OBJECTS", "COMPOSITION"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": 12000, "y": 7000, "z": 0},
"streaming_distance": 5000
},
{
"id": "kitchen",
"name": "Home Kitchen",
"level_path": "/Game/Maps/Locations/LVL_Kitchen",
"description": "Residential kitchen, appliances, counter space, cooking",
"domains": ["LIGHTING", "OBJECTS", "INTERIOR"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": -4000, "y": 17000, "z": 0},
"streaming_distance": 4000
},
{
"id": "kyoto",
"name": "Kyoto Japan",
"level_path": "/Game/Maps/Locations/LVL_Kyoto",
"description": "Traditional Japanese architecture, temples, zen gardens, cherry blossoms",
"domains": ["LIGHTING", "OBJECTS", "FOLIAGE", "COMPOSITION", "CULTURAL"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": 7000, "y": 12000, "z": 0},
"streaming_distance": 8000
},
{
"id": "lightboard",
"name": "Lightboard / LED Wall",
"level_path": "/Game/Maps/Locations/LVL_Lightboard",
"description": "LED video wall background, virtual production, controlled lighting",
"domains": ["LIGHTING", "COMPOSITION", "VIRTUAL_PRODUCTION"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": -8000, "y": 16000, "z": 0},
"streaming_distance": 4000
},
{
"id": "medieval",
"name": "Medieval Castle",
"level_path": "/Game/Maps/Locations/LVL_Medieval",
"description": "Castle interiors and courtyards, torchlight, stone walls",
"domains": ["LIGHTING", "OBJECTS", "COMPOSITION"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": 0, "y": 14000, "z": 0},
"streaming_distance": 8000
},
{
"id": "neoncyber",
"name": "Neon Cyberpunk",
"level_path": "/Game/Maps/Locations/LVL_NeonCyber",
"description": "Futuristic cyberpunk cityscape, neon signs, rain-slicked streets",
"domains": ["LIGHTING", "NEON", "URBAN", "POST"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": -7000, "y": 12000, "z": 0},
"streaming_distance": 10000
},
{
"id": "nightclub",
"name": "Nightclub Bar",
"level_path": "/Game/Maps/Locations/LVL_Nightclub",
"description": "Club interior with colored lighting, dance floor, bar",
"domains": ["LIGHTING", "NEON", "FACES", "BODIES"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": -12000, "y": 7000, "z": 0},
"streaming_distance": 4000
},
{
"id": "office",
"name": "Office Space",
"level_path": "/Game/Maps/Locations/LVL_Office",
"description": "Corporate office, cubicles, meeting rooms, professional setting",
"domains": ["LIGHTING", "OBJECTS", "INTERIOR", "COMPOSITION"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": -12000, "y": 14000, "z": 0},
"streaming_distance": 5000
},
{
"id": "outback",
"name": "Australian Outback",
"level_path": "/Game/Maps/Locations/LVL_Outback",
"description": "Red earth terrain, sparse vegetation, dramatic skies",
"domains": ["SKY", "TERRAIN", "LIGHTING"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": -14000, "y": 0, "z": 0},
"streaming_distance": 15000
},
{
"id": "overtheshoulder",
"name": "Over The Shoulder",
"level_path": "/Game/Maps/Locations/LVL_OverTheShoulder",
"description": "Classic OTS composition setup, conversation framing, two-shot",
"domains": ["COMPOSITION", "FACES", "LIGHTING"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": -16000, "y": 8000, "z": 0},
"streaming_distance": 3000
},
{
"id": "poolspa",
"name": "Pool and Spa",
"level_path": "/Game/Maps/Locations/LVL_PoolSpa",
"description": "Indoor/outdoor pool, spa facilities, water reflections",
"domains": ["WATER", "LIGHTING", "OBJECTS"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": -12000, "y": -7000, "z": 0},
"streaming_distance": 5000
},
{
"id": "prokitchen",
"name": "Professional Kitchen",
"level_path": "/Game/Maps/Locations/LVL_ProKitchen",
"description": "Commercial restaurant kitchen, stainless steel, industrial",
"domains": ["LIGHTING", "OBJECTS", "INTERIOR"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": -16000, "y": 4000, "z": 0},
"streaming_distance": 4000
},
{
"id": "pub",
"name": "British Pub",
"level_path": "/Game/Maps/Locations/LVL_Pub",
"description": "Traditional pub interior, wood paneling, warm atmosphere",
"domains": ["LIGHTING", "OBJECTS", "INTERIOR"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": -17000, "y": 0, "z": 0},
"streaming_distance": 4000
},
{
"id": "racer",
"name": "Racing / Car Interior",
"level_path": "/Game/Maps/Locations/LVL_Racer",
"description": "Race car cockpit, dashboard, motion blur, speed",
"domains": ["VEHICLES", "COMPOSITION", "LIGHTING"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": -16000, "y": -4000, "z": 0},
"streaming_distance": 3000
},
{
"id": "rooftop",
"name": "Rooftop Terrace",
"level_path": "/Game/Maps/Locations/LVL_Rooftop",
"description": "Urban rooftop with city skyline views, golden hour shots",
"domains": ["SKY", "LIGHTING", "URBAN", "COMPOSITION"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": -7000, "y": -12000, "z": 0},
"streaming_distance": 8000
},
{
"id": "safarizoo",
"name": "Safari Zoo",
"level_path": "/Game/Maps/Locations/LVL_SafariZoo",
"description": "African savanna, wildlife, safari vehicles",
"domains": ["SKY", "TERRAIN", "FOLIAGE", "LIGHTING"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": 0, "y": -14000, "z": 0},
"streaming_distance": 15000
},
{
"id": "starship",
"name": "Starship Interior",
"level_path": "/Game/Maps/Locations/LVL_Starship",
"description": "Sci-fi spaceship corridors, bridge, futuristic tech",
"domains": ["LIGHTING", "OBJECTS", "SCIFI"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": 7000, "y": -12000, "z": 0},
"streaming_distance": 5000
},
{
"id": "street",
"name": "Street Scene",
"level_path": "/Game/Maps/Locations/LVL_Street",
"description": "Generic street level, sidewalk, storefronts, pedestrian view",
"domains": ["URBAN", "LIGHTING", "OBJECTS", "SKY"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": -16000, "y": -8000, "z": 0},
"streaming_distance": 8000
},
{
"id": "studio",
"name": "Studio Backlot",
"level_path": "/Game/Maps/Locations/LVL_Studio",
"description": "Professional photo/film studio with controllable lighting rigs",
"domains": ["LIGHTING", "FACES", "BODIES", "COMPOSITION"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": 5000, "y": 8660, "z": 0},
"streaming_distance": 4000
},
{
"id": "subwaymetro",
"name": "Subway Metro",
"level_path": "/Game/Maps/Locations/LVL_SubwayMetro",
"description": "Underground subway station, artificial lighting, urban transit",
"domains": ["LIGHTING", "URBAN", "OBJECTS"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": 12000, "y": -7000, "z": 0},
"streaming_distance": 5000
},
{
"id": "urban",
"name": "Urban Downtown",
"level_path": "/Game/Maps/Locations/LVL_Urban",
"description": "City streets, building facades, traffic, storefronts",
"domains": ["SKY", "LIGHTING", "OBJECTS", "COMPOSITION"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": -5000, "y": 8660, "z": 0},
"streaming_distance": 10000
},
{
"id": "warehouse",
"name": "Industrial Warehouse",
"level_path": "/Game/Maps/Locations/LVL_Warehouse",
"description": "Gritty warehouse space, industrial aesthetic, dramatic shafts of light",
"domains": ["LIGHTING", "OBJECTS", "COMPOSITION"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": 14000, "y": 0, "z": 0},
"streaming_distance": 6000
},
{
"id": "workshop_garage",
"name": "Workshop Garage",
"level_path": "/Game/Maps/Locations/LVL_Workshop_Garage",
"description": "Auto mechanic garage, tools, workbench, vehicles",
"domains": ["LIGHTING", "OBJECTS", "VEHICLES", "INTERIOR"],
"spawn_point": {"x": 0, "y": 0, "z": 100},
"hub_position": {"x": -14000, "y": -10000, "z": 0},
"streaming_distance": 5000
}
],
"hub_config": {
"description": "Central plaza connecting all 42 locations in expanded rings",
"inner_ring_radius": 10000,
"outer_ring_radius": 18000,
"features": [
"Central landmark/fountain",
"Radial paths to each location",
"Signage and wayfinding",
"Neutral lighting for transitions"
]
},
"domain_index": {
"SKY": ["alpine", "beach", "campsite", "desert", "farm", "forest", "outback", "rooftop", "safarizoo", "street", "urban"],
"SEA": ["beach"],
"WATER": ["beach", "garden", "poolspa"],
"TERRAIN": ["alpine", "beach", "campsite", "desert", "farm", "forest", "garden", "outback", "safarizoo"],
"LIGHTING": ["alpine", "artgallery", "balcony_window", "beach", "bedroom_bathroom", "cafe", "campsite", "carpark", "chefshow", "church", "desert", "diner", "elevator", "farm", "forest", "garden", "government", "hallway", "home", "hotel", "kitchen", "kyoto", "lightboard", "medieval", "neoncyber", "nightclub", "office", "outback", "overtheshoulder", "poolspa", "prokitchen", "pub", "racer", "rooftop", "safarizoo", "starship", "street", "studio", "subwaymetro", "urban", "warehouse", "workshop_garage"],
"FOG": ["alpine", "forest"],
"FOLIAGE": ["campsite", "farm", "forest", "garden", "kyoto", "safarizoo"],
"OBJECTS": ["artgallery", "cafe", "church", "diner", "government", "home", "hotel", "kitchen", "kyoto", "medieval", "office", "poolspa", "prokitchen", "pub", "starship", "street", "subwaymetro", "urban", "warehouse", "workshop_garage"],
"FACES": ["cafe", "chefshow", "nightclub", "overtheshoulder", "studio"],
"BODIES": ["nightclub", "studio"],
"COMPOSITION": ["artgallery", "balcony_window", "bedroom_bathroom", "cafe", "church", "elevator", "government", "hallway", "home", "hotel", "kyoto", "lightboard", "medieval", "office", "overtheshoulder", "racer", "rooftop", "studio", "urban", "warehouse"],
"NEON": ["diner", "neoncyber", "nightclub"],
"URBAN": ["carpark", "neoncyber", "rooftop", "street", "subwaymetro", "urban"],
"SCIFI": ["neoncyber", "starship"],
"CULTURAL": ["kyoto", "medieval"],
"SNOW": ["alpine"],
"POST": ["neoncyber"],
"INTERIOR": ["balcony_window", "bedroom_bathroom", "diner", "elevator", "government", "hallway", "kitchen", "office", "prokitchen", "pub", "workshop_garage"],
"VEHICLES": ["carpark", "racer", "workshop_garage"],
"FIRE": ["campsite"],
"BROADCAST": ["chefshow"],
"VIRTUAL_PRODUCTION": ["lightboard"]
}
}

View File

@ -0,0 +1,149 @@
# Ralpha Location System
A "Disneyland-style" world with multiple themed locations that stream in/out as needed.
## Quick Start
### 1. Create Location Levels in UE5
For each location, create a new level:
1. **File > New Level > Empty Level**
2. Save as:
- `Content/Maps/Locations/LVL_Beach.umap`
- `Content/Maps/Locations/LVL_Church.umap`
- `Content/Maps/Locations/LVL_Studio.umap`
- `Content/Maps/Locations/LVL_Home.umap`
- `Content/Maps/Locations/LVL_Urban.umap`
- `Content/Maps/Locations/LVL_Forest.umap`
### 2. Create the Hub World
1. **File > New Level > Empty Level**
2. Save as `Content/Maps/RalphaWorld.umap`
3. Add a simple ground plane
4. Add paths/portals to each location direction
### 3. Configure Level Streaming (Optional)
If you want automatic streaming when walking around RalphaWorld:
1. Open RalphaWorld
2. Window > World Settings > Enable World Partition
3. Create Level Instance actors for each location
4. Set streaming distances in the LocationConfig.json
## MCP Commands
### List all locations
```json
{"type": "list_locations"}
```
### Load a location (stream in)
```json
{"type": "load_location", "parameters": {"location_id": "beach"}}
```
### Teleport camera to location
```json
{"type": "teleport_to_location", "parameters": {"location_id": "beach"}}
```
### Set active location (load + teleport)
```json
{"type": "set_active_location", "parameters": {"location_id": "beach"}}
```
### Open location level directly (exits hub world)
```json
{"type": "open_location_level", "parameters": {"location_id": "beach"}}
```
### Get locations by domain
```json
{"type": "get_locations_by_domain", "parameters": {"domain": "SKY"}}
```
## Location Configurations
| Location | ID | Domains | Best For |
|----------|-----|---------|----------|
| Beach Island | `beach` | SKY, SEA, TERRAIN, LIGHTING | Ocean scenes, sunsets |
| Church District | `church` | LIGHTING, OBJECTS, COMPOSITION | Interior lighting, architecture |
| Studio Backlot | `studio` | LIGHTING, FACES, BODIES, COMPOSITION | Portraits, controlled lighting |
| Residential Home | `home` | LIGHTING, OBJECTS, COMPOSITION | Interior scenes |
| Urban Downtown | `urban` | SKY, LIGHTING, OBJECTS, COMPOSITION | Street scenes, cityscapes |
| Forest Wilderness | `forest` | SKY, TERRAIN, FOG, LIGHTING | Nature, atmospheric shots |
## Hub World Layout
```
CHURCH (2500, 4330)
|
STUDIO (-2500, 4330) |
\ | /
\ | /
\ | /
[ HUB CENTER ]
/ | \
/ | \
/ | \
HOME (-5000, 0) | BEACH (5000, 0)
|
URBAN (-2500, -4330)
|
FOREST (2500, -4330)
```
Each location is ~5000 units from the hub center, arranged in a hexagonal pattern.
## Building Each Location
### Beach Island
- Import: Ocean water body, sand landscape, palm trees
- Key props: Beach chairs, umbrellas, rocks, driftwood
- Lighting: Sun for golden hour, sky atmosphere
### Church District
- Import: Gothic architecture kit
- Key props: Pews, altar, candles, stained glass
- Lighting: Dramatic light shafts through windows
### Studio Backlot
- Build: Cyc wall (infinity cove), seamless backdrop
- Key props: Softboxes, C-stands, camera gear
- Lighting: 3-point setup, controllable rigs
### Residential Home
- Import: Modular house kit, furniture pack
- Rooms: Living room, kitchen, bedroom, bathroom
- Lighting: Natural window light, practicals
### Urban Downtown
- Import: Building facades, street props
- Key props: Vehicles, street lamps, signs, benches
- Lighting: Day/night variants, neon signs
### Forest Wilderness
- Import: Tree packs (broadleaf, conifer), undergrowth
- Key props: Fallen logs, boulders, streams
- Lighting: Dappled light, fog atmosphere
## FAB Asset Recommendations
Search these on FAB for each location:
**Beach**: "tropical beach", "palm tree", "ocean rocks"
**Church**: "gothic architecture", "church interior", "stained glass"
**Studio**: "photo studio", "lighting equipment"
**Home**: "modern furniture", "interior props", "kitchen appliances"
**Urban**: "city kit", "modular buildings", "street props"
**Forest**: "broadleaf trees", "forest floor", "procedural foliage"
## Tips
1. **Start simple** - Block out each location with basic shapes first
2. **Use Level Instances** - Edit once, update everywhere
3. **Test streaming** - Ensure smooth transitions between locations
4. **Match scale** - Keep consistent scale across all locations
5. **Shared assets** - Put common assets in `Content/Assets/Shared/`

BIN
Ralpha/Content/Maps/RalphaWorld.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/Movies/MediaExample.mp4 (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/VprodProject/Geometry/SM_Cyc.uasset (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/VprodProject/Geometry/SM_Floor_Disk.uasset (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/VprodProject/Maps/Main.umap (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/VprodProject/Materials/MI_Backing_Inst.uasset (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/VprodProject/Materials/MI_Chrome.uasset (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/VprodProject/Materials/MI_Floor.uasset (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/VprodProject/Materials/M_Backing.uasset (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/VprodProject/Materials/M_Live_Comp.uasset (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/VprodProject/MediaIO/AJA_Media_Profile.uasset (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/VprodProject/MediaIO/BM_Media_Profile.uasset (Stored with Git LFS) Normal file

Binary file not shown.

Binary file not shown.

BIN
Ralpha/Content/VprodProject/MediaIO/MediaBundle-01.uasset (Stored with Git LFS) Normal file

Binary file not shown.

Binary file not shown.

BIN
Ralpha/Content/VprodProject/MediaIO/MediaBundle-02.uasset (Stored with Git LFS) Normal file

Binary file not shown.

Binary file not shown.

BIN
Ralpha/Content/VprodProject/MediaIO/MediaOutput-01.uasset (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/VprodProject/MediaIO/MediaSource-01.uasset (Stored with Git LFS) Normal file

Binary file not shown.

BIN
Ralpha/Content/VprodProject/MediaIO/MediaSource-02.uasset (Stored with Git LFS) Normal file

Binary file not shown.

1
Ralpha/Plugins/RalphaPlugin Symbolic link
View File

@ -0,0 +1 @@
/Users/jamestagg/Documents/GitHub/ralpha/plugin

36
Ralpha/Ralpha.uproject Normal file
View File

@ -0,0 +1,36 @@
{
"FileVersion": 3,
"EngineAssociation": "5.7",
"Category": "",
"Description": "",
"Plugins": [
{
"Name": "PythonScriptPlugin",
"Enabled": true
},
{
"Name": "HDRIBackdrop",
"Enabled": true
},
{
"Name": "SunPosition",
"Enabled": true
},
{
"Name": "SequencerScripting",
"Enabled": true
},
{
"Name": "Takes",
"Enabled": true
},
{
"Name": "MovieRenderPipeline",
"Enabled": true
},
{
"Name": "RalphaPlugin",
"Enabled": true
}
]
}

301
RalphaData/README.md Normal file
View File

@ -0,0 +1,301 @@
# RalphaData - Kitchen Sink Asset Library
This directory contains the JSON data files that define all searchable assets, presets, and configurations for the Ralpha Kitchen Sink UE5 project.
## Directory Structure
```
RalphaData/
├── catalogue.json # Main asset catalogue (250+ items)
├── hdris.json # HDRI environment library (18 HDRIs)
├── luts.json # Color LUT library (32 LUTs)
├── postprocess.json # Post-processing presets (15 presets)
├── metahumans/
│ ├── registry.json # MetaHuman character registry (20 characters)
│ ├── animations.json # Animation library (32 animations)
│ ├── expressions.json # Facial expression presets (16 expressions)
│ └── clothing.json # Clothing preset library (8 presets)
└── README.md # This file
```
## File Descriptions
### catalogue.json
The main asset catalogue containing 250+ props, furniture, vehicles, nature elements, and more.
**Categories:**
- Furniture (65+ items): Seating, tables, storage, bedroom
- Vehicles (40 items): Cars, motorcycles, bicycles, aircraft, watercraft, emergency
- Nature (30 items): Trees, plants, flowers, rocks, terrain
- Urban (21 items): Street furniture, signage, barriers, commercial
- Architecture (25 items): Walls, floors, doors, windows, stairs, columns
- Tools (13 items): Hand tools, power tools, garden tools
- Sports (15 items): Equipment, balls, furniture
- Animals (14 items): Pets, farm, wildlife
- Electronics, Decor, Equipment, Studio items
**Schema:**
```json
{
"id": "unique_asset_id",
"name": "Human Readable Name",
"category": "Category/Subcategory",
"tags": ["searchable", "tags"],
"path": "/Game/Ralpha/Assets/Category/SM_AssetName",
"dimensions": {"x": 100, "y": 100, "z": 100},
"has_collision": true
}
```
### hdris.json
HDRI environment maps for image-based lighting.
**Categories:**
- Studio (4): Softbox, Hard Light, Natural, Gradient
- Outdoor (8): Clear Day, Overcast, Sunset, Night, Forest, Beach, Mountain, Desert
- Urban (6): City Day, City Night, Street, Parking, Office Interior, Home Interior
**Schema:**
```json
{
"id": "HDRI_Category_Name",
"name": "Display Name",
"category": "Studio|Outdoor|Urban",
"description": "Description of lighting quality",
"path": "/Game/Ralpha/HDRI/Category/HDRI_Name",
"resolution": "8K|4K",
"dynamic_range": "High|Medium|Low",
"sun_position": {"altitude": 60, "azimuth": 180},
"tags": ["searchable", "tags"]
}
```
### luts.json
Color Look-Up Tables for color grading.
**Categories:**
- Base (2): Neutral, Rec.709
- Film (10): Kodak Portra, Ektar, Gold, Fuji Pro 400H, Velvia, Cinestill, Vision3
- Cinematic (1): Teal & Orange
- Vintage (5): Faded, Warm, Cool, 70s, Polaroid
- Black & White (5): Classic, High Contrast, Low Contrast, Noir, Sepia
- Creative (10): Cyberpunk, Vaporwave, Cross Process, Bleach Bypass, Horror, etc.
**Schema:**
```json
{
"id": "LUT_Category_Name",
"name": "Display Name",
"category": "Base|Film|Vintage|Black & White|Creative",
"description": "Description of the look",
"path": "/Game/Ralpha/PostProcess/LUTs/LUT_Name",
"tags": ["searchable", "tags"]
}
```
### postprocess.json
Post-processing presets with full parameter definitions.
**Presets:**
- Neutral, Filmic, Cinematic, High Contrast, Low Contrast
- Warm, Cool, Desaturated, Vibrant, Vintage
- Black & White, Noir, Bleach Bypass, Cross Process, HDR
**Schema:**
```json
{
"id": "PP_PresetName",
"name": "Display Name",
"description": "Description",
"use_case": "When to use this preset",
"path": "/Game/Ralpha/PostProcess/Profiles/PP_Name",
"settings": {
"color_grading": {
"temperature": 6500,
"saturation": 1.0,
"contrast": 1.0
},
"bloom": 0.0,
"vignette": 0.0,
"film_grain": 0.0
},
"tags": ["searchable", "tags"]
}
```
### metahumans/registry.json
Registry of 20 diverse MetaHuman characters.
**Demographics:**
- 10 Male, 10 Female
- Age ranges: 20s, 30s, 40s, 50s, 60s
- Ethnicities: Caucasian, African, East Asian, Hispanic, South Asian, Mixed
**Schema:**
```json
{
"id": "MH_[M|F]_[Age]_[Ethnicity]",
"name": "Character Name",
"gender": "Male|Female",
"age_range": "20s|30s|40s|50s|60s",
"ethnicity": "Ethnicity",
"description": "Character description",
"blueprint_path": "/Game/Ralpha/MetaHumans/[Gender]/BP_...",
"default_clothing": "Casual|Business",
"available_clothing": ["Casual", "Business", "Athletic", "Evening", "Uniform"]
}
```
### metahumans/animations.json
32 animations for MetaHuman characters.
**Categories:**
- Idle (5): Standing Relaxed, Standing Formal, Sitting Chair, Sitting Sofa, Leaning Wall
- Pose (5): Portrait 3/4, Portrait Profile, Hands Pockets, Arms Crossed, Thinking
- Action (12): Walk, Run, Sit, Stand, Pick Up, Wave, Nod, Shake Head, Shrug, etc.
- Interaction (10): Type, Phone, Drink, Eat, Talk, Listen, Point, Handshake, Clap
**Schema:**
```json
{
"id": "Animation_ID",
"name": "Display Name",
"category": "Idle|Pose|Action|Interaction",
"description": "What the animation shows",
"path": "/Game/Ralpha/Animations/Category/Anim_Name",
"looping": true|false,
"duration": 2.0
}
```
### metahumans/expressions.json
16 facial expression presets using ARKit morph targets.
**Expressions:**
Neutral, Happy, Sad, Angry, Surprised, Thinking, Laughing, Serious,
Confused, Disgusted, Fearful, Skeptical, Smirk, Determined, Wink, Sleepy
**Schema:**
```json
{
"id": "ExpressionName",
"name": "Display Name",
"description": "What the expression conveys",
"morph_targets": {
"mouthSmile_L": 0.8,
"mouthSmile_R": 0.8,
"cheekSquint_L": 0.4
}
}
```
### metahumans/clothing.json
8 clothing presets with gender-specific variants.
**Presets:**
Casual, Business, Athletic, Evening, Uniform, Medical, Swimwear, Winter
**Schema:**
```json
{
"id": "PresetName",
"name": "Display Name",
"description": "Style description",
"gender_variants": {
"male": {
"top_path": "/Game/Ralpha/MetaHumans/Clothing/Male/SK_...",
"bottom_path": "/Game/...",
"shoes_path": "/Game/...",
"accessories": ["SK_Accessory1", "SK_Accessory2"]
},
"female": { ... }
}
}
```
## MCP Commands
### Search Commands
```json
// Unified search across all catalogues
{"type": "search", "parameters": {"query": "red chair", "max_results": 50}}
// Search specific type
{"type": "search_by_type", "parameters": {"query": "sunset", "type": "hdri"}}
// List searchable types
{"type": "list_searchable_types"}
// Get all tags (optionally filtered by type)
{"type": "get_tags", "parameters": {"type": "asset"}}
// Get categories for a type
{"type": "get_categories", "parameters": {"type": "lut"}}
```
### Catalogue Commands
```json
// Search catalogue
{"type": "search_catalogue", "parameters": {"query": "modern sofa"}}
// Spawn asset
{"type": "spawn_catalogue_item", "parameters": {
"id": "furniture_sofa_modern_3seat",
"location": [0, 0, 0],
"rotation": [0, 0, 0]
}}
```
### MetaHuman Commands
```json
// Spawn MetaHuman
{"type": "spawn_metahuman", "parameters": {
"id": "MH_F_25_African",
"location": [0, 200, 0],
"clothing": "Business",
"expression": "Happy"
}}
// Set expression
{"type": "set_expression", "parameters": {
"actor_name": "MetaHuman_1",
"expression": "Thinking"
}}
// Play animation
{"type": "play_animation", "parameters": {
"actor_name": "MetaHuman_1",
"animation": "Wave"
}}
```
### Post-Processing Commands
```json
// Apply post-process preset
{"type": "apply_post_preset", "parameters": {"preset": "PP_Cinematic"}}
// Set LUT
{"type": "set_lut", "parameters": {"lut": "LUT_Teal_Orange"}}
// Set HDRI
{"type": "set_hdri", "parameters": {"hdri": "HDRI_Studio_Softbox"}}
```
## Searchable Types
| Type | Count | Description |
|------|-------|-------------|
| asset | 250 | Props, furniture, vehicles, etc. |
| metahuman | 20 | Character presets |
| hdri | 18 | Environment lighting |
| lut | 32 | Color grading |
| postprocess | 15 | Post-processing presets |
| animation | 32 | Character animations |
| expression | 16 | Facial expressions |
| clothing | 8 | Clothing presets |
## Version History
- **v1.0** - Initial release with basic catalogue
- **v2.0** - Phase 5: Expanded to 250+ assets, added vehicles, nature, urban, architecture, tools, sports, animals
- **v2.1** - Phase 6: Added HDRIs, LUTs, post-processing presets, unified search system

2305
RalphaData/catalogue.json Normal file

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More